Files
SIG/Nomina/ConceptoNomina.aspx
JORGE LUIS CAUDILLO ESPARZA 2b1cf3ccae
2021-05-19 10:42:08 -07:00

988 lines
58 KiB
Plaintext

<%@ Page Title="" Language="C#" MasterPageFile="~/Site.master" AutoEventWireup="true" CodeFile="ConceptoNomina.aspx.cs" Inherits="Nomina_CatConcepto" %>
<asp:Content ID="Content1" ContentPlaceHolderID="CP" runat="Server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="Css" runat="Server">
<webopt:BundleReference runat="server" Path="~/Metronic/assets/global/plugins/codemirror/CSS" />
<webopt:BundleReference runat="server" Path="~/Metronic/assets/global/plugins/jstree/dist/themes/default/style.min.css" />
<style>
input[disabled="disabled"] ~ .CodeMirror.cm-s-material {
cursor: not-allowed;
}
input[disabled="disabled"] ~ .CodeMirror.cm-s-material input {
cursor: not-allowed;
}
input[disabled="disabled"] ~ .CodeMirror.cm-s-material pre {
cursor: not-allowed;
}
.CodeMirror-hints {
z-index: 700;
}
.CodeMirror,
.CodeMirror-scroll {
max-height: 150px;
}
.portlet.light > .portlet-title > .caption.font-Nominas,
.portlet.light > .portlet-title > .caption > i.font-Nominas {
color: #E87E04;
}
.GVNom_Conceptos a {
display: block;
width: 100%;
}
.lblddl {
top: 0;
font-size: 13px;
opacity: 1;
color: #888888;
padding-bottom: 0px;
}
.form-group.form-md-line-input > .lblddl + select + span.select2-container,
.form-group.form-md-line-input > .lblddl + select + span {
margin-top: 0px;
margin-top: 0px;
}
.nodisplay {
display: none !important;
}
.row > .col-md-4.nowidth {
width: inherit;
}
.FormulaControles {
border: 1px solid #AAA;
border-radius: 25px !important;
padding-left: 20px !important;
padding-right: 20px !important;
padding-top: 2px;
padding-bottom: 4px;
display: inline-block;
}
.IconoTexto {
font-size: 22px !important;
font-weight: 900;
line-height: 1.1;
}
.IconoTexto2 {
font-size: 13px !important;
font-weight: 900;
line-height: 1.1;
}
.divisior {
font-size: 18px;
color: #aaa;
padding-left: 10px;
padding-right: 10px;
}
btnTexto2 {
padding-top: 1px !important;
}
.btnFormula .btn-icon-only {
height: 25px;
width: 25px;
padding-top: 2px;
}
.pagination > li > a, .pagination > li > span {
padding: 6px 6px;
}
.jdTables {
display: none;
}
</style>
</asp:Content>
<asp:Content ID="Content3" ContentPlaceHolderID="E" runat="Server">
<asp:Literal ID="LtlTitulo" runat="server" Text="Conceptos de Nómina"></asp:Literal>&nbsp;<asp:Literal ID="LtlContrato" runat="server"></asp:Literal>
</asp:Content>
<asp:Content ID="Content4" ContentPlaceHolderID="HB" runat="Server">
</asp:Content>
<asp:Content ID="Content5" ContentPlaceHolderID="H" runat="Server">
</asp:Content>
<asp:Content ID="Content6" ContentPlaceHolderID="HA" runat="Server">
</asp:Content>
<asp:Content ID="Content7" ContentPlaceHolderID="C" runat="Server">
<asp:UpdatePanel UpdateMode="Conditional" ID="UpGral" runat="server">
<ContentTemplate>
<asp:UpdatePanel ID="UpGuardar" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<div class="row">
<div class="col-md-7">
<div class="portlet smmallpadding light bordered">
<div class="portlet-title">
<div class="caption uppercase " style="position: relative;">
<i class="fa fa-info-circle font-yellow-gold"></i>
<span class="caption-subject font-yellow-gold bold uppercase">Información</span>
</div>
</div>
<div class="portlet-body rowpadding">
<div class="row">
<div class="col-md-6">
<div class="form-group form-md-line-input form-md-floating-label input-iconright">
<asp:Label runat="server" Text="Tipo" AssociatedControlID="DdlTipo"></asp:Label>
<asp:DropDownList ID="DdlTipo" runat="server" AppendDataBoundItems="True" DataTextField="TipoGasto" DataValueField="TipoGasto" Class="form-control input-sm select2me" Width="100%" ValidationGroup="GrpGuardar"></asp:DropDownList>
<asp:RequiredFieldValidator ID="RFVTipo" runat="server" ControlToValidate="DdlTipo" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Tipo''</b> es necesario, por favor ingréselo." InitialValue="-1" ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCETipo" runat="server" HighlightCssClass="vco" TargetControlID="RFVTipo" Width="300px" BehaviorID="VCETipo"></ajax:ValidatorCalloutExtender>
</div>
</div>
<div class="col-md-6">
<div class="form-group form-md-line-input form-md-floating-label input-iconright">
</div>
</div>
</div>
<div class="row">
<div class="col-md-4">
<div class="form-group form-md-line-input form-md-floating-label input-iconright">
<asp:TextBox ID="TxtCodigo" runat="server" CssClass="form-control"></asp:TextBox>
<asp:Label runat="server" Text="Código" AssociatedControlID="TxtCodigo"></asp:Label>
<asp:RequiredFieldValidator ID="RFVCodigo" runat="server" ControlToValidate="TxtCodigo" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Código''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCECodigo" runat="server" HighlightCssClass="vco" TargetControlID="RFVCodigo" Width="300px" BehaviorID="VCECodigo"></ajax:ValidatorCalloutExtender>
</div>
</div>
<div class="col-md-8">
<div class="form-group form-md-line-input form-md-floating-label input-iconright">
<asp:TextBox ID="TxtConcepto" runat="server" CssClass="form-control" MaxLength="70"></asp:TextBox>
<asp:Label runat="server" Text="Concepto" AssociatedControlID="TxtConcepto"></asp:Label>
<asp:RequiredFieldValidator ID="RFVConcepto" runat="server" ControlToValidate="TxtConcepto" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Concepto''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCEConcepto" runat="server" HighlightCssClass="vco" TargetControlID="RFVConcepto" Width="300px" BehaviorID="VCEConcepto"></ajax:ValidatorCalloutExtender>
</div>
</div>
</div>
<div class="row">
<div class="col-md-6">
<div class="form-group form-md-line-input form-md-floating-label input-iconright">
<asp:Label runat="server" Text="Concepto padre" AssociatedControlID="DdlConceptoPadre"></asp:Label>
<asp:DropDownList ID="DdlConceptoPadre" runat="server" AppendDataBoundItems="True" DataTextField="CodigoConcepto" DataValueField="CveConcepto" Class="form-control select2me" Width="100%" ValidationGroup="GrpGuardar"></asp:DropDownList>
</div>
</div>
<div class="col-md-6">
<div class="form-group form-md-line-input form-md-floating-label input-iconright">
<asp:Label runat="server" Text="Concepto contable" AssociatedControlID="DdlConceptoContable"></asp:Label>
<asp:DropDownList ID="DdlConceptoContable" runat="server" AppendDataBoundItems="True" DataTextField="ConceptoContable" DataValueField="CveConceptoContable" Class="form-control select2me" Width="100%" ValidationGroup="GrpGuardar"></asp:DropDownList>
</div>
</div>
</div>
<div class="row">
<div class="col-md-6">
<div class="form-group form-md-line-input form-md-floating-label input-iconright">
<asp:Label runat="server" Text="Clasificación" AssociatedControlID="DdlClasificacion"></asp:Label>
<asp:DropDownList ID="DdlClasificacion" runat="server" AppendDataBoundItems="True" DataTextField="Clasificacion" DataValueField="CveClasificacion" Class="form-control input-sm select2me" Width="100%" ValidationGroup="GrpGuardar"></asp:DropDownList>
</div>
</div>
<div class="col-md-6">
<div class="form-group form-md-line-input form-md-floating-label input-iconright">
<asp:Label runat="server" Text="Tipo de gasto" AssociatedControlID="DdlTipoGasto"></asp:Label>
<asp:DropDownList ID="DdlTipoGasto" runat="server" AppendDataBoundItems="True" DataTextField="TipoGasto" DataValueField="CveTipoGasto" Class="form-control input-sm select2me" Width="100%" ValidationGroup="GrpGuardar"></asp:DropDownList>
</div>
</div>
</div>
<div class="row">
<div class="col-md-6">
<div class="form-group form-md-line-input form-md-floating-label input-iconright">
<asp:Label runat="server" Text="Cuenta contable" AssociatedControlID="DdlCtaContable"></asp:Label>
<asp:DropDownList ID="DdlCtaContable" runat="server" AppendDataBoundItems="True" DataTextField="CtaCodigo" DataValueField="Id" Class="form-control input-sm select2me" Width="100%" ValidationGroup="GrpGuardar"></asp:DropDownList>
</div>
</div>
<div class="col-md-6">
<div class="form-group form-md-line-input form-md-floating-label input-iconright">
<asp:Label runat="server" Text="Concepto SAT" AssociatedControlID="DdlConceptoSAT"></asp:Label>
<asp:DropDownList ID="DdlConceptoSAT" runat="server" AppendDataBoundItems="True" DataTextField="NombreClave" DataValueField="CveSATConcepto" Class="form-control input-sm select2me" Width="100%" ValidationGroup="GrpGuardar"></asp:DropDownList>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="col-md-5">
<asp:UpdatePanel ID="UpFormulas" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<div class="portlet smmallpadding light bordered" id="Divformula" runat="server">
<div class="portlet-title">
<div class="caption uppercase " style="position: relative;">
<i class="fa fa-info-circle font-yellow-gold"></i>
<span class="caption-subject font-yellow-gold bold uppercase">Fórmulas </span>
</div>
<div class="actions">
<div class="btn-group">
<asp:LinkButton ID="LnkActualizarFormula" OnClick="LnkActualizarFormula_Click" CssClass="btn btn-success" runat="server">Actualizar</asp:LinkButton>
</div>
</div>
</div>
<div class="portlet-body rowpadding">
<ajax:TabContainer ID="TabsFormulas" runat="server" Width="100%" CssClass="tabBodyOverride" ActiveTabIndex="0" AutoPostBack="true">
<ajax:TabPanel ID="tabFormulaImporte" runat="server" HeaderText="Valor">
<ContentTemplate>
<asp:TextBox ID="TxtFormulaImporte" runat="server" MaxLength="70" CssClass="codeeditor " Enabled="false"></asp:TextBox>
</ContentTemplate>
</ajax:TabPanel>
<ajax:TabPanel ID="tabFormulaTotal" runat="server" HeaderText="Total">
<ContentTemplate>
<asp:TextBox ID="TxtFormulaTotal" runat="server" MaxLength="70" CssClass="codeeditor " Enabled="false"></asp:TextBox>
</ContentTemplate>
</ajax:TabPanel>
<ajax:TabPanel ID="tabFormulaGravada" runat="server" HeaderText="Gravada">
<ContentTemplate>
<asp:TextBox ID="TxtFormulaGravada" runat="server" MaxLength="70" CssClass="codeeditor " Enabled="false"></asp:TextBox>
</ContentTemplate>
</ajax:TabPanel>
</ajax:TabContainer>
<%--<div class="row">
<div class="col-md-12">
<div class="form-group form-md-line-input form-md-floating-label input-iconright">
<asp:Label runat="server" Text="Formula" AssociatedControlID="TxtFormula"></asp:Label>
<asp:RequiredFieldValidator ID="RFVFormula" runat="server" ControlToValidate="TxtFormula" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Fórmula''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCEFormula" runat="server" HighlightCssClass="vco" TargetControlID="RFVFormula" Width="300px" BehaviorID="VCEFormula"></ajax:ValidatorCalloutExtender>
</div>
</div>
</div>--%>
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
<div class="portlet smmallpadding light bordered">
<div class="portlet-title">
<div class="caption uppercase " style="position: relative;">
<i class="fa fa-info-circle font-yellow-gold"></i>
<span class="caption-subject font-yellow-gold bold uppercase">Estatus</span>
</div>
</div>
<div class="portlet-body rowpadding">
<div class="row">
<label class="col-md-3 truncate ">Automatico Global:</label>
<div class="col-md-3">
<asp:CheckBox ID="ChkAutomaticoGlobal" CssClass="chksino" Text=" " runat="server" />
</div>
<label class="col-md-3 truncate ">Automatico Liquidación:</label>
<div class="col-md-3">
<asp:CheckBox ID="ChkAutomaticoLiquidacion" CssClass="chksino" Text=" " runat="server" />
</div>
</div>
<div class="row">
<label class="col-md-3 truncate ">Especie:</label>
<div class="col-md-3">
<asp:CheckBox ID="ChkEspecie" CssClass="chksino" Text=" " runat="server" />
</div>
<label class="col-md-3 truncate ">Imprimir:</label>
<div class="col-md-3">
<asp:CheckBox ID="ChkImprimir" CssClass="chksino" Text=" " runat="server" />
</div>
</div>
<div class="row">
<div class="col-sm-6">
<div class="row">
<div class="col-xs-6">
<asp:Label runat="server" Text="Retención" AssociatedControlID="ChkRetencion"></asp:Label>
</div>
<div class="col-xs-6">
<asp:CheckBox ID="ChkRetencion" Text=" " CssClass="chksino" runat="server" />
</div>
</div>
</div>
<div class="col-sm-6">
<div class="row">
<div class="col-xs-6">
<asp:Label runat="server" Text="Tipo de cálculo" AssociatedControlID="ChkTipoCalculo"></asp:Label>
</div>
<div class="col-xs-6">
<asp:CheckBox ID="ChkTipoCalculo" Text=" " CssClass="chksino" runat="server" />
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-sm-6">
<div class="row">
<div class="col-xs-6">
<asp:Label runat="server" Text="Estado" AssociatedControlID="ChkEstado"></asp:Label>
</div>
<div class="col-xs-6">
<asp:CheckBox ID="ChkEstado" Text=" " Checked="true" CssClass="chksino" runat="server" />
</div>
</div>
</div>
<div class="col-sm-6">
<div class="row">
<div class="col-xs-6">
<asp:Label runat="server" Text="Sistema" AssociatedControlID="ChkSistema"></asp:Label>
</div>
<div class="col-xs-6">
<asp:CheckBox ID="ChkSistema" Text=" " CssClass="chksino" runat="server" />
</div>
</div>
</div>
</div>
<div class="row">
<label class="col-md-3 truncate ">Movimiento Permanente:</label>
<div class="col-md-3">
<asp:CheckBox ID="ChkMovtoPermanente" AutoPostBack="true" OnCheckedChanged ="ChkMovtoPermanente_CheckedChanged" CssClass="chksino" Text=" " runat="server" />
</div>
</div>
</div>
</div>
</div>
</div>
<div style="text-align: center; padding-top: 20px;">
<asp:Button ID="BtnGuardar" runat="server" Text="Guardar" ValidationGroup="GrpGuardar" CssClass="btn btn-primary" Visible="true" OnClick="BtnGuardar_Click" />
<asp:Button ID="BtnEliminar" runat="server" Text="Eliminar" Visible="false" CssClass="btn btn-danger" data-toggle="confirmation" data-popout="true" data-original-title="Esta seguro de eliminar el Contrato?" data-btn-ok-label="si" OnClick="BtnEliminar_Click" />
<%--<asp:ValidationSummary ID="VS" runat="server" DisplayMode="BulletList" ShowSummary="true" ValidationGroup="GrpGuardar" />--%>
<asp:Button ID="BtnCancelar" CssClass="btn btn-default" runat="server" Text="Cancelar" OnClientClick="javascript:window.location.href='/Nomina/CatConceptos.aspx';return false" />
&nbsp;
</div>
<%-- <asp:TextBox ID="TxtMycurrentT" CssClass=" TxtMycurrentT" runat="server"></asp:TextBox>
<asp:TextBox ID="TxtstrKeys2" CssClass="TxtstrKeys2" runat="server"></asp:TextBox>
<asp:TextBox ID="TxtstrKeys3" CssClass="TxtstrKeys3" runat="server"></asp:TextBox>--%>
<div id="ModalDivFormula" class="modal ADS fade ShowModalDivFormula" role="dialog">
<asp:UpdatePanel ID="UpModalFormulas" class="modal-dialog modal-lg" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<!-- Modal content-->
<div class="modal-content">
<div class="modal-header ">
<button type="button" class="close" data-dismiss="modal">&times;</button>
<h4 class="modal-title">
<asp:Literal ID="LtlTituloFormula" runat="server"></asp:Literal></h4>
</div>
<div class="modal-body">
<asp:TextBox ID="TxtFormula" runat="server" MaxLength="70" CssClass="codeeditor editorFormula"></asp:TextBox>
<div class="portlet light bg-inverse">
<div class="portlet-title tabbable-line">
<div class="caption font-red-sunglo">
<span class="caption-subject bold uppercase">Controles </span>
</div>
<ul class="pagination pagination-circle" style="float: left; margin-left: 4px;">
<li>
<a class="btn btn-icon-only btn-default" href="javascript:addtextFormula('+');">
<i class="fa fa-plus"></i>
</a>
</li>
<li>
<a class="btn btn-icon-only btn-default" href="javascript:addtextFormula('-');">
<i class="fa fa-minus"></i></a></li>
<li>
<a class="btn btn-icon-only btn-default" href="javascript:addtextFormula('*');">
<i class="fa fa-asterisk"></i>
</a>
</li>
<li>
<a class="btn btn-icon-only btn-default" href="javascript:addtextFormula('/');" style="padding-top: 2px; padding-left: 6px;">
<i class="IconoTexto">÷</i>
</a>
</li>
<li>
<a class="btn btn-icon-only btn-default" href="javascript:addtextFormula('=');" style="padding-top: 0px;">
<i class="IconoTexto">=</i>
</a>
</li>
<li>
<a class="btn btn-icon-only btn-default btnTexto2" href="javascript:addtextFormula('<');">
<i class="IconoTexto2"><</i>
</a>
</li>
<li>
<a class="btn btn-icon-only btn-default btnTexto2" href="javascript:addtextFormula('<=');">
<i class="IconoTexto2"><=</i>
</a>
</li>
<li>
<a class="btn btn-icon-only btn-default btnTexto2" href="javascript:addtextFormula('>');">
<i class="IconoTexto2">></i>
</a>
</li>
<li>
<a class="btn btn-icon-only btn-default btnTexto2" href="javascript:addtextFormula('>=');">
<i class="IconoTexto2">>=</i>
</a>
</li>
<li>
<a class="btn btn-icon-only btn-default btnTexto2" href="javascript:addtextFormula('<>');">
<i class="IconoTexto2"><></i>
</a>
</li>
<li>
<a class="btn btn-icon-only btn-default btnTexto2" href="javascript:addtextFormula('Y');">
<i class="IconoTexto2">Y</i>
</a>
</li>
<li>
<a class="btn btn-icon-only btn-default btnTexto2" href="javascript:addtextFormula('O');">
<i class="IconoTexto2 uppercase">ó</i>
</a>
</li>
<li>
<a class="btn btn-icon-only btn-default btnTexto2" href="javascript:addtextFormula('NO');">
<i class="IconoTexto2" style="font-size: 12px !important;">NO</i>
</a>
</li>
<li>
<a class="btn btn-icon-only btn-default btnTexto2" href="javascript:addtextFormula('(');">
<i class="IconoTexto2">(</i>
</a>
</li>
<li>
<a class="btn btn-icon-only btn-default btnTexto2" href="javascript:addtextFormula(')');">
<i class="IconoTexto2">)</i>
</a>
</li>
</ul>
<ul class="nav nav-tabs">
<li class="active">
<a href="#ForTabTablas" data-toggle="tab" aria-expanded="false">Tablas </a>
</li>
<li class="">
<a href="#ForTabFormulas" data-toggle="tab" aria-expanded="false">Formulas </a>
</li>
<li class="">
<a href="#ForTabFunciones" data-toggle="tab" aria-expanded="true">Funciones </a>
</li>
</ul>
</div>
<div class="portlet-body">
<div>
<div class="tab-content">
<div class="tab-pane active" id="ForTabTablas">
<div style="max-height: 200px; overflow: auto;">
<div class="DFTables">
<asp:Literal ID="LtlArbolTabla" runat="server"></asp:Literal>
</div>
</div>
</div>
<div class="tab-pane" id="ForTabFormulas">
<div style="max-height: 200px; overflow: auto;">
<div class="DFTables">
<asp:Literal ID="LtlArbolFormulas" runat="server"></asp:Literal>
</div>
</div>
</div>
<div class="tab-pane" id="ForTabFunciones">
<div style="max-height: 200px; overflow: auto;">
<div class="DFTables">
<asp:Literal ID="LtlArbolFunciones" runat="server"></asp:Literal>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="modal-footer">
<asp:Button ID="BtnUpFormula" OnClick="BtnUpFormula_Click" Text="Guardar" runat="server" ClientIDMode="Static" CssClass="btn btn-primary" />
<button type="button" class="btn btn-danger" data-dismiss="modal">Cancelar</button>
<asp:Button ID="BtnupView" CssClass="hidden BtnupView" UseSubmitBehavior="false" runat="server" Text="Button" />
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</ContentTemplate>
</asp:UpdatePanel>
<asp:UpdatePanel ID="UpTablas" class="jdTables" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:Label ID="LtlKeys" CssClass="LtlKeys" runat="server"></asp:Label>
</ContentTemplate>
</asp:UpdatePanel>
</asp:Content>
<asp:Content ID="Content8" ContentPlaceHolderID="JS" runat="Server">
<%: System.Web.Optimization.Scripts.Render("~/Metronic/assets/global/plugins/codemirror/JS") %>
<%: System.Web.Optimization.Scripts.Render("~/Metronic/assets/global/plugins/jstree/dist/jstree.min.js") %>
<script>
function ReloadcodeMirror(MycurrentT, strKeys2, strKeys3) {
(function (mod) {
if (typeof exports == "object" && typeof module == "object") // CommonJS
mod(require("~/Metronic/assets/global/plugins/codemirror/lib/codemirror"));
else if (typeof define == "function" && define.amd) // AMD
define(["~/Metronic/assets/global/plugins/codemirror/codemirror"], mod);
else // Plain browser env
mod(CodeMirror);
})(function (CodeMirror) {
"use strict";
CodeMirror.defineMode("sql", function (config, parserConfig) {
"use strict";
var client = parserConfig.client || {},
atoms = parserConfig.atoms || { "false": true, "true": true, "null": true },
builtin = parserConfig.builtin || {},
keywords = parserConfig.keywords || {},
operatorChars = parserConfig.operatorChars || /^[*+\-%<>!=&|~^]/,
support = parserConfig.support || {},
hooks = parserConfig.hooks || {},
dateSQL = parserConfig.dateSQL || { "date": true, "time": true, "timestamp": true };
function tokenBase(stream, state) {
var ch = stream.next();
// call hooks from the mime type
if (hooks[ch]) {
var result = hooks[ch](stream, state);
if (result !== false) return result;
}
if (support.hexNumber == true &&
((ch == "0" && stream.match(/^[xX][0-9a-fA-F]+/))
|| (ch == "x" || ch == "X") && stream.match(/^'[0-9a-fA-F]+'/))) {
// hex
// ref: http://dev.mysql.com/doc/refman/5.5/en/hexadecimal-literals.html
return "number";
} else if (support.binaryNumber == true &&
(((ch == "b" || ch == "B") && stream.match(/^'[01]+'/))
|| (ch == "0" && stream.match(/^b[01]+/)))) {
// bitstring
// ref: http://dev.mysql.com/doc/refman/5.5/en/bit-field-literals.html
return "number";
} else if (ch.charCodeAt(0) > 47 && ch.charCodeAt(0) < 58) {
// numbers
// ref: http://dev.mysql.com/doc/refman/5.5/en/number-literals.html
stream.match(/^[0-9]*\.?[0-9]+([eE][-+]?[0-9]+)?/);
support.decimallessFloat == true && stream.eat('.');
return "number";
} else if (ch == "?" && (stream.eatSpace() || stream.eol() || stream.eat(";"))) {
// placeholders
return "variable-3";
} else if (ch == "'" || (ch == '"' && support.doubleQuote)) {
// strings
// ref: http://dev.mysql.com/doc/refman/5.5/en/string-literals.html
state.tokenize = tokenLiteral(ch);
return state.tokenize(stream, state);
} else if ((((support.nCharCast == true && (ch == "n" || ch == "N"))
|| (support.charsetCast == true && ch == "_" && stream.match(/[a-z][a-z0-9]*/i)))
&& (stream.peek() == "'" || stream.peek() == '"'))) {
// charset casting: _utf8'str', N'str', n'str'
// ref: http://dev.mysql.com/doc/refman/5.5/en/string-literals.html
return "keyword";
} else if (/^[\(\),\;\[\]]/.test(ch)) {
// no highlightning
return null;
} else if (support.commentSlashSlash && ch == "/" && stream.eat("/")) {
// 1-line comment
stream.skipToEnd();
return "comment";
} else if ((support.commentHash && ch == "#")
|| (ch == "-" && stream.eat("-") && (!support.commentSpaceRequired || stream.eat(" ")))) {
// 1-line comments
// ref: https://kb.askmonty.org/en/comment-syntax/
stream.skipToEnd();
return "comment";
} else if (ch == "/" && stream.eat("*")) {
// multi-line comments
// ref: https://kb.askmonty.org/en/comment-syntax/
state.tokenize = tokenComment;
return state.tokenize(stream, state);
} else if (ch == ".") {
// .1 for 0.1
if (support.zerolessFloat == true && stream.match(/^(?:\d+(?:e[+-]?\d+)?)/i)) {
return "number";
}
// .table_name (ODBC)
// // ref: http://dev.mysql.com/doc/refman/5.6/en/identifier-qualifiers.html
if (support.ODBCdotTable == true && stream.match(/^[a-zA-Z_]+/)) {
return "variable-2";
}
} else if (operatorChars.test(ch)) {
// operators
stream.eatWhile(operatorChars);
return null;
} else if (ch == '{' &&
(stream.match(/^( )*(d|D|t|T|ts|TS)( )*'[^']*'( )*}/) || stream.match(/^( )*(d|D|t|T|ts|TS)( )*"[^"]*"( )*}/))) {
// dates (weird ODBC syntax)
// ref: http://dev.mysql.com/doc/refman/5.5/en/date-and-time-literals.html
return "number";
} else {
stream.eatWhile(/^[_\w\d]/);
var word = stream.current();
if (atoms.hasOwnProperty(word)) return "atom";
// dates (standard SQL syntax)
// ref: http://dev.mysql.com/doc/refman/5.5/en/date-and-time-literals.html
if (dateSQL.hasOwnProperty(word) /*&& (stream.match(/^( )+'[^']*'/) || stream.match(/^( )+"[^"]*"/))*/)
return "number";
word = word.toLowerCase();
if (builtin.hasOwnProperty(word)) return "builtin";
if (keywords.hasOwnProperty(word)) return "keyword";
if (client.hasOwnProperty(word)) return "string-2";
return null;
}
}
// 'string', with char specified in quote escaped by '\'
function tokenLiteral(quote) {
return function (stream, state) {
var escaped = false, ch;
while ((ch = stream.next()) != null) {
if (ch == quote && !escaped) {
state.tokenize = tokenBase;
break;
}
escaped = !escaped && ch == "\\";
}
return "string";
};
}
function tokenComment(stream, state) {
while (true) {
if (stream.skipTo("*")) {
stream.next();
if (stream.eat("/")) {
state.tokenize = tokenBase;
break;
}
} else {
stream.skipToEnd();
break;
}
}
return "comment";
}
function pushContext(stream, state, type) {
state.context = {
prev: state.context,
indent: stream.indentation(),
col: stream.column(),
type: type
};
}
function popContext(state) {
state.indent = state.context.indent;
state.context = state.context.prev;
}
return {
startState: function () {
return { tokenize: tokenBase, context: null };
},
token: function (stream, state) {
if (stream.sol()) {
if (state.context && state.context.align == null)
state.context.align = false;
}
if (stream.eatSpace()) return null;
var style = state.tokenize(stream, state);
if (style == "comment") return style;
if (state.context && state.context.align == null)
state.context.align = true;
var tok = stream.current();
if (tok == "(")
pushContext(stream, state, ")");
else if (tok == "[")
pushContext(stream, state, "]");
else if (state.context && state.context.type == tok)
popContext(state);
return style;
},
indent: function (state, textAfter) {
var cx = state.context;
if (!cx) return CodeMirror.Pass;
var closing = textAfter.charAt(0) == cx.type;
if (cx.align) return cx.col + (closing ? 0 : 1);
else return cx.indent + (closing ? 0 : config.indentUnit);
},
blockCommentStart: null,
blockCommentEnd: null,
lineComment: null
};
});
(function () {
"use strict";
// `identifier`
function hookIdentifier(stream) {
var ch;
while ((ch = stream.next()) != null) {
if (ch == "`" && !stream.eat("`")) return "variable-2";
}
stream.backUp(stream.current().length - 1);
return stream.eatWhile(/\w/) ? "variable-2" : null;
}
// variable token
function hookVar(stream) {
if (stream.eat("@")) {
stream.match(/^session\./);
stream.match(/^local\./);
stream.match(/^global\./);
}
if (stream.eat("'")) {
stream.match(/^.*'/);
return "variable-2";
} else if (stream.eat('"')) {
stream.match(/^.*"/);
return "variable-2";
} else if (stream.eat("`")) {
stream.match(/^.*`/);
return "variable-2";
} else if (stream.match(/^[0-9a-zA-Z$\.\_]+/)) {
return "variable-2";
}
return null;
};
// short client keyword token
function hookClient(stream) {
// \N means NULL
// ref: http://dev.mysql.com/doc/refman/5.5/en/null-values.html
if (stream.eat("N")) {
return "atom";
}
// \g, etc
// ref: http://dev.mysql.com/doc/refman/5.5/en/mysql-commands.html
return stream.match(/^[a-zA-Z.#!?]/) ? "variable-2" : null;
}
// these keywords are used by all SQL dialects (however, a mode can still overwrite it)
var sqlKeywords = "and y o no between by count desc distinct in is like on or set ";
// turn a space-separated list into an array
function set(str) {
var obj = {}, words = str.split(" ");
for (var i = 0; i < words.length; ++i) obj[words[i]] = true;
return obj;
}
// A generic SQL Mode. It's not a standard, it just try to support what is generally supported
CodeMirror.defineMIME("text/xy-sql", {
name: "sql",
keywords: set(sqlKeywords + ""),
builtin: set(" false true null unknown bool boolean bit blob enum long longblob longtext medium mediumblob mediumint mediumtext time timestamp tinyblob tinyint tinytext text bigint int int1 int2 int3 int4 int8 integer float float4 float8 double char varbinary varchar varcharacter precision real date datetime year unsigned signed decimal numeric"),
atoms: set(strKeys2),
operatorChars: /^[*+\-%<>!=]/,
dateSQL: set(strKeys3),//set("date time timestamp"),
support: set("ODBCdotTable doubleQuote binaryNumber hexNumber")
});
}());
});
}
</script>
<script>
var editorFormula = null;
function showhide() {
if ($('.col-Conceptos').hasClass('nowidth')) {
$('#showhide').addClass('icon-logout');
$('#showhide').removeClass('icon-login');
$('.col-Conceptos').removeClass('nowidth');
$('.col-Conceptos .portlet-body').removeClass('nodisplay');
$('.col-Conceptos .caption.font-Nominas').removeClass('nodisplay');
$('.col-detalle').addClass('col-md-8');
$('.col-detalle').removeClass('col-md-11');
} else {
$('#showhide').removeClass('icon-logout');
$('#showhide').addClass('icon-login');
$('.col-Conceptos').addClass('nowidth');
$('.col-Conceptos .portlet-body').addClass('nodisplay');
$('.col-Conceptos .caption.font-Nominas').addClass('nodisplay');
$('.col-detalle').removeClass('col-md-8');
$('.col-detalle').addClass('col-md-11');
}
}
function addtextFormula(texto) {
texto = editorFormula.getDoc().getValue() + ' ' + texto;
SettextFormula(texto);
editorFormula.focus();
editorFormula.setCursor(editorFormula.lineCount(), 0);
}
function SettextFormula(texto) {
editorFormula.getDoc().setValue(texto);
}
/*
function GetText(item, identacion, identacion2) {
var retorno = ''
if (item) {
retorno = '\r\n' + identacion + '<li>';
retorno = retorno + '\r\n' + identacion + identacion2;
if (item.isLink) {
retorno = retorno + '<a href="' + item.href + '"> ';
}
retorno = retorno + item.Texto;
if (item.isLink) {
retorno = retorno + identacion + ' </a>';
}
if (item.hijos && item.hijos.length > 0) {
retorno = retorno + '\r\n' + identacion + identacion2 + '<ul>\n\r';
for (var i = 0; i < item.hijos.length; i++) {
retorno = retorno + GetText(item.hijos[i], (identacion + identacion2), identacion2);
}
retorno = retorno + identacion + identacion2 + '</ul>\n\r';
}
retorno = retorno + '\r\n' + identacion + '</li>';
}
return retorno;
}
function cargaArbol() {
if ($('.DFTables').length > 0) {
var obj = JSON.parse($('.jdTables').text());
var cadena = '<ul id="tree_1">';
for (var i = 0; i < obj.length; i++) {
cadena = cadena + GetText(obj[i], ' ', ' ');
cadena = cadena + ' \n\r';
}
cadena = cadena + '</ul>';
setTimeout(function () { $('.DFTables').html(cadena); }, 1);
setTimeout(function () {
$('#tree_1').jstree({
"core": {
"themes": {
"responsive": false
}
},
"types": {
"default": {
"icon": "fa fa-folder icon-state-warning icon-lg"
},
"file": {
"icon": "fa fa-file icon-state-warning icon-lg"
}
},
"plugins": ["types"]
});
}, 1);
$('.DFTables').removeClass('DFTables');
}
}
*/
function cargaArbol() {
if ($('.DFTables').length > 0) {
$('.DFTables').each(function () {
let _this = $(this)
_this.jstree({
"core": {
"themes": {
"responsive": false
}
},
"types": {
"default": {
"icon": "fa fa-folder icon-state-warning icon-lg"
},
"file": {
"icon": "fa fa-file icon-state-warning icon-lg"
}
},
"plugins": ["wholerow", "types"]
});
_this.on('select_node.jstree', function (e, data) {
var link = $('#' + data.selected).find('a');
if (link.attr("href") != "" && link.attr("href") != "#") {
eval(link.attr("href"));
return false;
}
});
_this.removeClass('DFTables');
});
}
}
function ADSReady() {
let MycurrentT;
let strKeys2;
let strKeys3;
eval($('.LtlKeys').html())
$('.ShowModalDivFormula').on('shown.bs.modal', function (e) {
$('.BtnupView').click();
});
$('.ShowModalDivFormula').removeClass('ShowModalDivFormula');
ReloadcodeMirror(MycurrentT, strKeys2, strKeys3);
cargaArbol()
localitem = null;
$(".codeeditor").each(function (index) {
var id = $(this).attr('id')
let _input = $(this)
let editor = CodeMirror.fromTextArea(document.getElementById(id), {
lineNumbers: true,
mode: "text/xy-sql",
theme: "material",
extraKeys: { "Ctrl-Space": "autocomplete" }, // To invoke the auto complete // To invoke the auto complete
hint: CodeMirror.hint.sql,
hintOptions: {
tables: MycurrentT
},
change: function (cm) { },
readOnly: _input.prop('disabled')
});
editor.on('change', function (cMirror) {
// get value right from instance
cMirror.save();
});
$(this).removeClass('codeeditor');
if ($(this).hasClass('editorFormula')) {
editorFormula = editor;
}
});
}
</script>
</asp:Content>