Merge branch 'master' of http://192.168.10.111:8383/SIG
This commit is contained in:
@@ -583,7 +583,7 @@
|
||||
</div>
|
||||
</ItemTemplate>
|
||||
</asp:TemplateField>
|
||||
<asp:TemplateField HeaderText="Dividir" ItemStyle-Width="80px" ItemStyle-HorizontalAlign="Center" Visible="false">
|
||||
<asp:TemplateField HeaderText="Dividir" ItemStyle-Width="80px" ItemStyle-HorizontalAlign="Center" Visible="True">
|
||||
<ItemTemplate>
|
||||
<asp:TextBox runat="server" ID="TxtDividir" Width="30px"></asp:TextBox>
|
||||
<ajax:FilteredTextBoxExtender ID="SoloNumeros2" runat="server" TargetControlID="TxtDividir" FilterType="Custom, Numbers" ValidChars="." />
|
||||
|
||||
@@ -3,6 +3,16 @@
|
||||
<asp:Content ID="Content1" ContentPlaceHolderID="CP" runat="Server">
|
||||
</asp:Content>
|
||||
<asp:Content ID="Content2" ContentPlaceHolderID="Css" runat="Server">
|
||||
|
||||
<style type="text/css">
|
||||
|
||||
.customCalendarStyle
|
||||
{
|
||||
position: relative; /* Asegura que z-index funcione */
|
||||
z-index: 9999;
|
||||
}
|
||||
</style>
|
||||
|
||||
</asp:Content>
|
||||
<asp:Content ID="Content3" ContentPlaceHolderID="E" runat="Server">
|
||||
Paquetes | Armado - Desarmado
|
||||
@@ -186,7 +196,9 @@
|
||||
</div>
|
||||
</div>
|
||||
<div class="portlet-body">
|
||||
<asp:GridView ID="GvDatosArmado" DataKeyNames="Cantidad,CvePS,CveUM,Consec,AplicaSeccion,AplicaSerie,AplicaCaducidad,AplicaLote" runat="server" AutoGenerateColumns="false" EmptyDataText="No se encontraron datos con los filtros especificados" CssClass="table table-striped table-hover ScrollAD Widthall" BorderColor="#D3D3D3" data-heighterror="450" data-freezerows="1" GridLines="None">
|
||||
<asp:GridView ID="GvDatosArmado"
|
||||
DataKeyNames="Cantidad,CvePS,CveUM,Consec,AplicaSeccion,AplicaSerie,AplicaCaducidad,AplicaLote,CodigoPS" runat="server" AutoGenerateColumns="false"
|
||||
EmptyDataText="No se encontraron datos con los filtros especificados" CssClass="table table-striped table-hover Widthall" BorderColor="#D3D3D3" GridLines="None">
|
||||
<Columns>
|
||||
<asp:BoundField HeaderText="Cant. Necesaria" DataField="Cantidad" ItemStyle-Width="15%" DataFormatString="{0:###,###,###,##0.##}" ItemStyle-HorizontalAlign="Right" />
|
||||
<asp:BoundField HeaderText="Cant. Disponible" DataField="CantidadDisponible2" ItemStyle-Width="15%" DataFormatString="{0:###,###,###,##0.##}" ItemStyle-HorizontalAlign="Right" />
|
||||
@@ -210,7 +222,8 @@
|
||||
</asp:TemplateField>
|
||||
<asp:TemplateField HeaderText="Fecha Caducidad">
|
||||
<ItemTemplate>
|
||||
<div class="input-group input-sm input-small date date-picker " data-date-format="dd/mm/yyyy" style="width: 120px !important; padding: 0px;">
|
||||
|
||||
<%-- <div class="input-group input-sm input-small date date-picker " data-date-format="dd/mm/yyyy" style="width: 120px !important; padding: 0px;">
|
||||
<asp:TextBox ID="TxtCaducidad" Text="" CssClass="form-control input-sm ADSMaskDate" Style="width: 78px" runat="server" Visible="false" Enabled="false"></asp:TextBox>
|
||||
<span class="input-group-btn ">
|
||||
<asp:LinkButton runat="server" ID="LnkCaducidad" class="btn default" Visible="false" Enabled="false"> <i class="fa fa-calendar"></i> </asp:LinkButton>
|
||||
@@ -220,12 +233,38 @@
|
||||
<asp:RequiredFieldValidator ID="RFVCaducidad" runat="server" ControlToValidate="TxtCaducidad" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Caducidad''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator>
|
||||
<ajax:ValidatorCalloutExtender ID="VCECaducidad" runat="server" HighlightCssClass="vco" TargetControlID="RFVCaducidad"></ajax:ValidatorCalloutExtender>
|
||||
</span>
|
||||
</div>
|
||||
</div>--%>
|
||||
|
||||
<div class="input-group input-sm input-small date date-picker " data-date-format="dd/mm/yyyy" style="width: 120px !important; padding: 0px;" runat="server" visible="false" id="DvFechaCaducidad" >
|
||||
<asp:TextBox ID="TxtCaducidad" Text="" CssClass="form-control input-sm ADSMaskDate" Style="width: 87px" runat="server" ></asp:TextBox>
|
||||
<span class="input-group-btn ">
|
||||
<asp:LinkButton runat="server" ID="LnkCaducidad" class="btn default" > <i class="fa fa-calendar"></i> </asp:LinkButton>
|
||||
</span>
|
||||
<ajax:MaskedEditExtender ID="MEECaducidad" runat="server" TargetControlID="TxtCaducidad" Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
|
||||
<ajax:CalendarExtender runat="server" ID="CECaducidad" TargetControlID="TxtCaducidad" PopupButtonID="LnkCaducidad" PopupPosition="TopLeft" Format="dd/MM/yyyy"
|
||||
> </ajax:CalendarExtender>
|
||||
|
||||
|
||||
<asp:RequiredFieldValidator ID="RFVCaducidad" runat="server" ControlToValidate="TxtCaducidad" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Caducidad''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator>
|
||||
<ajax:ValidatorCalloutExtender ID="VCECaducidad" runat="server" HighlightCssClass="vco" TargetControlID="RFVCaducidad"></ajax:ValidatorCalloutExtender>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
</ItemTemplate>
|
||||
</asp:TemplateField>
|
||||
|
||||
<asp:TemplateField HeaderText="Dividir " ItemStyle-Width="80px" ItemStyle-HorizontalAlign="Center" Visible="True">
|
||||
<ItemTemplate>
|
||||
<asp:TextBox runat="server" ID="TxtDividir" Width="30px" onkeydown="return evitarPostBack(event);"></asp:TextBox>
|
||||
<ajax:FilteredTextBoxExtender ID="SoloNumeros2" runat="server" TargetControlID="TxtDividir" FilterType="Custom, Numbers" ValidChars="." />
|
||||
<asp:Button runat="server" ID="BtnDividir" Text="Dividir" OnClick="Dividir" Style="display: none;" />
|
||||
</ItemTemplate>
|
||||
</asp:TemplateField>
|
||||
</Columns>
|
||||
</asp:GridView>
|
||||
|
||||
<asp:HiddenField runat="server" ClientIDMode="Static" ID="HdnCantidadMovimiento" />
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</ContentTemplate>
|
||||
@@ -468,7 +507,22 @@
|
||||
</asp:TemplateField>
|
||||
<asp:TemplateField HeaderText="Fecha Caducidad">
|
||||
<ItemTemplate>
|
||||
<div class="input-group input-sm input-small date date-picker " data-date-format="dd/mm/yyyy" style="width: 120px !important; padding: 0px;">
|
||||
|
||||
<div class="input-group input-sm input-small date date-picker " data-date-format="dd/mm/yyyy" style="width: 120px !important; padding: 0px;" runat="server" visible="false" id="DvFechaCaducidad" >
|
||||
<asp:TextBox ID="TxtCaducidad" Text="" CssClass="form-control input-sm ADSMaskDate" Style="width: 87px" runat="server" ></asp:TextBox>
|
||||
<span class="input-group-btn ">
|
||||
<asp:LinkButton runat="server" ID="LnkCaducidad" class="btn default" > <i class="fa fa-calendar"></i> </asp:LinkButton>
|
||||
</span>
|
||||
<ajax:MaskedEditExtender ID="MEECaducidad" runat="server" TargetControlID="TxtCaducidad" Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
|
||||
<ajax:CalendarExtender runat="server" ID="CECaducidad" TargetControlID="TxtCaducidad" PopupButtonID="LnkCaducidad" PopupPosition="TopLeft" Format="dd/MM/yyyy"
|
||||
> </ajax:CalendarExtender>
|
||||
|
||||
|
||||
<asp:RequiredFieldValidator ID="RFVCaducidad" runat="server" ControlToValidate="TxtCaducidad" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Caducidad''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator>
|
||||
<ajax:ValidatorCalloutExtender ID="VCECaducidad" runat="server" HighlightCssClass="vco" TargetControlID="RFVCaducidad"></ajax:ValidatorCalloutExtender>
|
||||
</div>
|
||||
|
||||
<%--<div class="input-group input-sm input-small date date-picker " data-date-format="dd/mm/yyyy" style="width: 120px !important; padding: 0px;">
|
||||
<asp:TextBox ID="TxtCaducidad" Text="" CssClass="form-control input-sm ADSMaskDate" Style="width: 78px" runat="server" Visible="false" Enabled="false"></asp:TextBox>
|
||||
<span class="input-group-btn ">
|
||||
<asp:LinkButton runat="server" ID="LnkCaducidad" class="btn default" Visible="false" Enabled="false"> <i class="fa fa-calendar"></i> </asp:LinkButton>
|
||||
@@ -478,9 +532,17 @@
|
||||
<asp:RequiredFieldValidator ID="RFVCaducidad" runat="server" ControlToValidate="TxtCaducidad" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Caducidad''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator>
|
||||
<ajax:ValidatorCalloutExtender ID="VCECaducidad" runat="server" HighlightCssClass="vco" TargetControlID="RFVCaducidad"></ajax:ValidatorCalloutExtender>
|
||||
</span>
|
||||
</div>
|
||||
</div>--%>
|
||||
|
||||
</ItemTemplate>
|
||||
</asp:TemplateField>
|
||||
<asp:TemplateField HeaderText="Dividir " ItemStyle-Width="80px" ItemStyle-HorizontalAlign="Center" Visible="True">
|
||||
<ItemTemplate>
|
||||
<asp:TextBox runat="server" ID="TxtDividir" Width="30px" onkeydown="return evitarPostBack(event);" ></asp:TextBox>
|
||||
<ajax:FilteredTextBoxExtender ID="SoloNumeros2" runat="server" TargetControlID="TxtDividir" FilterType="Custom, Numbers" ValidChars="." />
|
||||
<asp:Button runat="server" ID="BtnDividir" Text="Dividir" OnClick="DividirDesarmado" Style="display: none;" />
|
||||
</ItemTemplate>
|
||||
</asp:TemplateField>
|
||||
</Columns>
|
||||
</asp:GridView>
|
||||
|
||||
@@ -630,6 +692,40 @@
|
||||
snd.currentTime = 0;
|
||||
}
|
||||
|
||||
|
||||
function Dividir(t) {
|
||||
$get("HdnCantidadMovimiento").value = $get(t).value;
|
||||
}
|
||||
|
||||
function LimitaCantidad(C, textbox, button) {
|
||||
|
||||
// var contenedor = $(textbox).parent().find("#" + buttonIdDiv);
|
||||
|
||||
if (ToDouble(textbox.value) >= C) {
|
||||
textbox.value = "";
|
||||
}
|
||||
|
||||
if (parseFloat(textbox.value) > 0) {
|
||||
$get(button).style.display = "";
|
||||
//$(contenedor).show();
|
||||
}
|
||||
else {
|
||||
$get(button).style.display = "none";
|
||||
//$(contenedor).hide();
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
function evitarPostBack(event) {
|
||||
if (event.keyCode === 13) {
|
||||
event.preventDefault();
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
</script>
|
||||
|
||||
|
||||
</asp:Content>
|
||||
|
||||
|
||||
@@ -124,6 +124,38 @@ Partial Class Inventarios_PaquetesArmadoDesarmado
|
||||
ViewState("DtExistenciasDesarmado") = value
|
||||
End Set
|
||||
End Property
|
||||
|
||||
|
||||
Private Property DtDatosArmado As DataTable
|
||||
Get
|
||||
If ViewState("DtDatosArmado") Is Nothing Then
|
||||
ViewState("DtDatosArmado") = New DataTable
|
||||
End If
|
||||
|
||||
Return CType(ViewState("DtDatosArmado"), DataTable)
|
||||
|
||||
End Get
|
||||
Set(value As DataTable)
|
||||
ViewState("DtDatosArmado") = value
|
||||
End Set
|
||||
End Property
|
||||
|
||||
|
||||
Private Property DtDatosDesArmado As DataTable
|
||||
Get
|
||||
If ViewState("DtDatosDesArmado") Is Nothing Then
|
||||
ViewState("DtDatosDesArmado") = New DataTable
|
||||
End If
|
||||
|
||||
Return CType(ViewState("DtDatosDesArmado"), DataTable)
|
||||
|
||||
End Get
|
||||
Set(value As DataTable)
|
||||
ViewState("DtDatosDesArmado") = value
|
||||
End Set
|
||||
End Property
|
||||
|
||||
|
||||
#End Region
|
||||
|
||||
|
||||
@@ -217,20 +249,20 @@ Partial Class Inventarios_PaquetesArmadoDesarmado
|
||||
Limpia(TipoMovimiento)
|
||||
|
||||
Dim ObjProductosServicios As New ClsProductosServicios
|
||||
Dim DtDatos As New DataTable
|
||||
DtDatosArmado = New DataTable
|
||||
|
||||
Dim drP As DataRow = GlobalDTPS(UsuarioActual.CveEmpresa, CvePS:=DdlPaqueteArmado.SelectedValue.ToEntero).FiltroPrimero("")
|
||||
|
||||
Dim CveUMTemp As Integer = drP("CveUM").ToString.ToEntero
|
||||
If ObjProductosServicios.GetPaqueteDetalle(DdlPaqueteArmado.SelectedValue.ToEntero, UsuarioActual.CveEmpresa, CveUMTemp, TxtCantidadArmado.Text.ToDouble, DdlAlmacenArmado.SelectedValue.ToEntero, TxtFechaArmado.Text.ToDate, CveVendedor:=CveVendedor, CveCliente:=If(UsuarioActual.Empresa.Funcionalidad(146) = "1", -1, CveCliente)) Then
|
||||
DtDatos = ObjProductosServicios.DtResultados.FiltraParametros("CveTipoPS = 2").Copy
|
||||
DtDatosArmado = ObjProductosServicios.DtResultados.FiltraParametros("CveTipoPS = 2").Copy
|
||||
Else
|
||||
DtDatos = Nothing
|
||||
DtDatosArmado = Nothing
|
||||
Alert("Ocurrió un error al obtener los componentes del paquete. Por favor vuelva a intentar.", TipoMensaje.MsgError)
|
||||
End If
|
||||
ObjProductosServicios.Dispose()
|
||||
|
||||
If DtDatos Is Nothing Then
|
||||
If DtDatosArmado Is Nothing Then
|
||||
Exit Sub
|
||||
End If
|
||||
|
||||
@@ -238,15 +270,15 @@ Partial Class Inventarios_PaquetesArmadoDesarmado
|
||||
CveCliente = If(RowClienteArmado.Visible, DdlClienteArmado.SelectedValue.ToEntero, -1)
|
||||
|
||||
|
||||
If DtDatos.Rows.Count > 0 Then
|
||||
For Each Dr As DataRow In DtDatos.Rows
|
||||
If DtDatosArmado.Rows.Count > 0 Then
|
||||
For Each Dr As DataRow In DtDatosArmado.Rows
|
||||
Dr("Cantidad") = Dr("Cantidad").ToString.ToDecimal * TxtCantidadArmado.Text.ToDecimal
|
||||
Next
|
||||
End If
|
||||
|
||||
Dim TextoExistencias As String = "No hay existencia suficiente de los siguientes componentes: <br/><br/>"
|
||||
Dim ErrorExistencias As Boolean = False
|
||||
For Each Dr As DataRow In DtDatos.Rows
|
||||
For Each Dr As DataRow In DtDatosArmado.Rows
|
||||
If Dr("CantidadDisponible2").ToString.ToDecimal < Dr("Cantidad").ToString.ToDecimal Then
|
||||
TextoExistencias += $"<br/>- Componente: <b>""{Dr("CodigoPS")}""</b>."
|
||||
ErrorExistencias = True
|
||||
@@ -280,13 +312,13 @@ Partial Class Inventarios_PaquetesArmadoDesarmado
|
||||
CvePaqueteArmado = DdlPaqueteArmado.SelectedValue.ToEntero
|
||||
CveAlmacenArmado = DdlAlmacenArmado.SelectedValue.ToEntero
|
||||
|
||||
GvDatosArmado.DataSource = DtDatos
|
||||
GvDatosArmado.DataSource = DtDatosArmado
|
||||
GvDatosArmado.DataBind()
|
||||
|
||||
GvDatosArmado.Columns(4).Visible = DtDatos.MAX("AplicaSerie", "") = "True"
|
||||
GvDatosArmado.Columns(5).Visible = DtDatos.MAX("AplicaSeccion") = "True"
|
||||
GvDatosArmado.Columns(6).Visible = DtDatos.MAX("AplicaLote") = "True"
|
||||
GvDatosArmado.Columns(7).Visible = DtDatos.MAX("AplicaCaducidad") = "True"
|
||||
GvDatosArmado.Columns(4).Visible = DtDatosArmado.MAX("AplicaSerie", "") = "True"
|
||||
GvDatosArmado.Columns(5).Visible = DtDatosArmado.MAX("AplicaSeccion") = "True"
|
||||
GvDatosArmado.Columns(6).Visible = DtDatosArmado.MAX("AplicaLote") = "True"
|
||||
GvDatosArmado.Columns(7).Visible = DtDatosArmado.MAX("AplicaCaducidad") = "True"
|
||||
|
||||
'If ErrorExistencias Then
|
||||
' GvDatosArmado.Columns(4).Visible = False
|
||||
@@ -338,23 +370,23 @@ Partial Class Inventarios_PaquetesArmadoDesarmado
|
||||
|
||||
|
||||
Dim ObjProductosServicios As New ClsProductosServicios
|
||||
Dim DtDatos As New DataTable
|
||||
DtDatosDesArmado = New DataTable
|
||||
|
||||
|
||||
If ObjProductosServicios.GetPaqueteDetalle(DdlPaqueteDesarmado.SelectedValue.ToEntero, UsuarioActual.CveEmpresa, CveUMTemp, TxtCantidadDesarmado.Text.ToDouble, DdlAlmacenArmado.SelectedValue.ToEntero, TxtFechaArmado.Text.ToDate, CveVendedor:=CveVendedor, CveCliente:=If(UsuarioActual.Empresa.Funcionalidad(146) = "1", -1, CveCliente)) Then
|
||||
DtDatos = ObjProductosServicios.DtResultados.FiltraParametros("CveTipoPS = 2").Copy
|
||||
DtDatosDesArmado = ObjProductosServicios.DtResultados.FiltraParametros("CveTipoPS = 2").Copy
|
||||
Else
|
||||
DtDatos = Nothing
|
||||
DtDatosDesArmado = Nothing
|
||||
Alert("Ocurrió un error al obtener los componentes del paquete. Por favor vuelva a intentar.", TipoMensaje.MsgError)
|
||||
End If
|
||||
ObjProductosServicios.Dispose()
|
||||
|
||||
If DtDatos Is Nothing Then
|
||||
If DtDatosDesArmado Is Nothing Then
|
||||
Exit Sub
|
||||
End If
|
||||
|
||||
If DtDatos.Rows.Count > 0 Then
|
||||
For Each Dr As DataRow In DtDatos.Rows
|
||||
If DtDatosDesArmado.Rows.Count > 0 Then
|
||||
For Each Dr As DataRow In DtDatosDesArmado.Rows
|
||||
Dr("Cantidad") = Dr("Cantidad").ToString.ToDecimal * TxtCantidadDesarmado.Text.ToDecimal
|
||||
Next
|
||||
End If
|
||||
@@ -372,13 +404,13 @@ Partial Class Inventarios_PaquetesArmadoDesarmado
|
||||
CvePaqueteDesarmado = DdlPaqueteDesarmado.SelectedValue.ToEntero
|
||||
CveAlmacenDesarmado = DdlAlmacenDesarmado.SelectedValue.ToEntero
|
||||
|
||||
GvDatosDesarmado.DataSource = DtDatos
|
||||
GvDatosDesarmado.DataSource = DtDatosDesArmado
|
||||
GvDatosDesarmado.DataBind()
|
||||
|
||||
GvDatosArmado.Columns(4).Visible = DtDatos.MAX("AplicaSerie", "") = "True"
|
||||
GvDatosArmado.Columns(5).Visible = DtDatos.MAX("AplicaSeccion") = "True"
|
||||
GvDatosArmado.Columns(6).Visible = DtDatos.MAX("AplicaLote") = "True"
|
||||
GvDatosArmado.Columns(7).Visible = DtDatos.MAX("AplicaCaducidad") = "True"
|
||||
GvDatosArmado.Columns(4).Visible = DtDatosDesArmado.MAX("AplicaSerie", "") = "True"
|
||||
GvDatosArmado.Columns(5).Visible = DtDatosDesArmado.MAX("AplicaSeccion") = "True"
|
||||
GvDatosArmado.Columns(6).Visible = DtDatosDesArmado.MAX("AplicaLote") = "True"
|
||||
GvDatosArmado.Columns(7).Visible = DtDatosDesArmado.MAX("AplicaCaducidad") = "True"
|
||||
|
||||
BtnGuadarDesarmado.Visible = True
|
||||
|
||||
@@ -458,6 +490,91 @@ Partial Class Inventarios_PaquetesArmadoDesarmado
|
||||
End If
|
||||
|
||||
|
||||
Dim TextoError As New StringBuilder
|
||||
If Tipo = 1 Then
|
||||
Dim ObjInventarioVal As New ClsInventarios
|
||||
Dim StrXML As New StringBuilder
|
||||
StrXML.Append("<conceptos>")
|
||||
Dim FechaCaducidad As Date
|
||||
Dim Lote As String = ""
|
||||
|
||||
Dim TieneErrorExistencia As Boolean = False
|
||||
|
||||
For Each GvRow As GridViewRow In GvDatosArmado.Rows
|
||||
|
||||
FechaCaducidad = If(CBool(GvRow.DataKey("AplicaCaducidad")) AndAlso GvRow.FCTextBox("TxtCaducidad").ToString().ToDate > MinFecha, GvRow.FCTextBox("TxtCaducidad").Text.ToDate, MinFecha)
|
||||
Lote = If(CBool(GvRow.DataKey("AplicaLote")), GvRow.FCTextBox("TxtLote").Text.Trim, "-1")
|
||||
|
||||
Dim Existencia As Decimal = ObjInventarioVal.GetExistenciasPS(GvRow.DataKey("CvePS").ToEntero, GvRow.DataKey("CveUM").ToEntero, UsuarioActual.CveEmpresa, CveAlmacen:=DdlAlmacenArmado.SelectedValue.ToEntero(), FechaMovto:=TxtFechaArmado.Text.ToDateTime.ToString("yyyy/MM/dd HH:mm"), Serie:="-1", Lote:=Lote, FechaCaducidad:=FechaCaducidad)
|
||||
|
||||
|
||||
If GvRow.DataKey("Cantidad").ToDecimal > Existencia Then
|
||||
TieneErrorExistencia = True
|
||||
|
||||
TextoError.AppendFormat("<b> - {0}</b> Existencia: {1:#,##0.##} <br/>", GvRow.DataKey("CodigoPS"), Existencia)
|
||||
|
||||
End If
|
||||
|
||||
''If Dr("CantidadGV").ToString().ToDecimal > 0 Then
|
||||
'If CBool(GvRow.DataKey("AplicaSerie")) Then
|
||||
' Alert("Aplica serie ")
|
||||
' TieneErrorExistencia = True
|
||||
' ' StrXML.AppendFormat("<concepto CvePS=""{0}"" CveUM=""{1}"" Cantidad= ""{2}"" CveSeccionAlmacen=""{3}"" Serie=""{4}"" Lote=""{5}"" FechaCaducidad=""{6}""></concepto>", GvRow.DataKey("CvePS"), GvRow.DataKey("CveUM"), 1, IfNull(Dr("CveSeccion"), -1), Dr1("Serie"), Lote, FechaCaducidad.ToString("yyyy/MM/dd"))
|
||||
|
||||
'Else
|
||||
' StrXML.AppendFormat("<concepto CvePS=""{0}"" CveUM=""{1}"" Cantidad= ""{2}"" CveSeccionAlmacen=""{3}"" Serie=""{4}"" Lote=""{5}"" FechaCaducidad=""{6}""></concepto>", GvRow.DataKey("CvePS"), GvRow.DataKey("CveUM"), GvRow.DataKey("Cantidad"), -1, "-1", Lote, FechaCaducidad.ToString("yyyy/MM/dd"))
|
||||
'End If
|
||||
|
||||
'End If
|
||||
Next
|
||||
|
||||
'For Each Dr As DataRow In DtDatos.Rows
|
||||
' FechaCaducidad = If(CBool(Dr("AplicaCaducidad")) AndAlso Dr("FechaCaducidad").ToString() <> "", Dr("FechaCaducidad").ToString().ToDate, MinFecha)
|
||||
' Lote = If(CBool(Dr("AplicaLote")), Dr("Lote").ToString().Trim, "-1")
|
||||
|
||||
' If Dr("CantidadGV").ToString().ToDecimal > 0 Then
|
||||
' If CBool(Dr("AplicaSerie")) Then
|
||||
' DtDetalle = DtDatosDetalle.FiltraParametros(String.Format("ConsecId = {0}", Dr("Consec")))
|
||||
' For Each Dr1 As DataRow In DtDetalle.Rows
|
||||
' StrXML.AppendFormat("<concepto CvePS=""{0}"" CveUM=""{1}"" Cantidad= ""{2}"" CveSeccionAlmacen=""{3}"" Serie=""{4}"" Lote=""{5}"" FechaCaducidad=""{6}""></concepto>", Dr1("CvePS"), Dr1("CveUM"), 1, IfNull(Dr("CveSeccion"), -1), Dr1("Serie"), Lote, FechaCaducidad.ToString("yyyy/MM/dd"))
|
||||
' Next
|
||||
' Else
|
||||
' StrXML.AppendFormat("<concepto CvePS=""{0}"" CveUM=""{1}"" Cantidad= ""{2}"" CveSeccionAlmacen=""{3}"" Serie=""{4}"" Lote=""{5}"" FechaCaducidad=""{6}""></concepto>", Dr("CvePS"), Dr("CveUM"), Dr("CantidadGV"), IfNull(Dr("CveSeccion"), -1), "-1", Lote, FechaCaducidad.ToString("yyyy/MM/dd"))
|
||||
' End If
|
||||
' End If
|
||||
'Next
|
||||
|
||||
'StrXML.Append("</conceptos>")
|
||||
|
||||
|
||||
'If ObjInventarioVal.GetExistenciasPSXML(StrXML.ToString(), DdlAlmacenArmado.SelectedValue.ToEntero(), TxtFechaArmado.Text.ToDateTime.ToString("yyyy/MM/dd HH:mm"), -1, CveVendedor, If(UsuarioActual.Empresa.Funcionalidad(146) = "1", -1, CveCliente), If(Tipo = 2, 1, -1), UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa) Then
|
||||
' If ObjInventarioVal.DtResultados.Rows.Count > 0 Then
|
||||
' TieneErrorExistencia = True
|
||||
' For Each Dr As DataRow In ObjInventarioVal.DtResultados.Rows
|
||||
' TextoError.AppendFormat("<b> - {0}</b> Existencia: {1:#,##0.##} <br/>", Dr("CodigoPS"), Dr("Existencia"))
|
||||
' Next
|
||||
' End If
|
||||
'Else
|
||||
' TieneErrorExistencia = True
|
||||
'End If
|
||||
|
||||
If TieneErrorExistencia Then
|
||||
'ObjInventarioVal.RollBack()
|
||||
ObjInventarioVal.Dispose()
|
||||
|
||||
If TextoError.Length > 0 Then
|
||||
Alert($" Lo(s) siguiente(s) Productos <b>no tienen</b> existencia suficiente:<br/><br/>{TextoError}", TipoMensaje.MsgAdvertencia)
|
||||
End If
|
||||
RegistraScript("playsonidito('142608__autistic-lucario__error.wav')")
|
||||
Exit Sub
|
||||
End If
|
||||
|
||||
End If
|
||||
|
||||
|
||||
Exit Sub
|
||||
|
||||
|
||||
Dim ObjInventario As New ClsInventarios
|
||||
Dim ObjConta As New ClsContabilidad(ObjInventario.IniciaTransacSQL())
|
||||
|
||||
@@ -832,20 +949,25 @@ Partial Class Inventarios_PaquetesArmadoDesarmado
|
||||
CargaSeccionesAlmacen(e.Row.FCDropDownList("DdlSeccionAlmacen"), DdlAlmacenArmado.SelectedValue.ToEntero, e.Row.DBCampo("CvePS").ToEntero, UsuarioActual.CveEmpresa)
|
||||
End If
|
||||
|
||||
|
||||
Dim DvFechaCaducidad As HtmlGenericControl = TryCast(e.Row.FindControl("DvFechaCaducidad"), HtmlGenericControl)
|
||||
|
||||
If e.Row.DataKey("AplicaCaducidad") = "True" Then
|
||||
e.Row.FCTextBox("TxtCaducidad").Visible = True
|
||||
e.Row.FCLinkButton("LnkCaducidad").Visible = True
|
||||
'e.Row.FCTextBox("TxtCaducidad").Visible = True
|
||||
'e.Row.FCLinkButton("LnkCaducidad").Visible = True
|
||||
|
||||
e.Row.FCTextBox("TxtCaducidad").ReadOnly = False
|
||||
CType(e.Row.FindControl("RFVCaducidad"), RequiredFieldValidator).Enabled = True
|
||||
e.Row.FCTextBox("TxtCaducidad").Enabled = True
|
||||
'e.Row.FCTextBox("TxtCaducidad").ReadOnly = False
|
||||
''CType(e.Row.FindControl("RFVCaducidad"), RequiredFieldValidator).Enabled = True
|
||||
'e.Row.FCTextBox("TxtCaducidad").Enabled = True
|
||||
DvFechaCaducidad.Visible = True
|
||||
Else
|
||||
e.Row.FCTextBox("TxtCaducidad").Visible = False
|
||||
e.Row.FCLinkButton("LnkCaducidad").Visible = False
|
||||
e.Row.FCTextBox("TxtCaducidad").Enabled = True
|
||||
'e.Row.FCTextBox("TxtCaducidad").Visible = False
|
||||
'e.Row.FCLinkButton("LnkCaducidad").Visible = False
|
||||
'e.Row.FCTextBox("TxtCaducidad").Enabled = True
|
||||
|
||||
e.Row.FCTextBox("TxtCaducidad").ReadOnly = True
|
||||
CType(e.Row.FindControl("RFVCaducidad"), RequiredFieldValidator).Enabled = False
|
||||
'e.Row.FCTextBox("TxtCaducidad").ReadOnly = True
|
||||
''CType(e.Row.FindControl("RFVCaducidad"), RequiredFieldValidator).Enabled = False
|
||||
DvFechaCaducidad.Visible = False
|
||||
End If
|
||||
|
||||
e.Row.FCTextBox("TxtLote").Visible = e.Row.DataKey("AplicaLote") = "True"
|
||||
@@ -855,8 +977,120 @@ Partial Class Inventarios_PaquetesArmadoDesarmado
|
||||
' e.Row.FCTextBox("TbCantidadF").Enabled = False
|
||||
'End If
|
||||
|
||||
e.Row.FCButton("BtnDividir").Attributes.Add("onclick", String.Format("Dividir('{0}');", e.Row.FCTextBox("TxtDividir").ClientID))
|
||||
e.Row.FCButton("BtnDividir").CommandArgument = e.Row.RowIndex.ToString()
|
||||
e.Row.FCTextBox("TxtDividir").Attributes.Add("onkeyup", String.Format("LimitaCantidad({0},this,'{1}');", e.Row.DBCampo("Cantidad"), e.Row.FCButton("BtnDividir").ClientID))
|
||||
|
||||
End If
|
||||
End Sub
|
||||
|
||||
|
||||
Protected Sub Dividir(sender As Object, e As EventArgs)
|
||||
Dim index2 As Integer = 0
|
||||
|
||||
If Not DtDatosArmado.Columns.Contains("Lote") Then
|
||||
DtDatosArmado.Columns.Add("Lote", GetType(String))
|
||||
End If
|
||||
|
||||
If Not DtDatosArmado.Columns.Contains("CveSeccion") Then
|
||||
DtDatosArmado.Columns.Add("CveSeccion", GetType(Integer))
|
||||
End If
|
||||
|
||||
If Not DtDatosArmado.Columns.Contains("FechaCaducidad") Then
|
||||
DtDatosArmado.Columns.Add("FechaCaducidad", GetType(String))
|
||||
End If
|
||||
|
||||
DtDatosArmado.AcceptChanges()
|
||||
|
||||
For Each Row As DataRow In DtDatosArmado.Rows
|
||||
|
||||
|
||||
Row("Lote") = GvDatosArmado.Rows(index2).FCTextBox("TxtLote").Text
|
||||
'End If
|
||||
'If GvDatosArmado.Rows(index2).FCDropDownList("DdlSeccionAlmacen").SelectedValue <> "-1" Then
|
||||
Row("CveSeccion") = GvDatosArmado.Rows(index2).FCDropDownList("DdlSeccionAlmacen").SelectedValue.ToEntero()
|
||||
' End If
|
||||
'If GvDatosArmado.Rows(index2).FCTextBox("TxtCaducidad").Text <> "" Then
|
||||
Row("FechaCaducidad") = GvDatosArmado.Rows(index2).FCTextBox("TxtCaducidad").Text
|
||||
'End If
|
||||
index2 += 1
|
||||
Next
|
||||
|
||||
DtDatosArmado.AcceptChanges()
|
||||
|
||||
Dim gvRow As GridViewRow = DirectCast((DirectCast(sender, Button)).NamingContainer, GridViewRow)
|
||||
Dim Index As Integer = gvRow.RowIndex
|
||||
Dim Cantidad As String = HdnCantidadMovimiento.Value
|
||||
Dim drOriginal As DataRow = DtDatosArmado.Rows(Index)
|
||||
Dim drNew As DataRow = DtDatosArmado.NewRow
|
||||
|
||||
drNew.ItemArray = drOriginal.ItemArray
|
||||
|
||||
drOriginal("Cantidad") = (drOriginal("Cantidad").ToString().ToDouble - Cantidad.ToDouble)
|
||||
|
||||
'Dim CantidadFOriginal As Double = drOriginal("CantidadF").ToString().ToDouble
|
||||
'drOriginal("CantidadF") = (drOriginal("CantidadF").ToString().ToDouble - Cantidad.ToDouble)
|
||||
|
||||
'Dim CantidadSOriginal As Double = drOriginal("CantidadS").ToString().ToDouble
|
||||
'drOriginal("CantidadS") = (CantidadSOriginal * drOriginal("CantidadF").ToString().ToDouble) / CantidadFOriginal
|
||||
|
||||
'Dim CantidadSeleccionadaOriginal As Double = drOriginal("CantidadSeleccionada").ToString().ToDouble
|
||||
'drOriginal("CantidadSeleccionada") = If(CantidadSeleccionadaOriginal > drOriginal("CantidadF").ToString().ToDouble, drOriginal("CantidadF").ToString().ToDouble, CantidadSeleccionadaOriginal)
|
||||
|
||||
'CantidadSeleccionadaOriginal = CantidadSeleccionadaOriginal - drOriginal("CantidadF").ToString().ToDouble
|
||||
|
||||
'Dim CostoIndirectoOriginal As Double = dr1("CostoIndirecto").ToString().ToDouble
|
||||
'dr1("CostoIndirecto") = (CostoIndirectoOriginal * dr1("CantidadF").ToString().ToDouble) / CantidadFOriginal
|
||||
'Dim CostoIndirectoExtranjeroOriginal As Double = dr1("CostoIndirectoExtranjero").ToString().ToDouble
|
||||
'dr1("CostoIndirectoExtranjero") = (CostoIndirectoExtranjeroOriginal * dr1("CantidadF").ToString().ToDouble) / CantidadFOriginal
|
||||
|
||||
DtDatosArmado.AcceptChanges()
|
||||
|
||||
drNew("Cantidad") = Cantidad.ToDecimal
|
||||
'drNew("CantidadF") = Cantidad.ToDouble
|
||||
'drNew("CantidadS") = (CantidadSOriginal * drNew("CantidadF").ToString().ToDouble) / CantidadFOriginal
|
||||
'drNew("CantidadSeleccionada") = If(CantidadSeleccionadaOriginal > 0, CantidadSeleccionadaOriginal, 0)
|
||||
'drNew("Seleccionado") = If(CantidadSeleccionadaOriginal > 0, True, False)
|
||||
'dr("CostoIndirecto") = (CostoIndirectoOriginal * dr("CantidadF").ToString().ToDouble) / CantidadFOriginal
|
||||
'dr("CostoIndirectoExtranjero") = (CostoIndirectoExtranjeroOriginal * dr("CantidadF").ToString().ToDouble) / CantidadFOriginal
|
||||
DtDatosArmado.Rows.InsertAt(drNew, Index)
|
||||
DtDatosArmado.AcceptChanges()
|
||||
|
||||
index2 = 1
|
||||
For Each Row As DataRow In DtDatosArmado.Rows
|
||||
Row("Consec") = index2
|
||||
index2 += 1
|
||||
Next
|
||||
DtDatosArmado.AcceptChanges()
|
||||
|
||||
|
||||
GvDatosArmado.DataSource = DtDatosArmado
|
||||
GvDatosArmado.DataBind()
|
||||
|
||||
|
||||
index2 = 0
|
||||
For Each Row As DataRow In DtDatosArmado.Rows
|
||||
'GvDatosArmado.Rows(index2).FCCheckBox("cbInv").Checked = CBool(Row("Seleccionado"))
|
||||
'If Row("CantidadSeleccionada").ToString() <> "" Then
|
||||
' GvDatosArmado.Rows(index2).FCTextBox("TbCantidadF").Text = Row("CantidadSeleccionada").ToString()
|
||||
'End If
|
||||
If Row("Lote").ToString() <> "" Then
|
||||
GvDatosArmado.Rows(index2).FCTextBox("TxtLote").Text = Row("Lote").ToString()
|
||||
End If
|
||||
If Row("CveSeccion").ToString() <> "" Then
|
||||
GvDatosArmado.Rows(index2).FCDropDownList("DdlSeccionAlmacen").SelectedValue = Row("CveSeccion").ToString()
|
||||
End If
|
||||
If Row("FechaCaducidad").ToString() <> "" Then
|
||||
GvDatosArmado.Rows(index2).FCTextBox("TxtCaducidad").Text = Row("FechaCaducidad").ToString().ToDate.ToShortDateString
|
||||
End If
|
||||
index2 += 1
|
||||
Next
|
||||
|
||||
UpDatosArmado.Update()
|
||||
|
||||
End Sub
|
||||
|
||||
|
||||
#End Region
|
||||
|
||||
#Region " GV DESARMADO "
|
||||
@@ -875,27 +1109,132 @@ Partial Class Inventarios_PaquetesArmadoDesarmado
|
||||
CargaSeccionesAlmacen(e.Row.FCDropDownList("DdlSeccionAlmacen"), DdlAlmacenDesarmado.SelectedValue.ToEntero, e.Row.DBCampo("CvePS").ToEntero, UsuarioActual.CveEmpresa)
|
||||
End If
|
||||
|
||||
Dim DvFechaCaducidad As HtmlGenericControl = TryCast(e.Row.FindControl("DvFechaCaducidad"), HtmlGenericControl)
|
||||
|
||||
If e.Row.DataKey("AplicaCaducidad") = "True" Then
|
||||
e.Row.FCTextBox("TxtCaducidad").Visible = True
|
||||
e.Row.FCLinkButton("LnkCaducidad").Visible = True
|
||||
'e.Row.FCTextBox("TxtCaducidad").Visible = True
|
||||
'e.Row.FCLinkButton("LnkCaducidad").Visible = True
|
||||
|
||||
e.Row.FCTextBox("TxtCaducidad").ReadOnly = False
|
||||
CType(e.Row.FindControl("RFVCaducidad"), RequiredFieldValidator).Enabled = True
|
||||
e.Row.FCTextBox("TxtCaducidad").Enabled = True
|
||||
'e.Row.FCTextBox("TxtCaducidad").ReadOnly = False
|
||||
''CType(e.Row.FindControl("RFVCaducidad"), RequiredFieldValidator).Enabled = True
|
||||
'e.Row.FCTextBox("TxtCaducidad").Enabled = True
|
||||
DvFechaCaducidad.Visible = True
|
||||
Else
|
||||
e.Row.FCTextBox("TxtCaducidad").Visible = False
|
||||
e.Row.FCLinkButton("LnkCaducidad").Visible = False
|
||||
e.Row.FCTextBox("TxtCaducidad").Enabled = True
|
||||
'e.Row.FCTextBox("TxtCaducidad").Visible = False
|
||||
'e.Row.FCLinkButton("LnkCaducidad").Visible = False
|
||||
'e.Row.FCTextBox("TxtCaducidad").Enabled = True
|
||||
|
||||
e.Row.FCTextBox("TxtCaducidad").ReadOnly = True
|
||||
CType(e.Row.FindControl("RFVCaducidad"), RequiredFieldValidator).Enabled = False
|
||||
'e.Row.FCTextBox("TxtCaducidad").ReadOnly = True
|
||||
''CType(e.Row.FindControl("RFVCaducidad"), RequiredFieldValidator).Enabled = False
|
||||
DvFechaCaducidad.Visible = False
|
||||
End If
|
||||
|
||||
|
||||
|
||||
'If e.Row.DataKey("AplicaCaducidad") = "True" Then
|
||||
' e.Row.FCTextBox("TxtCaducidad").Visible = True
|
||||
' e.Row.FCLinkButton("LnkCaducidad").Visible = True
|
||||
|
||||
' e.Row.FCTextBox("TxtCaducidad").ReadOnly = False
|
||||
' CType(e.Row.FindControl("RFVCaducidad"), RequiredFieldValidator).Enabled = True
|
||||
' e.Row.FCTextBox("TxtCaducidad").Enabled = True
|
||||
'Else
|
||||
' e.Row.FCTextBox("TxtCaducidad").Visible = False
|
||||
' e.Row.FCLinkButton("LnkCaducidad").Visible = False
|
||||
' e.Row.FCTextBox("TxtCaducidad").Enabled = True
|
||||
|
||||
' e.Row.FCTextBox("TxtCaducidad").ReadOnly = True
|
||||
' CType(e.Row.FindControl("RFVCaducidad"), RequiredFieldValidator).Enabled = False
|
||||
'End If
|
||||
|
||||
e.Row.FCTextBox("TxtLote").Visible = e.Row.DataKey("AplicaLote") = "True"
|
||||
|
||||
e.Row.FCTextBox("TxtCosto").Attributes.Add("onkeyup", "SumaValores();")
|
||||
|
||||
|
||||
e.Row.FCButton("BtnDividir").Attributes.Add("onclick", String.Format("Dividir('{0}');", e.Row.FCTextBox("TxtDividir").ClientID))
|
||||
e.Row.FCButton("BtnDividir").CommandArgument = e.Row.RowIndex.ToString()
|
||||
e.Row.FCTextBox("TxtDividir").Attributes.Add("onkeyup", String.Format("LimitaCantidad({0},this,'{1}');", e.Row.DBCampo("Cantidad"), e.Row.FCButton("BtnDividir").ClientID))
|
||||
|
||||
End If
|
||||
End Sub
|
||||
|
||||
|
||||
Protected Sub DividirDesarmado(sender As Object, e As EventArgs)
|
||||
Dim index2 As Integer = 0
|
||||
|
||||
If Not DtDatosDesArmado.Columns.Contains("Lote") Then
|
||||
DtDatosDesArmado.Columns.Add("Lote", GetType(String))
|
||||
End If
|
||||
|
||||
If Not DtDatosDesArmado.Columns.Contains("CveSeccion") Then
|
||||
DtDatosDesArmado.Columns.Add("CveSeccion", GetType(Integer))
|
||||
End If
|
||||
|
||||
If Not DtDatosDesArmado.Columns.Contains("FechaCaducidad") Then
|
||||
DtDatosDesArmado.Columns.Add("FechaCaducidad", GetType(String))
|
||||
End If
|
||||
|
||||
DtDatosDesArmado.AcceptChanges()
|
||||
|
||||
For Each Row As DataRow In DtDatosDesArmado.Rows
|
||||
Row("Lote") = GvDatosDesarmado.Rows(index2).FCTextBox("TxtLote").Text
|
||||
Row("CveSeccion") = GvDatosDesarmado.Rows(index2).FCDropDownList("DdlSeccionAlmacen").SelectedValue.ToEntero()
|
||||
Row("FechaCaducidad") = GvDatosDesarmado.Rows(index2).FCTextBox("TxtCaducidad").Text
|
||||
index2 += 1
|
||||
Next
|
||||
|
||||
DtDatosDesArmado.AcceptChanges()
|
||||
|
||||
Dim gvRow As GridViewRow = DirectCast((DirectCast(sender, Button)).NamingContainer, GridViewRow)
|
||||
Dim Index As Integer = gvRow.RowIndex
|
||||
Dim Cantidad As String = HdnCantidadMovimiento.Value
|
||||
Dim drOriginal As DataRow = DtDatosDesArmado.Rows(Index)
|
||||
Dim drNew As DataRow = DtDatosDesArmado.NewRow
|
||||
|
||||
drNew.ItemArray = drOriginal.ItemArray
|
||||
|
||||
drOriginal("Cantidad") = (drOriginal("Cantidad").ToString().ToDouble - Cantidad.ToDouble)
|
||||
|
||||
|
||||
|
||||
DtDatosDesArmado.AcceptChanges()
|
||||
|
||||
drNew("Cantidad") = Cantidad.ToDecimal
|
||||
|
||||
DtDatosDesArmado.Rows.InsertAt(drNew, Index)
|
||||
DtDatosDesArmado.AcceptChanges()
|
||||
|
||||
index2 = 1
|
||||
For Each Row As DataRow In DtDatosDesArmado.Rows
|
||||
Row("Consec") = index2
|
||||
index2 += 1
|
||||
Next
|
||||
DtDatosDesArmado.AcceptChanges()
|
||||
|
||||
|
||||
GvDatosDesarmado.DataSource = DtDatosDesArmado
|
||||
GvDatosDesarmado.DataBind()
|
||||
|
||||
|
||||
index2 = 0
|
||||
For Each Row As DataRow In DtDatosDesArmado.Rows
|
||||
|
||||
If Row("Lote").ToString() <> "" Then
|
||||
GvDatosDesarmado.Rows(index2).FCTextBox("TxtLote").Text = Row("Lote").ToString()
|
||||
End If
|
||||
If Row("CveSeccion").ToString() <> "" Then
|
||||
GvDatosDesarmado.Rows(index2).FCDropDownList("DdlSeccionAlmacen").SelectedValue = Row("CveSeccion").ToString()
|
||||
End If
|
||||
If Row("FechaCaducidad").ToString() <> "" Then
|
||||
GvDatosDesarmado.Rows(index2).FCTextBox("TxtCaducidad").Text = Row("FechaCaducidad").ToString().ToDate.ToShortDateString
|
||||
End If
|
||||
index2 += 1
|
||||
Next
|
||||
|
||||
UpDatosDesarmado.Update()
|
||||
|
||||
End Sub
|
||||
#End Region
|
||||
|
||||
#Region " SERIE LOTE "
|
||||
|
||||
Reference in New Issue
Block a user