--NuevaColumna en PS. NumeroParte
En ventas.aspx: --poner por default, cantidad 1. --especificar el cliente, publico general por defecto, RFC XAXX010101000 --poner focus en producto con ya con funcionalidad de escritura --quitar txtdescripción, y usar AtenciónA --bug. al clonar y cuando se tiene activada la lista de precio, marca error ( Ener Elec)
This commit is contained in:
@@ -216,7 +216,15 @@
|
||||
</ItemTemplate>
|
||||
</asp:TemplateField>
|
||||
<asp:BoundField DataField="Codigo" ItemStyle-Width="5%" HeaderText="Código" />
|
||||
<asp:BoundField DataField="Codigo2" ItemStyle-Width="5%" HeaderText="Código CPK" Visible="false" />
|
||||
<%--<asp:BoundField DataField="Codigo2" ItemStyle-Width="5%" HeaderText="Código CPK"/>--%>
|
||||
<asp:TemplateField ItemStyle-Width="5%" Visible="false" >
|
||||
<HeaderTemplate>
|
||||
<asp:Literal ID="LtlCodigo2" runat="server" Text='<%# If(UsuarioActual.Empresa.Funcionalidad(531) = "1", "Código CPK", "Numero de parte") %>'></asp:Literal>
|
||||
</HeaderTemplate>
|
||||
<ItemTemplate>
|
||||
<asp:Literal ID="LtlCodigo2" runat="server" Text='<%# Eval("Codigo2", "{0}")%>'></asp:Literal>
|
||||
</ItemTemplate>
|
||||
</asp:TemplateField>
|
||||
<asp:BoundField DataField="PS" HeaderText="Producto/Servicio" />
|
||||
<asp:BoundField DataField="Clasificacion" ItemStyle-Width="15%" HeaderText="Clasificación" />
|
||||
<asp:BoundField DataField="PrecioLista" NullDisplayText="N/A" ItemStyle-Width="10%" HeaderText="Importe" DataFormatString="$ {0:N2}" ItemStyle-HorizontalAlign="right" />
|
||||
|
||||
@@ -436,11 +436,16 @@ Partial Class Ventas_ActualizarPrecios
|
||||
|
||||
DtExcel.Columns("Codigo").ColumnName = "Código"
|
||||
DtExcel.Columns("PS").ColumnName = "Producto / Servicio"
|
||||
If UsuarioActual.Empresa.Funcionalidad(531) = "1" Then 'Empresa Acumuladores
|
||||
DtExcel.Columns("Codigo2").ColumnName = "Código CPK"
|
||||
DtExcel.Columns("Codigo2").ColumnName = "Número de parte"
|
||||
|
||||
If UsuarioActual.Empresa.Funcionalidad(531) = "1" OrElse UsuarioActual.Empresa.Funcionalidad(578) = "1" Then 'Empresa Acumuladores
|
||||
If UsuarioActual.Empresa.Funcionalidad(531) = "1" Then
|
||||
DtExcel.Columns("Número de parte").ColumnName = "Código CPK"
|
||||
End If
|
||||
Else
|
||||
DtExcel.Columns.Remove("Codigo2")
|
||||
DtExcel.Columns.Remove("Número de parte")
|
||||
End If
|
||||
|
||||
SpreadsheetInfo.SetLicense(ModExtensiones.SerialGemBoxSpreadsheet)
|
||||
|
||||
Dim FileExcel As New ExcelFile()
|
||||
@@ -504,7 +509,16 @@ Partial Class Ventas_ActualizarPrecios
|
||||
'SI ES EMPRESA DE ACUMULADORES SE AGREGA LA COLUMNA "Código CPK"
|
||||
If UsuarioActual.Empresa.Funcionalidad(531) = "1" Then
|
||||
If Not dt.Columns(IndiceActualColExcel).ColumnName = "Código CPK" Then
|
||||
Alert("El nombre de la segunda columna debe ser 'Precio'. Favor de corregirlo", TipoMensaje.MsgError)
|
||||
Alert("El nombre de la segunda columna debe ser 'Código CPK'. Favor de corregirlo", TipoMensaje.MsgError)
|
||||
Exit Sub
|
||||
End If
|
||||
|
||||
IndiceActualColExcel += 1
|
||||
End If
|
||||
|
||||
If UsuarioActual.Empresa.Funcionalidad(578) = "1" Then
|
||||
If Not dt.Columns(IndiceActualColExcel).ColumnName = "Número de parte" Then
|
||||
Alert("El nombre de la segunda columna debe ser 'Número de parte'. Favor de corregirlo", TipoMensaje.MsgError)
|
||||
Exit Sub
|
||||
End If
|
||||
|
||||
@@ -641,6 +655,10 @@ Partial Class Ventas_ActualizarPrecios
|
||||
DtExcel.Columns.Add(New DataColumn("Código CPK", GetType(String)))
|
||||
End If
|
||||
|
||||
If UsuarioActual.Empresa.Funcionalidad(578) = "1" Then 'Empresa Acumuladores
|
||||
DtExcel.Columns.Add(New DataColumn("Número de parte", GetType(String)))
|
||||
End If
|
||||
|
||||
DtExcel.Columns.Add(New DataColumn("Producto/Servicio", GetType(String)))
|
||||
DtExcel.Columns.Add(New DataColumn("Clasificación", GetType(String)))
|
||||
DtExcel.Columns.Add(New DataColumn("Importe", GetType(Decimal)))
|
||||
|
||||
@@ -105,17 +105,17 @@
|
||||
<label class="truncate" style="padding-left: 16px;" for="<%= TxtCodigo.ClientID.ToString()%>">Número de Parte / Código:</label>
|
||||
<i></i>
|
||||
</div>
|
||||
|
||||
<div class="form-group form-md-line-input input-iconright col-xs-4">
|
||||
<asp:TextBox ID="TxtNumeroParte" CssClass="form-control " runat="server" MaxLength="50" ></asp:TextBox>
|
||||
<label class="truncate" style="padding-left: 16px;" for="<%= TxtNumeroParte.ClientID.ToString()%>"><asp:Literal ID="LtlNumberParte" runat="server" Text="Código CPK"></asp:Literal>:</label>
|
||||
<i></i>
|
||||
</div>
|
||||
<div class="form-group form-md-line-input input-iconright col-xs-4">
|
||||
<asp:TextBox ID="TxtCodigoBarras" CssClass="form-control " runat="server" MaxLength="50"></asp:TextBox>
|
||||
<label class="truncate" style="padding-left: 16px;" for="<%= TxtCodigoBarras.ClientID.ToString()%>">Código Barras:</label>
|
||||
<i></i>
|
||||
</div>
|
||||
<div class="form-group form-md-line-input input-iconright col-xs-4" id="divCodigo2" runat="server" visible ="false">
|
||||
<asp:TextBox ID="TxtCodigo2" CssClass="form-control " runat="server" MaxLength="50" ></asp:TextBox>
|
||||
<label class="truncate" style="padding-left: 16px;" for="<%= TxtCodigo2.ClientID.ToString()%>">Código CPK:</label>
|
||||
<i></i>
|
||||
</div>
|
||||
|
||||
|
||||
<%--<div class="form-group form-md-line-input input-iconright col-xs-1">
|
||||
<asp:LinkButton ID="LnkModalCodigoBarrasQr" runat="server">
|
||||
|
||||
@@ -376,15 +376,20 @@ Partial Class ProductosyServicios
|
||||
|
||||
If UsuarioActual.Empresa.Funcionalidad(531) = "1" Then
|
||||
DivPSAdicionalVigencia.Visible = True
|
||||
divCodigo2.Visible = True
|
||||
divLitraje.Visible = True
|
||||
DivClasificacion2.Visible = True
|
||||
CargaPSAdicionalesVigencias()
|
||||
|
||||
DdlTamanio.DataSource = GlobalDTAcumTamaños(UsuarioActual.CveEmpresa)
|
||||
DdlTamanio.DataBind()
|
||||
|
||||
LtlNumberParte.Text = "Código CPK"
|
||||
Else
|
||||
LtlNumberParte.Text = "Número de parte"
|
||||
End If
|
||||
|
||||
|
||||
|
||||
divPrecio.Visible = UsuarioActual.Empresa.Funcionalidad(404) = "" ' si tiene lista de precio, se oculta el precio por ps
|
||||
|
||||
If UsuarioActual.CveEmpresa = 1 Then
|
||||
@@ -943,7 +948,7 @@ Partial Class ProductosyServicios
|
||||
DdlMarca.SelectedValue = ObjProductosServicios.CveMarca.ToString
|
||||
DdlMarcaPSDes.SelectedValue = ObjProductosServicios.CveMarca.ToString
|
||||
TxtCodigo.Text = ObjProductosServicios.Codigo
|
||||
TxtCodigo2.Text = ObjProductosServicios.Codigo2
|
||||
TxtNumeroParte.Text = ObjProductosServicios.Codigo2
|
||||
TxtCodigoBarras.Text = ObjProductosServicios.CodigoBarras
|
||||
CodigoBarrasCargado = ObjProductosServicios.CodigoBarras
|
||||
TxtLitraje.Text = ObjProductosServicios.DtResultados.Rows(0)("Litraje").ToString
|
||||
@@ -1567,7 +1572,7 @@ Partial Class ProductosyServicios
|
||||
Dim PSS As String = TxtPS.Text.Trim.Replace("|", "")
|
||||
If UsuarioActual.CveEmpresa.Contiene(1, 72, 80) Then PSS = PSS.ToUpper
|
||||
|
||||
If ObjProductosServicios.UpdatePS(DdlClasificacion.SelectedValue.ToEntero, -1, DdlUnidadMedida.SelectedValue.ToEntero, TxtCodigo.Text.Trim, TxtCodigo2.Text.Trim, TxtCodigoBarras.Text.Trim, PSS,
|
||||
If ObjProductosServicios.UpdatePS(DdlClasificacion.SelectedValue.ToEntero, -1, DdlUnidadMedida.SelectedValue.ToEntero, TxtCodigo.Text.Trim, TxtNumeroParte.Text.Trim, TxtCodigoBarras.Text.Trim, PSS,
|
||||
TxtPrecio.Text.Trim.ToDouble, DdlIVA.SelectedValue.ToDouble, (TxtRetIVA.Text.Trim.ToDouble / 100), ChkInventariable.Checked, CveProveedor, True,
|
||||
ChkAplicaParaVenta.Checked, ChkEstado.Checked, UsuarioActual.CveUsuario, CvePS, CveMetodoInv, EsPaquete, DdlSATPS.SelectedValue.ToEntero, UsuarioActual.CveEmpresa,
|
||||
CveTipoPS:=DdlTipoPS.SelectedValue.ToEntero, TipoServicio:=-1, CveClasificacion2:=CveClasificacion2, CveMarca:=CveMarca, AlmacenSeccion:=TxtAlmacenSeccion.Text.Trim,
|
||||
|
||||
@@ -381,7 +381,7 @@
|
||||
<asp:LinkButton ID="LnkCancelarSoloCFDI" Visible="false" runat="server" data-toggle="confirmation" data-popout="true" data-original-title="¿Seguro que desea cancelar el CFDI?" data-btn-ok-label="si" OnClick="LnkCancelarSoloCFDI_Click"><i class="fa fa-plus"></i>Cancelar solo CFDI</asp:LinkButton>
|
||||
</li>--%>
|
||||
|
||||
<li>
|
||||
<li>
|
||||
<asp:HyperLink ID="HLFAgregarOS" Target="_blank" runat="server" Visible="false"> <i class="fa fa-plus"></i> Agregar Orden de Servicio</asp:HyperLink>
|
||||
</li>
|
||||
</ContentTemplate>
|
||||
@@ -1159,7 +1159,7 @@
|
||||
<%--</asp:Panel>--%>
|
||||
|
||||
<asp:GridView ID="GvPS" GridLines="None" runat="server" data-tableheader="#tbps" ShowHeader="true" AutoGenerateColumns="False"
|
||||
DataKeyNames="Consec,CvePS,Total, IEPS, CveClasificacion,CveUM,CveProyecto,CveSubProyecto,TipoDocto,PS,Obs,Cantidad,PU,Descuento,IVA,CantidadInventario,CantidadFacturadaRem,CveVentaDetalle,CvePromocionDetalle"
|
||||
DataKeyNames="Consec,CvePS,Total, IEPS, CveClasificacion,Clasificacion,CveUM,UM,CveProyecto,CveSubProyecto,TipoDocto,PS,Obs,Cantidad,PU,Descuento,IVA,CantidadInventario,CantidadFacturadaRem,CveVentaDetalle,CvePromocionDetalle"
|
||||
CssClass="table table-striped table-advance table-hover Widthall Sortable mysmallbtn ScrollAD" Style="min-width: 980px;">
|
||||
<Columns>
|
||||
<%--0--%>
|
||||
@@ -8518,6 +8518,34 @@
|
||||
<script src="/Metronic/assets/global/scripts/jquery-sortable.js"></script>
|
||||
<script type="text/javascript">
|
||||
|
||||
function pageLoad()
|
||||
{
|
||||
//ABRIR EL DROPDOWN DE PS DESPUES DE ASIGNAR CANTIDAD
|
||||
if ('<%= UsuarioActual.Empresa.Funcionalidad(109) %>' == '1') {
|
||||
$('#TxtCantidad').on('keydown', function (e) {
|
||||
if (e.which == 13 || e.which == 9 ) {
|
||||
let valorNumericoCantidad = parseFloat($('#TxtCantidad').val());
|
||||
e.preventDefault();
|
||||
if(valorNumericoCantidad > 0){
|
||||
$('#C_Tab_TabGenerales_DdlPS > select').select2('open').next().find(':input.select2-search__field').focus();
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
});
|
||||
|
||||
$('#TxtPrecio').on('keydown', function (e) {
|
||||
if (e.which == 13 || e.which == 9 ) {
|
||||
let valorNumericoPrecio = parseFloat($('#TxtCantidad').val());
|
||||
e.preventDefault();
|
||||
if(valorNumericoPrecio > 0){
|
||||
$('#LbAgregar').focus();
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
function DirclienteValidaCodigoPostal() {
|
||||
$("#BtnDirClienteValidar").click();
|
||||
}
|
||||
|
||||
@@ -2425,13 +2425,6 @@ Partial Class Ventas
|
||||
If Not (UsuarioActual.Empresa.Funcionalidad(558) = "1") Then '
|
||||
LnkAgregarCliente.Visible = False
|
||||
End If
|
||||
If UsuarioActual.Empresa.Funcionalidad(109) = "1" Then
|
||||
LnkAgregarCliente.Visible = True
|
||||
'ocultar la columna de subproyecto
|
||||
GvPS.Columns(ColumnaSubProyecto).Visible = False
|
||||
ThProyecto.Visible = False
|
||||
ThProyecto2.Visible = False
|
||||
End If
|
||||
|
||||
DdlTipoComprobante.Items.Insert(DdlTipoComprobante.Items.Count, New ListItem("Pedido", "Ped"))
|
||||
|
||||
@@ -2601,6 +2594,13 @@ Partial Class Ventas
|
||||
Else
|
||||
ViewState("CveCliente") = -1
|
||||
HdnCveCliente.Value = "-1"
|
||||
|
||||
'SI TIENE UN CLIENTE POR DEFECTO DEBE CARGARLO AL INICIAR
|
||||
If UsuarioActual.Empresa.Funcionalidad(714).ToEntero() > 0 Then
|
||||
ViewState("CveCliente") = UsuarioActual.Empresa.Funcionalidad(714).ToEntero()
|
||||
HdnCveCliente.Value = UsuarioActual.Empresa.Funcionalidad(714)
|
||||
CargaCliente(CveCliente)
|
||||
End If
|
||||
End If
|
||||
|
||||
'Carga empresa CRM
|
||||
@@ -3404,37 +3404,22 @@ Partial Class Ventas
|
||||
HLFAgregarOS.NavigateUrl = $"/OS/OrdenesServicios.aspx?CveVenta={CveVenta}"
|
||||
End If
|
||||
|
||||
End If
|
||||
If UsuarioActual.Empresa.Funcionalidad(109) = "1" Then
|
||||
LnkAgregarCliente.Visible = True
|
||||
'ocultar la columna de subproyecto
|
||||
GvPS.Columns(ColumnaSubProyecto).Visible = False
|
||||
ThProyecto.Visible = False
|
||||
ThProyecto2.Visible = False
|
||||
|
||||
TxtCantidad.Text = "1"
|
||||
TxtCantidad.Focus()
|
||||
TrDescripcionVenta.Visible = False
|
||||
|
||||
If UsuarioActual.CveEmpresa.Contiene(189, 190) Then
|
||||
Dim jsFocus As String = "$(document).ready(function () {
|
||||
|
||||
$('#TxtCantidad').on('keydown', function (e) {
|
||||
if (e.which == 13 || e.which == 9 ) {
|
||||
let valorNumericoCantidad = parseFloat($('#TxtCantidad').val());
|
||||
e.preventDefault();
|
||||
if(valorNumericoCantidad > 0){
|
||||
$('#C_Tab_TabGenerales_DdlPS > select').select2('open').next().find(':input.select2-search__field').focus();
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
});
|
||||
UpPS.Update()
|
||||
|
||||
$('#TxtPrecio').on('keydown', function (e) {
|
||||
if (e.which == 13 || e.which == 9 ) {
|
||||
let valorNumericoPrecio = parseFloat($('#TxtCantidad').val());
|
||||
e.preventDefault();
|
||||
if(valorNumericoPrecio > 0){
|
||||
$('#LbAgregar').focus();
|
||||
}
|
||||
}
|
||||
});
|
||||
RegistraScript("$('#TxtCantidad').focus();", "A1")
|
||||
End If
|
||||
|
||||
|
||||
});"
|
||||
RegistraScript(jsFocus)
|
||||
End If
|
||||
|
||||
End Sub
|
||||
@@ -18133,8 +18118,9 @@ Partial Class Ventas
|
||||
End If
|
||||
End If
|
||||
|
||||
If UsuarioActual.CveEmpresa.Contiene(186, 189) Then
|
||||
If UsuarioActual.Empresa.Funcionalidad(109) = "1" Then
|
||||
TxtCantidad.Focus()
|
||||
TxtCantidad.Text = "1"
|
||||
End If
|
||||
|
||||
UpPS.Update()
|
||||
@@ -23828,18 +23814,33 @@ Partial Class Ventas
|
||||
If e.CommandName = "Clonar" Then
|
||||
Dim RowNum As Integer = Convert.ToInt32(e.CommandArgument)
|
||||
Dim GvRow As GridViewRow = GvPS.Rows(RowNum)
|
||||
TxtCantidad.Text = GvPS.Rows(RowNum).FCLiteral("LtlCantidad").Text
|
||||
DdlClasificacion.SelectedValue = GvRow.DataKey("CveClasificacion")
|
||||
DdlPS.SelectedValue = GvRow.DataKey("CvePS")
|
||||
DdlPS_SelectedIndexChanged(Nothing, Nothing)
|
||||
DdlUnidadMedida.SelectedValue = GvRow.DataKey("CveUM")
|
||||
TxtObsPS.Text = GvRow.FCLiteral("LtlObsPS").Text
|
||||
|
||||
|
||||
If (GvRow.RowState = DataControlRowState.Edit OrElse GvRow.RowState = 5) Then
|
||||
TxtCantidad.Text = GvRow.FCTextBox("TxtCantidad").Text
|
||||
DdlClasificacion.SelectedValue = GvRow.FCDropDownList("DdlClasificacion").SelectedValue
|
||||
DdlPS.SelectedValue = GvRow.FCDropDownLost("DdlPS").SelectedValue
|
||||
DdlPS_SelectedIndexChanged(Nothing, Nothing)
|
||||
DdlUnidadMedida.SelectedValue = GvRow.FCDropDownList("DdlUnidadMedida").SelectedValue
|
||||
TxtObsPS.Text = GvRow.FCTextBox("TxtObsPS").Text
|
||||
TxtPrecio.Text = GvRow.FCTextBox("TxtPrecio").Text
|
||||
Else
|
||||
TxtCantidad.Text = GvPS.Rows(RowNum).FCLiteral("LtlCantidad").Text
|
||||
DdlClasificacion.SelectedValueExistInsert(GvRow.DataKey("CveClasificacion"), GvRow.DataKey("Clasificacion"))
|
||||
DdlPS.SelectedValue = GvRow.DataKey("CvePS")
|
||||
DdlPS_SelectedIndexChanged(Nothing, Nothing)
|
||||
DdlUnidadMedida.SelectedValueExistInsert(GvRow.DataKey("CveUM"), GvRow.DataKey("UM"))
|
||||
TxtObsPS.Text = GvRow.FCLiteral("LtlObsPS").Text
|
||||
TxtPrecio.Text = GvRow.FCLiteral("LtlPU").Text
|
||||
End If
|
||||
|
||||
DdlProyecto.SelectedValue = GvRow.DataKey("CveProyecto")
|
||||
DdlProyecto_SelectedIndexChanged(Nothing, Nothing)
|
||||
DdlSubProyecto.SelectedValue = GvRow.DataKey("CveSubProyecto")
|
||||
TxtPrecio.Text = GvRow.FCLiteral("LtlPU").Text
|
||||
|
||||
RegistraScript("Recalcula();")
|
||||
LbAgregar_Click(Nothing, Nothing)
|
||||
|
||||
Else
|
||||
DdlPS_SelectedIndexChanged(Nothing, Nothing)
|
||||
End If
|
||||
|
||||
Reference in New Issue
Block a user