Activar carga por excel con datos de prorrateo
This commit is contained in:
@@ -33,6 +33,10 @@
|
|||||||
.ajax__tab_xp .ajax__tab_body {
|
.ajax__tab_xp .ajax__tab_body {
|
||||||
font-size: 12px !important;
|
font-size: 12px !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.addropzone {
|
||||||
|
min-height: 170px;
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
</asp:Content>
|
</asp:Content>
|
||||||
<asp:Content ID="Content4" ContentPlaceHolderID="E" runat="Server">
|
<asp:Content ID="Content4" ContentPlaceHolderID="E" runat="Server">
|
||||||
@@ -933,61 +937,86 @@
|
|||||||
<asp:UpdatePanel runat="server" ID="UpModalProrrateoGasolina" UpdateMode="Conditional">
|
<asp:UpdatePanel runat="server" ID="UpModalProrrateoGasolina" UpdateMode="Conditional">
|
||||||
<ContentTemplate>
|
<ContentTemplate>
|
||||||
|
|
||||||
<%-- <div class="row">
|
<div class="row">
|
||||||
<div class="col-md-6">
|
<div class="col-md-6">
|
||||||
<div class="form-group form-md-line-input input-iconright">
|
|
||||||
<ADS:Dropdownlost runat="server" ID="DdlPSProrrateoGasolina" CssStyle="width:100%" CssClass="form-control input-sm DdlPS" CssClassDdl="select2me" DataTextField="PSCodigo" DataValueField="CvePS" />
|
<div class="row">
|
||||||
<label for="<%= DdlPSProrrateoGasolina.ClientID.ToString()%>">
|
<div class="col-md-12">
|
||||||
Productos / Servicio:
|
<div class="form-group form-md-line-input input-iconright">
|
||||||
<label>
|
<asp:DropDownList ID="DdlSubProyectoProrrateoGasolina" CssClass=" form-control input-sm select2me" runat="server" Width="100%" AppendDataBoundItems="true" DataTextField="SubProyecto" DataValueField="CveSubProyecto">
|
||||||
|
<asp:ListItem Selected="true" Text="Seleccione" Value="-1"></asp:ListItem>
|
||||||
|
</asp:DropDownList>
|
||||||
|
<label runat="server" id="Label10" for="<%= DdlSubProyectoProrrateoGasolina.ClientID.ToString()%>">
|
||||||
|
<asp:Label runat="server" ID="LblSubProyectoProrrateoGasolina"></asp:Label>:
|
||||||
|
</label>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="row">
|
||||||
|
|
||||||
|
<div class="col-md-12">
|
||||||
|
<div class="form-group form-md-line-input input-iconright">
|
||||||
|
<asp:TextBox ID="TxtPrecioProrrateoGasolina" ClientIDMode="Static" runat="server" CssClass=" form-control " CausesValidation="true" MaxLength="12" ValidationGroup="GprAgregaPSProrateo"></asp:TextBox>
|
||||||
|
<ajax:FilteredTextBoxExtender ID="FilTxtPrecioProrrateoGasolina" runat="server" TargetControlID="TxtPrecioProrrateoGasolina" FilterType="Custom, Numbers" ValidChars="." />
|
||||||
|
<asp:RequiredFieldValidator ID="RfvTxtPrecioProrrateoGasolina" runat="server" ControlToValidate="TxtPrecioProrrateoGasolina" CssClass="help-block errorimput"
|
||||||
|
ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Precio''</b> es necesario, por favor ingréselo." ValidationGroup="GprAgregaPSProrateo">
|
||||||
|
</asp:RequiredFieldValidator>
|
||||||
|
<label for="<%= TxtPrecioProrrateoGasolina.ClientID.ToString()%>">Porcentaje:</label>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-md-6">
|
||||||
|
<div class="form-group form-md-line-input input-iconright">
|
||||||
|
<asp:Label runat="server" ID="LblTotalProrrateoGasolina" CssClass="form-control" Text="100%"></asp:Label>
|
||||||
|
<label for="<%= LblTotalProrrateoGasolina.ClientID.ToString()%>">Porcentaje:</label>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="col-md-6">
|
||||||
|
<div class="form-group form-md-line-input input-iconright">
|
||||||
|
<asp:Label runat="server" ID="LblRestoProrrateoGasolina" CssClass="form-control"></asp:Label>
|
||||||
|
<label for="<%= LblRestoProrrateoGasolina.ClientID.ToString()%>">% Restante:</label>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-md-12" style="margin-top:10px;text-align:center">
|
||||||
|
<asp:LinkButton ID="LnkAgregarProrrateoGasolina" OnClick="LnkAgregarProrrateoGasolina_Click" runat="server" Text="Agregar" CssClass="btn btn-primary" ValidationGroup="GprAgregaPSProrateo" > </asp:LinkButton>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>--%>
|
<div class="col-md-6">
|
||||||
|
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-md-6" style="text-align:right">
|
||||||
|
<asp:LinkButton runat="server" ID="LnkDecargaPlatilla" OnClick="LnkDecargaPlatilla_Click" CssClass="btn btn-warning"><i class="fa fa-arrow-down" aria-hidden="true"></i> Formato</asp:LinkButton>
|
||||||
|
</div>
|
||||||
|
<div class="col-md-6" style="text-align:left">
|
||||||
|
<asp:Button Text="Agregar" CssClass="btn btn-success" ID="BrnAgregarPlantilla" OnClick="BrnAgregarPlantilla_Click" runat="server" />
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-md-21" style="margin-left: 5px; margin-right: 5px;">
|
||||||
|
<asp:TextBox ID="TxtExcel" CssClass="ADSdropzone hidden" Text="" data-maxFile="1" runat="server"></asp:TextBox>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<div class="row" style="margin-top:10px">
|
<div class="row" style="margin-top:10px">
|
||||||
<div class="col-md-4">
|
|
||||||
<div class="form-group form-md-line-input input-iconright">
|
|
||||||
<asp:DropDownList ID="DdlSubProyectoProrrateoGasolina" CssClass=" form-control input-sm select2me" runat="server" Width="100%" AppendDataBoundItems="true" DataTextField="SubProyecto" DataValueField="CveSubProyecto">
|
|
||||||
<asp:ListItem Selected="true" Text="Seleccione" Value="-1"></asp:ListItem>
|
|
||||||
</asp:DropDownList>
|
|
||||||
<%--<asp:RequiredFieldValidator ID="RfvDdlSubProyectoProrrateoGasolina" runat="server" ControlToValidate="DdlSubProyectoProrrateoGasolina" CssClass="help-block errorimput" InitialValue="-1"
|
|
||||||
ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo es necesario, por favor ingréselo." ValidationGroup="GprAgregaPSProrateo">
|
|
||||||
</asp:RequiredFieldValidator>--%>
|
|
||||||
<label runat="server" id="Label10" for="<%= DdlSubProyectoProrrateoGasolina.ClientID.ToString()%>">
|
|
||||||
<asp:Label runat="server" id="LblSubProyectoProrrateoGasolina"></asp:Label>:
|
|
||||||
</label>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
</div>
|
|
||||||
<div class="col-md-4">
|
|
||||||
<div class="form-group form-md-line-input input-iconright">
|
|
||||||
<asp:TextBox ID="TxtPrecioProrrateoGasolina" ClientIDMode="Static" runat="server" CssClass=" form-control " CausesValidation="true" MaxLength="12" ValidationGroup="GprAgregaPSProrateo"></asp:TextBox>
|
|
||||||
<ajax:FilteredTextBoxExtender ID="FilTxtPrecioProrrateoGasolina" runat="server" TargetControlID="TxtPrecioProrrateoGasolina" FilterType="Custom, Numbers" ValidChars="." />
|
|
||||||
<asp:RequiredFieldValidator ID="RfvTxtPrecioProrrateoGasolina" runat="server" ControlToValidate="TxtPrecioProrrateoGasolina" CssClass="help-block errorimput"
|
|
||||||
ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Precio''</b> es necesario, por favor ingréselo." ValidationGroup="GprAgregaPSProrateo">
|
|
||||||
</asp:RequiredFieldValidator>
|
|
||||||
<label for="<%= TxtPrecioProrrateoGasolina.ClientID.ToString()%>">Porcentaje:</label>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="col-md-4" style="margin-top:10px;text-align:right">
|
|
||||||
<asp:LinkButton ID="LnkAgregarProrrateoGasolina" OnClick="LnkAgregarProrrateoGasolina_Click" runat="server" Text="Agregar" CssClass="btn btn-primary" ValidationGroup="GprAgregaPSProrateo" > </asp:LinkButton>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
|
<div class="row" style="margin-top:10px">
|
||||||
<div class="row" style="margin-top:10px">
|
|
||||||
<div class="col-md-6">
|
|
||||||
<div class="form-group form-md-line-input input-iconright">
|
|
||||||
<asp:Label runat="server" ID="LblTotalProrrateoGasolina" CssClass="form-control" Text="100%"></asp:Label>
|
|
||||||
<label for="<%= LblTotalProrrateoGasolina.ClientID.ToString()%>">Porcentaje:</label>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="col-md-6">
|
|
||||||
<div class="form-group form-md-line-input input-iconright">
|
|
||||||
<asp:Label runat="server" ID="LblRestoProrrateoGasolina" CssClass="form-control"></asp:Label>
|
|
||||||
<label for="<%= LblRestoProrrateoGasolina.ClientID.ToString()%>">% Restante:</label>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-md-12">
|
<div class="col-md-12">
|
||||||
@@ -1018,6 +1047,9 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
</ContentTemplate>
|
</ContentTemplate>
|
||||||
|
<Triggers>
|
||||||
|
<asp:PostBackTrigger ControlID="LnkDecargaPlatilla" />
|
||||||
|
</Triggers>
|
||||||
</asp:UpdatePanel>
|
</asp:UpdatePanel>
|
||||||
</div>
|
</div>
|
||||||
<div class="modal-footer">
|
<div class="modal-footer">
|
||||||
@@ -1565,9 +1597,6 @@
|
|||||||
<ajax:TabPanel runat="server" HeaderText="Historial" ID="TabHistorial">
|
<ajax:TabPanel runat="server" HeaderText="Historial" ID="TabHistorial">
|
||||||
<ContentTemplate>
|
<ContentTemplate>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-md-12">
|
<div class="col-md-12">
|
||||||
<asp:GridView ID="GVSolicitudesHistorial" runat="server" GridLines="None" CssClass="table table-striped table-hover Widthall ScrollAD mysmallbtn" AutoGenerateColumns="False" OnRowDataBound="GVSolicitudesHistorial_RowDataBound"
|
<asp:GridView ID="GVSolicitudesHistorial" runat="server" GridLines="None" CssClass="table table-striped table-hover Widthall ScrollAD mysmallbtn" AutoGenerateColumns="False" OnRowDataBound="GVSolicitudesHistorial_RowDataBound"
|
||||||
@@ -1634,26 +1663,11 @@
|
|||||||
</asp:GridView>
|
</asp:GridView>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
</ContentTemplate>
|
</ContentTemplate>
|
||||||
</ajax:TabPanel>
|
</ajax:TabPanel>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
</ajax:TabContainer>
|
</ajax:TabContainer>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
<div class="modal-footer">
|
<div class="modal-footer">
|
||||||
|
|
||||||
<button type="button" class="btn btn-default" data-dismiss="modal">Cerrar</button>
|
<button type="button" class="btn btn-default" data-dismiss="modal">Cerrar</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -5587,13 +5587,13 @@ Partial Class Compras_eFacturas
|
|||||||
|
|
||||||
|
|
||||||
If DdlSubProyectoProrrateoGasolina.SelectedValue.ToEntero > 0 Then
|
If DdlSubProyectoProrrateoGasolina.SelectedValue.ToEntero > 0 Then
|
||||||
AgregarProrrateoGasolina(DdlSubProyectoProrrateoGasolina.SelectedValue.ToEntero, DdlSubProyectoProrrateoGasolina.SelectedItem.Text, CvePs, CveUM, UM, CveClasificacion, Clasificacion)
|
AgregarProrrateoGasolina(DdlSubProyectoProrrateoGasolina.SelectedValue.ToEntero, DdlSubProyectoProrrateoGasolina.SelectedItem.Text, CvePs, CveUM, UM, CveClasificacion, Clasificacion, TxtPrecioProrrateoGasolina.Text.ToDecimal)
|
||||||
Else
|
Else
|
||||||
DTProrrateoTmp.Rows.Clear()
|
DTProrrateoTmp.Rows.Clear()
|
||||||
|
|
||||||
For Each item As ListItem In DdlSubProyectoProrrateoGasolina.Items
|
For Each item As ListItem In DdlSubProyectoProrrateoGasolina.Items
|
||||||
If item.Value.ToEntero > 0 Then
|
If item.Value.ToEntero > 0 Then
|
||||||
AgregarProrrateoGasolina(item.Value.ToEntero, item.Text, CvePs, CveUM, UM, CveClasificacion, Clasificacion)
|
AgregarProrrateoGasolina(item.Value.ToEntero, item.Text, CvePs, CveUM, UM, CveClasificacion, Clasificacion, TxtPrecioProrrateoGasolina.Text.ToDecimal)
|
||||||
End If
|
End If
|
||||||
Next
|
Next
|
||||||
End If
|
End If
|
||||||
@@ -5605,7 +5605,7 @@ Partial Class Compras_eFacturas
|
|||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
|
|
||||||
Private Sub AgregarProrrateoGasolina(CveSubProyecto As Integer, SubProyecto As String, CvePS As Integer, CveUM As Integer, UM As String, CveClasificacion As Integer, Clasificacion As String)
|
Private Sub AgregarProrrateoGasolina(CveSubProyecto As Integer, SubProyecto As String, CvePS As Integer, CveUM As Integer, UM As String, CveClasificacion As Integer, Clasificacion As String, Porcentaje As Decimal)
|
||||||
|
|
||||||
''' este prco3eso compratira todo esto se debe de llevar a la genracion de la factura por porcentaje
|
''' este prco3eso compratira todo esto se debe de llevar a la genracion de la factura por porcentaje
|
||||||
|
|
||||||
@@ -5615,7 +5615,7 @@ Partial Class Compras_eFacturas
|
|||||||
Dim RetIVAOriginal As Decimal = 0D 'TxtRetIVA.Text.ToDecimal
|
Dim RetIVAOriginal As Decimal = 0D 'TxtRetIVA.Text.ToDecimal
|
||||||
Dim TotalOriginal As Decimal = 1
|
Dim TotalOriginal As Decimal = 1
|
||||||
|
|
||||||
Dim totalParcialDeseado As Decimal = TxtPrecioProrrateoGasolina.Text.ToDecimal
|
Dim totalParcialDeseado As Decimal = Porcentaje
|
||||||
Dim PorcentajeCalculado As Decimal = totalParcialDeseado / TotalOriginal
|
Dim PorcentajeCalculado As Decimal = totalParcialDeseado / TotalOriginal
|
||||||
|
|
||||||
Dim subtotalParcial As Decimal = SubTotalOriginal * PorcentajeCalculado
|
Dim subtotalParcial As Decimal = SubTotalOriginal * PorcentajeCalculado
|
||||||
@@ -5643,7 +5643,7 @@ Partial Class Compras_eFacturas
|
|||||||
|
|
||||||
nRow("Total") = totalParcialDeseado.RoundSQL(4)
|
nRow("Total") = totalParcialDeseado.RoundSQL(4)
|
||||||
nRow("PorcentajeIVA") = (ivaParcial / subtotalParcial).RoundSQL(4)
|
nRow("PorcentajeIVA") = (ivaParcial / subtotalParcial).RoundSQL(4)
|
||||||
nRow("Porcentaje") = TxtPrecioProrrateoGasolina.Text.ToDecimal '((totalParcialDeseado.RoundSQL(4) * 100) / TotalOriginal).RoundSQL(2)
|
nRow("Porcentaje") = Porcentaje '((totalParcialDeseado.RoundSQL(4) * 100) / TotalOriginal).RoundSQL(2)
|
||||||
|
|
||||||
'nRow("RetIVAPorcentaje") = (retIvaParcial / subtotalParcial).RoundSQL(4)
|
'nRow("RetIVAPorcentaje") = (retIvaParcial / subtotalParcial).RoundSQL(4)
|
||||||
'nRow("RetISRPorcentaje") = (retIsrParcial / subtotalParcial).RoundSQL(4)
|
'nRow("RetISRPorcentaje") = (retIsrParcial / subtotalParcial).RoundSQL(4)
|
||||||
@@ -6213,6 +6213,113 @@ Partial Class Compras_eFacturas
|
|||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Protected Sub LnkDecargaPlatilla_Click(sender As Object, e As EventArgs)
|
||||||
|
|
||||||
|
Dim rutaArchivoPlantilla As String = ModExtensiones.DirectorioBaseEmpresas & "Empresas\Grales\CargaProrrateoPorcentaje.xlsx"
|
||||||
|
|
||||||
|
Dim nombreArchivo As String = "CargaProrrateoPorcentaje.xlsx"
|
||||||
|
|
||||||
|
' Configurar la respuesta HTTP
|
||||||
|
Response.Clear()
|
||||||
|
Response.ContentType = "application/octet-stream"
|
||||||
|
Response.AppendHeader("Content-Disposition", "attachment; filename=" & nombreArchivo)
|
||||||
|
|
||||||
|
Dim contenido As Byte() = System.IO.File.ReadAllBytes(rutaArchivoPlantilla)
|
||||||
|
Response.BinaryWrite(contenido)
|
||||||
|
|
||||||
|
Response.Flush()
|
||||||
|
Response.End()
|
||||||
|
|
||||||
|
End Sub
|
||||||
|
|
||||||
|
Protected Sub BrnAgregarPlantilla_Click(sender As Object, e As EventArgs)
|
||||||
|
|
||||||
|
If TxtExcel.getfiles().Archivos.Count > 0 Then
|
||||||
|
Dim file As Archivo = TxtExcel.getfiles().Archivos(0)
|
||||||
|
Dim Directorio As String = Server.MapPath("~") & file.path
|
||||||
|
Dim Tipo As String = If(file.Extension.Contiene("xlsx", "xlsx", "xlsm", "xlsb"), "EXCEL", "CSV")
|
||||||
|
|
||||||
|
Dim DTPlantilla As DataTable = ReadExcelFile(Directorio + file.filename, True)
|
||||||
|
|
||||||
|
ProcesaPlantilla(DTPlantilla)
|
||||||
|
|
||||||
|
Else
|
||||||
|
Alert("No existe el archivo.Favor de subir un archivo csv o excel a la plataforma", TipoMensaje.MsgError)
|
||||||
|
End If
|
||||||
|
|
||||||
|
End Sub
|
||||||
|
|
||||||
|
|
||||||
|
Function ProcesaPlantilla(DTPlantilla As DataTable) As Boolean
|
||||||
|
|
||||||
|
|
||||||
|
Dim CvePs As Integer = DdlPS.SelectedValue.ToEntero
|
||||||
|
|
||||||
|
If Not CvePs > 0 Then
|
||||||
|
Alert("Debe seleccionar un producto", TipoMensaje.MsgAdvertencia)
|
||||||
|
Return False
|
||||||
|
End If
|
||||||
|
|
||||||
|
Dim PsRow As DataRow = GlobalDTPS(UsuarioActual.CveEmpresa, CvePs).FiltroPrimero("")
|
||||||
|
|
||||||
|
If PsRow Is Nothing Then
|
||||||
|
Alert("No se encontro el producto", TipoMensaje.MsgAdvertencia)
|
||||||
|
Return False
|
||||||
|
End If
|
||||||
|
|
||||||
|
Dim CveUM As Integer = PsRow("CveUM").ToString.ToEntero
|
||||||
|
Dim UM As String = GlobalDTUnidadesMedida(UsuarioActual.CveEmpresa).FiltroPrimeroValor("UnidadMedida", $" CveUnidadMedida = {CveUM} ")
|
||||||
|
|
||||||
|
Dim CveClasificacion As Integer = PsRow("CveClasificacion").ToString.ToEntero
|
||||||
|
Dim Clasificacion As String = GlobalDTClasificaciones(UsuarioActual.CveEmpresa).FiltroPrimeroValor("Clasificacion", $" CveClasificacion = {CveClasificacion} ")
|
||||||
|
|
||||||
|
Dim TotalPorcentaje As Decimal
|
||||||
|
Dim ErrorProceso As Boolean = False
|
||||||
|
Dim SbSubProyectosNoencontrados As New StringBuilder
|
||||||
|
|
||||||
|
For Each dRow As DataRow In DTPlantilla.Rows
|
||||||
|
If dRow("Porcentaje").ToString.ToDecimal < 0 Then
|
||||||
|
Alert("No se admiten porcentajes negativos.", TipoMensaje.MsgAdvertencia)
|
||||||
|
Return False
|
||||||
|
End If
|
||||||
|
TotalPorcentaje = TotalPorcentaje + dRow("Porcentaje").ToString.ToDecimal
|
||||||
|
Next
|
||||||
|
|
||||||
|
TotalPorcentaje = TotalPorcentaje.RoundSQL
|
||||||
|
If TotalPorcentaje <> 100 Then
|
||||||
|
Alert($"La suma de porcentaje es diferente de 100%, el porcetaje actual es de {TotalPorcentaje}%", TipoMensaje.MsgAdvertencia)
|
||||||
|
Return False
|
||||||
|
End If
|
||||||
|
|
||||||
|
If Not DTPlantilla.Columns.Contains("CveSubProyecto") Then
|
||||||
|
DTPlantilla.Columns.Add("CveSubProyecto", GetType(Integer))
|
||||||
|
End If
|
||||||
|
|
||||||
|
|
||||||
|
For Each dRow As DataRow In DTPlantilla.Rows
|
||||||
|
Dim CveSubProyecto As Integer = GlobalDTSubProyectos(UsuarioActual.CveEmpresa).FiltroPrimeroValor("CveSubProyecto", $" SubProyecto = '{dRow("CentroCosto").ToString}' ").ToEntero
|
||||||
|
If CveSubProyecto > 0 Then
|
||||||
|
dRow("CveSubProyecto") = CveSubProyecto
|
||||||
|
Else
|
||||||
|
ErrorProceso = True
|
||||||
|
SbSubProyectosNoencontrados.AppendLine($"{dRow("CentroCosto").ToString}<br>")
|
||||||
|
End If
|
||||||
|
Next
|
||||||
|
|
||||||
|
If ErrorProceso AndAlso SbSubProyectosNoencontrados.Length > 0 Then
|
||||||
|
Alert($"No se encontraron los siguientes centros de costo <br>{SbSubProyectosNoencontrados.ToString}", TipoMensaje.MsgAdvertencia)
|
||||||
|
End If
|
||||||
|
|
||||||
|
For Each dRow As DataRow In DTPlantilla.Rows
|
||||||
|
AgregarProrrateoGasolina(dRow("CveSubProyecto").ToString.ToEntero, dRow("CentroCosto").ToString, CvePs, CveUM, UM, CveClasificacion, Clasificacion, dRow("Porcentaje").ToString.ToDecimal)
|
||||||
|
Next
|
||||||
|
|
||||||
|
TxtExcel.Text = "[]"
|
||||||
|
Return True
|
||||||
|
|
||||||
|
End Function
|
||||||
|
|
||||||
End Class
|
End Class
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user