Clientes - Grupos

This commit is contained in:
2020-10-02 18:05:41 -07:00
parent 8fdcf39e33
commit 0188fc093c
8 changed files with 529 additions and 138 deletions

View File

@@ -443,14 +443,14 @@
--%>
<div class="form-group form-md-line-input input-iconright">
<asp:DropDownList ID="DdlSATPais" runat="server" CssClass="form-control input-sm select2me" OnSelectedIndexChanged="DdlSATPais_SelectedIndexChanged" AutoPostBack="true">
<asp:DropDownList ID="DdlSATPais" runat="server" CssClass="form-control input-sm select2me" OnSelectedIndexChanged="DdlSATPais_SelectedIndexChanged" AutoPostBack="true">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
<asp:ListItem Value="MEX" Text="México"></asp:ListItem>
<asp:ListItem Value="USA" Text="USA"></asp:ListItem>
<asp:ListItem Value="CAN" Text="Canada"></asp:ListItem>
<asp:ListItem Value="MEX" Text="México"></asp:ListItem>
<asp:ListItem Value="USA" Text="USA"></asp:ListItem>
<asp:ListItem Value="CAN" Text="Canada"></asp:ListItem>
</asp:DropDownList>
<asp:RequiredFieldValidator ID="RequiredFieldValidator19" runat="server" InitialValue="-1" ControlToValidate="DdlSATPais" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Pais''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator>
<asp:RequiredFieldValidator ID="RequiredFieldValidator19" runat="server" InitialValue="-1" ControlToValidate="DdlSATPais" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Pais''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator>
<label for="<%= DdlSATPais.ClientID.ToString()%>">Pais:</label>
<i></i>
</div>
@@ -460,14 +460,14 @@
<asp:DropDownList ID="DdlEstadoSAT" DataTextField="NombreEstado" DataValueField="CveSATEstado" runat="server" CssClass="form-control input-sm select2me">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList>
<asp:RequiredFieldValidator ID="RfvDdlEstadoSAT" runat="server" InitialValue="-1" ControlToValidate="DdlEstadoSAT" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Estado''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator>
<asp:RequiredFieldValidator ID="RfvDdlEstadoSAT" runat="server" InitialValue="-1" ControlToValidate="DdlEstadoSAT" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Estado''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator>
<label for="<%= DdlEstadoSAT.ClientID.ToString()%>">Estado:</label>
<i></i>
</div>
<div class="form-group form-md-line-input input-iconright" runat="server" visible="False" id="dvZH">
<asp:DropDownList ID="DdlZonaHoraria" DataTextField="DisplayText" DataValueField="CveZonaHoraria" runat="server" CssClass="form-control input-sm select2me">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
@@ -638,13 +638,13 @@
<label for="<%= DdlTipoCliente.ClientID.ToString()%>">Tipo de Cliente:</label>
</div>
<div class="form-group form-md-line-input input-iconright" id="divCorreoEntregaCompras" runat="server" visible="false" >
<asp:TextBox runat="server" ID="TxtCorreoEntregaCompras" CssClass="form-control"/>
<div class="form-group form-md-line-input input-iconright" id="divCorreoEntregaCompras" runat="server" visible="false">
<asp:TextBox runat="server" ID="TxtCorreoEntregaCompras" CssClass="form-control" />
<label for="<%= TxtCorreoEntregaCompras.ClientID.ToString()%>">Correo de Entrega de Compras:</label>
</div>
<div class="form-group form-md-line-input input-iconright" id="divCorreoEntregaAlmacen" runat="server" visible="false">
<asp:TextBox runat="server" ID="TxtCorreoEntregaAlmacen" CssClass="form-control"/>
<asp:TextBox runat="server" ID="TxtCorreoEntregaAlmacen" CssClass="form-control" />
<label for="<%= TxtCorreoEntregaAlmacen.ClientID.ToString()%>">Correo de Entrega de Almacén:</label>
</div>
@@ -692,7 +692,9 @@
<div class="portlet-title">
<div class="caption font-green">
<i class="icon-pin font-green"></i>
<span class="caption-subject bold uppercase">Sucursales y/o Departamentos</span>
<span class="caption-subject bold uppercase">
<asp:Literal ID="LtlGvSucursalesCliente" runat="server" Text="Sucursales y/o Departamentos" />
</span>
</div>
<div class="actions">
<div class="btn-group">
@@ -704,7 +706,8 @@
<table class="table table-striped table-advance table-hover" style="width: 100%">
<thead>
<tr class="Titulos">
<th width="150px">Sucursal y/o Departamento</th>
<th width="150px">
<asp:Literal ID="LtlNombreSucursalTitulo" runat="server" Text="Sucursal y/o Departamento:"></asp:Literal></th>
<th></th>
<th></th>
<th width="121px">Comandos</th>
@@ -787,8 +790,8 @@
<Columns>
<asp:TemplateField>
<HeaderTemplate>
Sucursal/Depto
<asp:Literal ID="LtlNombreSucursal" runat="server" Text="Sucursal/Depto"></asp:Literal>
</HeaderTemplate>
<ItemTemplate>
<div class="truncate" style="width: 200px;">
@@ -1008,16 +1011,16 @@
<div class="portlet-body form-horizontal form-row-sepe">
<div class="form-body">
<div id="divCuentas" runat="server" visible="false">
<asp:UpdatePanel runat="server" ID="UpCuentaConceptos" UpdateMode="Conditional">
<ContentTemplate>
<asp:GridView ID="GvCta" runat="server" DataKeyNames="ConceptoContable,NombreCuenta" AutoGenerateColumns="False" EmptyDataText="" ToolTip="Listado de Historial de Ventas" CssClass="table table-striped table-advance table-hover" Style="text-align: center; width: 100%;" GridLines="None">
<Columns>
<asp:BoundField HeaderText="Concepto Contable" DataField="ConceptoContable" />
<asp:BoundField HeaderText="Nombre Cuenta" DataField="NombreCuenta" />
</Columns>
</asp:GridView>
</ContentTemplate>
</asp:UpdatePanel>
<asp:UpdatePanel runat="server" ID="UpCuentaConceptos" UpdateMode="Conditional">
<ContentTemplate>
<asp:GridView ID="GvCta" runat="server" DataKeyNames="ConceptoContable,NombreCuenta" AutoGenerateColumns="False" EmptyDataText="" ToolTip="Listado de Historial de Ventas" CssClass="table table-striped table-advance table-hover" Style="text-align: center; width: 100%;" GridLines="None">
<Columns>
<asp:BoundField HeaderText="Concepto Contable" DataField="ConceptoContable" />
<asp:BoundField HeaderText="Nombre Cuenta" DataField="NombreCuenta" />
</Columns>
</asp:GridView>
</ContentTemplate>
</asp:UpdatePanel>
</div>
<div id="divCuentasContp" runat="server" visible="false">
@@ -1126,11 +1129,11 @@
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
@@ -2369,7 +2372,7 @@
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate>Archivos</HeaderTemplate>
<ItemStyle HorizontalAlign="Center"/>
<ItemStyle HorizontalAlign="Center" />
<ItemTemplate>
<asp:HyperLink ID="HplXML" runat="server" Visible="false" Target="_blank"><i class='fa fa-file-excel-o' style="font-weight:bold;"></i></asp:HyperLink>
<asp:HyperLink ID="HplPDF" runat="server" Visible="false" Target="_blank"><i class='fa fa-file-pdf-o' style="font-weight:bold;"></i></asp:HyperLink>
@@ -2377,7 +2380,7 @@
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate>Reenviar Complemento</HeaderTemplate>
<ItemStyle HorizontalAlign="Center"/>
<ItemStyle HorizontalAlign="Center" />
<ItemTemplate>
<%-- <a id="HLSendMail" runat="server" class="Texto" visible="false">
<i class="fa fa-envelope fa-2" aria-hidden="true"></i>
@@ -2428,10 +2431,10 @@
<asp:GridView ID="GvPagosNoBancarios" runat="server" AutoGenerateColumns="False" EmptyDataText="No se encontraron pagos no bancarios" Width="50%"
CssClass="table table-striped table-advance table-hover ScrollAD" data-sort="false" BorderWidth="1" BorderColor="#D3D3D3" GridLines="None" DataKeyNames="CvePrePoliza,CveCompra,CveVenta,CvePersonal,ImporteMN,VentaSerieFolio,CompraSerieFolio,NombreCompleto,FechaIng,Abreviatura">
<Columns>
<asp:BoundField HeaderText="Nombre Completo" DataField="NombreCompleto"/>
<asp:BoundField HeaderText="Fecha" DataField="FechaIng" DataFormatString="{0:dd/MM/yyyy}"/>
<asp:HyperLinkField HeaderText="Venta Serie Folio" DataTextField="VentaSerieFolio" DataNavigateUrlFields="CveVenta" DataNavigateUrlFormatString="/Ventas/Ventas.aspx?CveVenta={0}"/>
<asp:HyperLinkField HeaderText="Compra Serie Folio" DataTextField="CompraSerieFolio" DataNavigateUrlFields="CveCompra" DataNavigateUrlFormatString="/Compras/Compras.aspx?CveCompra={0}"/>
<asp:BoundField HeaderText="Nombre Completo" DataField="NombreCompleto" />
<asp:BoundField HeaderText="Fecha" DataField="FechaIng" DataFormatString="{0:dd/MM/yyyy}" />
<asp:HyperLinkField HeaderText="Venta Serie Folio" DataTextField="VentaSerieFolio" DataNavigateUrlFields="CveVenta" DataNavigateUrlFormatString="/Ventas/Ventas.aspx?CveVenta={0}" />
<asp:HyperLinkField HeaderText="Compra Serie Folio" DataTextField="CompraSerieFolio" DataNavigateUrlFields="CveCompra" DataNavigateUrlFormatString="/Compras/Compras.aspx?CveCompra={0}" />
<asp:TemplateField HeaderText="Importe" ItemStyle-HorizontalAlign="Right">
<ItemTemplate>
<asp:Literal ID="LtlImp" runat="server" Text='<%# Eval("ImporteMN", "{0:N2}")%>'></asp:Literal>
@@ -4535,8 +4538,8 @@
<asp:Literal ID="LtlTareaNueva" runat="server"></asp:Literal>
<UserControl:TareaNueva runat="server" id="TareaNueva" />
<script> function OnAddedTareaNueva() {
$('.btnupEventoBitacora').click();
}
$('.btnupEventoBitacora').click();
}
</script>
</div>
@@ -4654,7 +4657,9 @@
<div class="portlet-title">
<div class="caption font-green">
<i class="fa fa-users font-green"></i>
<span class="caption-subject bold uppercase">Datos de la Sucursal </span>
<span class="caption-subject bold uppercase">
<asp:Literal ID="LtlTituloSurcusalCliente" runat="server" Text="Datos de la Sucursal"></asp:Literal>
</span>
@@ -4670,7 +4675,9 @@
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtNombreSucursal" CssClass="form-control " runat="server" MaxLength="100" CausesValidation="true"></asp:TextBox>
<asp:RequiredFieldValidator ID="RFVNombreSucursal" runat="server" ControlToValidate="TxtNombreSucursal" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Nombre''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardarSucursal"></asp:RequiredFieldValidator>
<label for="<%= TxtNombreSucursal.ClientID.ToString()%>">Sucursal y/o Departamento:</label>
<label for="<%= TxtNombreSucursal.ClientID.ToString()%>">
<asp:Literal ID="LtlNombreSucursal" runat="server" Text="Sucursal y/o Departamento:"></asp:Literal>
</label>
</div>
<div class="form-group form-md-line-input input-iconright">
@@ -4738,10 +4745,17 @@
</div>
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtTelefonoSucursal" CssClass="form-control " runat="server" MaxLength="10" CausesValidation="true"></asp:TextBox>
<ajax:MaskedEditExtender ID="mskTelefono" runat="server" TargetControlID="TxtTelefonoSucursal" ClearMaskOnLostFocus="false" MaskType="None" Mask="(999) 999-9999" MessageValidatorTip="true" InputDirection="LeftToRight" ErrorTooltipEnabled="True"></ajax:MaskedEditExtender>
<label for="<%= TxtTelefonoSucursal.ClientID.ToString()%>">Teléfono:</label>
<div class="row" style="padding-left: 16px;">
<div class="form-group form-md-line-input input-iconright col-xs-4">
<asp:TextBox ID="TxtTelefonoSucursal" CssClass="form-control " runat="server" MaxLength="10" CausesValidation="true"></asp:TextBox>
<ajax:MaskedEditExtender ID="mskTelefono" runat="server" TargetControlID="TxtTelefonoSucursal" ClearMaskOnLostFocus="false" MaskType="None" Mask="(999) 999-9999" MessageValidatorTip="true" InputDirection="LeftToRight" ErrorTooltipEnabled="True"></ajax:MaskedEditExtender>
<label for="<%= TxtTelefonoSucursal.ClientID.ToString()%>">Teléfono:</label>
</div>
<div id="DivRFCSucursal" visible="false" runat="server" class="form-group form-md-line-input input-iconright col-xs-8">
<asp:TextBox ID="TxtRFCSucursal" Style="text-transform: uppercase;" runat="server" CssClass="form-control" MaxLength="13" CausesValidation="true"></asp:TextBox>
<asp:RegularExpressionValidator ID="REVRFCSucursal" runat="server" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''RFC''</b> es incorrecto, por favor ingréselo." ValidationGroup="GrpGuardarSucursal" ControlToValidate="TxtRFCSucursal" ValidationExpression="^[a-zA-Z.)(/\\&-]{3,4}(\d{6})((\D|\d){2})((\D|\d){1})$"></asp:RegularExpressionValidator>
<label for="<%= TxtRFCSucursal.ClientID.ToString()%>">RFC:</label>
</div>
</div>
<div class="form-group form-md-line-input input-iconright">
@@ -7069,6 +7083,6 @@
}
</script>
<script src="<%= String.Format("https://maps.googleapis.com/maps/api/js?key={0}&libraries=drawing&libraries=places", Extensiones.GOOGLE_MAPS_API_KEY) %>"</script>
<script src="<%= String.Format("https://maps.googleapis.com/maps/api/js?key={0}&libraries=drawing&libraries=places", Extensiones.GOOGLE_MAPS_API_KEY) %>"></script>
</asp:Content>

View File

@@ -1421,6 +1421,7 @@ Partial Class Clientes
'TxtEstado.Text = ObjClientes.Estado
'TxtPais.Text = ObjClientes.Pais
TxtRFC.Text = ObjClientes.RFC
TxtCP.Text = ObjClientes.CP.ToString
TxtTelefono.Text = ObjClientes.Telefono
TxtContacto.Text = ObjClientes.Contacto
@@ -1898,7 +1899,16 @@ Partial Class Clientes
GvDireccionesEnvio.DataSource = ObjClientes.DtResultados
End If
ObjClientes.Dispose()
GvDireccionesEnvio.DataBind()
GvDireccionesEnvio.DataBind()
If TxtRFC.Text = "XAXX010101000" Then
GvDireccionesEnvio.HeaderRow.FCLiteral("LtlNombreSucursal").Text = "Cliente"
LtlNombreSucursal.Text = "Cliente"
LtlNombreSucursalTitulo.Text = "Cliente"
LtlTituloSurcusalCliente.Text = "Datos del cliente"
LtlGvSucursalesCliente.Text = "Clientes"
End If
UpAgregarSucursal.Update()
UpDatos.Update()
End Sub
Public Sub CargaAFAsignados()
@@ -2976,15 +2986,13 @@ Partial Class Clientes
Dim LT As String = If(txtLt.Text.ToDouble <> 0, txtLt.Text, "0")
Dim LG As String = If(txtLg.Text.ToDouble <> 0, txtLg.Text, "0")
Dim RFC As String = If(String.IsNullOrEmpty(TxtRFCSucursal.Text), "-1", TxtRFCSucursal.Text)
If CveCliente > 0 Then
If Actualizar Then
Dim Estatus As Boolean = ChkEstatusSucursal.Checked
If ObjCliente.UpdateSucursal(TxtNombreSucursal.Text.Trim, Estatus, CveCliente, CveClienteSuc, TxtCiudadSucursal.Text.Trim, TxtColoniaSucursal.Text.Trim, TxtCPSucursal.Text.Trim, TxtDireccionSucursal.Text.Trim, TxtEstadoSucursal.Text.Trim, TxtLocalidadSucursal.Text.Trim, TxtPaisSucursal.Text.Trim, TxtNumExtSucursal.Text.Trim, TxtNumIntSucursal.Text.Trim,
TxtTelefonoSucursal.Text.Trim.Replace(" ", "").Replace("(", "").Replace(")", "").Replace("-", "").Replace("_", ""), TxtCorreoSucursal.Text.Trim, TxtCorreoSucursalCotizacion.Text.Trim, TxtContactoSucursal.Text.Trim, DdlVendedorSucursal.SelectedValue.ToEntero, TxtNumeroCuenta.Text, DdlMetodoPagoSucursal.SelectedValue.ToEntero, TxtLimiteCreditoSucursal.Text.ToDecimal, DdlResponsableSucursal.SelectedValue.ToEntero,
DdlSucursalUsoCFDI.SelectedValue.ToEntero, DdlSucursalFormaPago33.SelectedValue.ToEntero, DdlSucursalMetodoPago33.SelectedValue.ToEntero, LT:=LT, LG:=LG) Then
@@ -3126,6 +3134,7 @@ Partial Class Clientes
Protected Sub GvDatos_RowEditing(sender As Object, e As System.Web.UI.WebControls.GridViewEditEventArgs) Handles GVSucursales.RowEditing
Me.Actualizar = True
Me.DivRFCSucursal.Visible = False
Me.CveClienteSuc = GVSucursales.DataKeys(e.NewEditIndex).Value.ToString.ToEntero
@@ -3146,6 +3155,8 @@ Partial Class Clientes
TxtNumExtSucursal.Text = ObjCliente.DtResultados.Rows(0)("NoExt").ToString
TxtNumIntSucursal.Text = ObjCliente.DtResultados.Rows(0)("NoInt").ToString
TxtTelefonoSucursal.Text = ObjCliente.DtResultados.Rows(0)("Telefono").ToString
TxtRFCSucursal.Text = ObjCliente.DtResultados.Rows(0)("RFC").ToString
DivRFCSucursal.Visible = Not String.IsNullOrEmpty(TxtRFCSucursal.Text.Trim())
TxtCorreoSucursal.Text = ObjCliente.DtResultados.Rows(0)("Correo").ToString
TxtCorreoSucursalCotizacion.Text = ObjCliente.DtResultados(0)("CorreoCotizacion").ToString
TxtContactoSucursal.Text = ObjCliente.DtResultados.Rows(0)("Contacto").ToString

View File

@@ -417,11 +417,33 @@
<td width="135px">
<asp:CheckBox ID="ChkEnviarFactura" runat="server" /></td>
</tr>
<%-- <tr runat="server" id="trFacturacionSucursal" visible="false">
<td><b>Facturar Sucursal :</b></td>
<td>
<asp:CheckBox ID="ChkFacturarSucursal" runat="server" OnCheckedChanged="ChkFacturarSucursal_CheckedChanged" />
</td>
</tr>--%>
<tr runat="server" id="trsucursalciente" visible="false">
<td><b>Sucursal :</b></td>
<td colspan="3">
<asp:DropDownList ID="DdlSucursalCliente" runat="server" AutoPostBack="true" CssClass="form-control input-sm select2me" AppendDataBoundItems="true" DataTextField="SucursalCliente" DataValueField="CveClienteSucursal" Width="150px">
</asp:DropDownList>
<td align="left" ><b>
<asp:Label ID="LblSucursal" runat="server" Text="Sucursal"></asp:Label>
:</b></td>
<td align="left" >
<div class="row align-items-start">
<div class="col-md-10">
<asp:DropDownList ID="DdlSucursalCliente" runat="server" AutoPostBack="true" CssClass="form-control input-sm select2me" AppendDataBoundItems="true" DataTextField="SucursalCliente" DataValueField="CveClienteSucursal">
</asp:DropDownList>
</div>
<div class="col-md-2" style="padding: inherit;">
<asp:LinkButton ID="LnkAgregarSucursal" Visible="false" runat="server" CssClass="btn btn-primary btn-circle btn-xs" Text="<i class='fa fa-plus' aria-hidden='true'></i>" OnClick="LnkAgregarSucursal_Click"></asp:LinkButton>
</div>
</div>
</td>
<td align="left" >
<b>
<asp:Label ID="LtlTitleRFCSucursal" runat="server" Text=""></asp:Label></b>
</td>
<td align="left" >
<asp:Label ID="LtlRFCSucursal" runat="server" Text=""></asp:Label>
</td>
</tr>
<tr align="left" runat="server" id="TrDireccion">
@@ -6880,6 +6902,132 @@
</ContentTemplate>
</asp:UpdatePanel>
</div>
<%-- MODAL SUCURSAL --%>
<div id="divAgregarSucursal" class="modal fade" role="dialog">
<div class="modal-dialog" style="max-height: 500px; max-width: 500px;">
<asp:UpdatePanel ID="UpAgregarSucursal" class="modal-content rowpadding" tabindex="-1" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<fieldset>
<table border="0" class="portlet light bordered">
<tr>
<div class="portlet-title">
<div class="caption font-green">
<i class="fa fa-users font-green"></i>
<span class="caption-subject bold uppercase">Datos del cliente </span>
</div>
<div class="actions">
<div class="btn-group">
</div>
</div>
</div>
</tr>
<tr>
<div class="row" style="padding-left: 16px;">
<div class="form-group form-md-line-input input-iconright col-xs-12">
<asp:TextBox ID="TxtNombreSucursal" CssClass="form-control " runat="server" MaxLength="100" CausesValidation="true"></asp:TextBox>
<asp:RequiredFieldValidator ID="RFVNombreSucursal" runat="server" ControlToValidate="TxtNombreSucursal" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Nombre''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardarSucursal"></asp:RequiredFieldValidator>
<label for="<%= TxtNombreSucursal.ClientID.ToString()%>">Nombre del cliente:</label>
</div>
</div>
<div class="row" style="padding-left: 16px;">
<div class="form-group form-md-line-input input-iconright col-xs-12">
<asp:TextBox ID="TxtRFCSucursal" Style="text-transform: uppercase;" runat="server" CssClass="form-control" MaxLength="13" CausesValidation="true"></asp:TextBox>
<asp:RegularExpressionValidator ID="RFVRFCSucursal" runat="server" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''RFC''</b> es incorrecto, por favor ingréselo." ValidationGroup="GrpGuardarSucursal" ControlToValidate="TxtRFCSucursal" ValidationExpression="^[a-zA-Z.)(/\\&-]{3,4}(\d{6})((\D|\d){2})((\D|\d){1})$"></asp:RegularExpressionValidator>
<label for="<%= TxtRFCSucursal.ClientID.ToString()%>">RFC:</label>
</div>
</div>
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtDireccionSucursal" CssClass="form-control " runat="server" MaxLength="90" CausesValidation="true"></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator13" runat="server" ControlToValidate="TxtDireccionSucursal" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Direccion''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardarSucursal"></asp:RequiredFieldValidator>
<label for="<%= TxtDireccionSucursal.ClientID.ToString()%>">Calle:</label>
</div>
<div class="row" style="padding-left: 16px;">
<div class="form-group form-md-line-input input-iconright col-xs-3">
<asp:TextBox ID="TxtNumExtSucursal" CssClass="form-control " runat="server" MaxLength="20" CausesValidation="true"></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator14" runat="server" ControlToValidate="TxtNumExtSucursal" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Número Exterior''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardarSucursal"></asp:RequiredFieldValidator>
<label for="<%= TxtNumExtSucursal.ClientID.ToString()%>">Número Exterior:</label>
</div>
<div class="form-group form-md-line-input input-iconright col-xs-3">
<asp:TextBox ID="TxtNumIntSucursal" CssClass="form-control " runat="server" MaxLength="20" CausesValidation="true"></asp:TextBox>
<label for="<%= TxtNumIntSucursal.ClientID.ToString()%>">Número Interior:</label>
</div>
</div>
<div class="row" style="padding-left: 16px">
<div class="form-group form-md-line-input input-iconright col-xs-4">
<asp:TextBox ID="TxtCPSucursal" CssClass="form-control " runat="server" MaxLength="5" CausesValidation="true"></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator15" runat="server" ControlToValidate="TxtCPSucursal" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Código Postal''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardarSucursal"></asp:RequiredFieldValidator>
<label for="<%= TxtCPSucursal.ClientID.ToString()%>">Código Postal:</label>
</div>
<div class="form-group form-md-line-input input-iconright col-xs-4">
<asp:TextBox ID="TxtColoniaSucursal" CssClass="form-control " runat="server" MaxLength="50" CausesValidation="true"></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator16" runat="server" ControlToValidate="TxtColoniaSucursal" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Colonia''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardarSucursal"></asp:RequiredFieldValidator>
<label for="<%= TxtColoniaSucursal.ClientID.ToString()%>">Colonia:</label>
</div>
</div>
<div class="row" style="padding-left: 16px;">
<div class="form-group form-md-line-input input-iconright col-xs-4">
<asp:TextBox ID="TxtCiudadSucursal" CssClass="form-control " runat="server" MaxLength="50" CausesValidation="true"></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator17" runat="server" ControlToValidate="TxtCiudadSucursal" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Ciudad''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardarSucursal"></asp:RequiredFieldValidator>
<label for="<%= TxtCiudadSucursal.ClientID.ToString()%>">Ciudad:</label>
</div>
<div class="form-group form-md-line-input input-iconright col-xs-4">
<asp:TextBox ID="TxtLocalidadSucursal" CssClass="form-control " runat="server" MaxLength="50" CausesValidation="true"></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator18" runat="server" ControlToValidate="TxtLocalidadSucursal" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Localidad''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardarSucursal"></asp:RequiredFieldValidator>
<label for="<%= TxtLocalidadSucursal.ClientID.ToString()%>">Localidad:</label>
</div>
</div>
<div class="row" style="padding-left: 16px;">
<div class="form-group form-md-line-input input-iconright col-xs-4">
<asp:TextBox ID="TxtEstadoSucursal" CssClass="form-control " runat="server" MaxLength="35" CausesValidation="true"></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator19" runat="server" ControlToValidate="TxtEstadoSucursal" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Estado''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardarSucursal"></asp:RequiredFieldValidator>
<label for="<%= TxtEstadoSucursal.ClientID.ToString()%>">Estado:</label>
</div>
<div class="form-group form-md-line-input input-iconright col-xs-4">
<asp:TextBox ID="TxtPaisSucursal" CssClass="form-control " Text="Mexico" runat="server" MaxLength="50" CausesValidation="true"></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator20" runat="server" ControlToValidate="TxtPaisSucursal" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''País''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardarSucursal"></asp:RequiredFieldValidator>
<label for="<%= TxtPaisSucursal.ClientID.ToString()%>">País:</label>
</div>
</div>
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtTelefonoSucursal" CssClass="form-control " runat="server" MaxLength="10" CausesValidation="true"></asp:TextBox>
<ajax:MaskedEditExtender ID="mskTelefono" runat="server" TargetControlID="TxtTelefonoSucursal" ClearMaskOnLostFocus="false" MaskType="None" Mask="(999) 999-9999" MessageValidatorTip="true" InputDirection="LeftToRight" ErrorTooltipEnabled="True"></ajax:MaskedEditExtender>
<label for="<%= TxtTelefonoSucursal.ClientID.ToString()%>">Teléfono:</label>
</div>
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtCorreoSucursal" CssClass="form-control" runat="server" MaxLength="300" CausesValidation="true"></asp:TextBox>
<asp:RegularExpressionValidator ID="RegularExpressionValidator4" runat="server" CssClass="help-block errorimput" ValidationExpression="(([a-zA-Z0-9_\-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([a-zA-Z0-9\-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)(\s*;\s*|\s*$))*" ControlToValidate="TxtCorreoSucursal" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Email''</b> no es válido, por favor ingrése uno correcto." ValidationGroup="GrpGuardarSucursal"></asp:RegularExpressionValidator>
<label for="<%= TxtCorreoSucursal.ClientID.ToString()%>">Correo Envio Factura:(xml/pdf) </label>
<i></i>
</div>
<div class="row" style="padding-left: 16px">
<div class="form-group form-md-line-input input-iconright col-xs-6">
<asp:DropDownList ID="DdlVendedorSucursal" runat="server" CssClass="form-control input-sm select2me" Width="250px" DataTextField="Vendedor" DataValueField="CveVendedor">
</asp:DropDownList>
<label for="<%= DdlVendedorSucursal.ClientID.ToString()%>">Vendedor:</label>
</div>
<div class="form-group form-md-line-input input-iconright col-xs-6">
<asp:DropDownList ID="DdlSucursalUsoCFDI" CssClass="form-control select2me" runat="server" Width="150px" AppendDataBoundItems="true" DataTextField="UsoCFDIDescripcion" DataValueField="CveUsoCFDI">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList>
<label for="<%= DdlSucursalUsoCFDI.ClientID.ToString()%>">Uso CFDI:</label>
</div>
</div>
</tr>
</table>
</fieldset>
<div class="modal-footer">
<asp:Button ID="BtnAgregarSucursal" runat="server" CssClass="btn btn-success" Text="Agregar" ValidationGroup="GrpGuardarSucursal" />
<button id="BtnCancelarSucursal" runat="server" type="button" class="btn default" data-dismiss="modal">Cancelar</button>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div>
</asp:Content>
<asp:Content ID="Content7" ContentPlaceHolderID="JS" runat="Server">
<script src="/Metronic/assets/global/scripts/jquery-sortable.js"></script>
@@ -7744,75 +7892,75 @@
function LimpiaModal() {
$('#<%= TxtDireccion.ClientID %>').val('');
$('#<%= TxtColonia.ClientID %>').val('');
$('#<%= TxtCiudad.ClientID %>').val('');
$('#<%= TxtEstado.ClientID %>').val('');
$('#<%= TxtCP.ClientID %>').val('');
}
$('#<%= TxtColonia.ClientID %>').val('');
$('#<%= TxtCiudad.ClientID %>').val('');
$('#<%= TxtEstado.ClientID %>').val('');
$('#<%= TxtCP.ClientID %>').val('');
}
function BtnMateriales() {
$('#BtnMateriales').click();
}
function BtnMateriales() {
$('#BtnMateriales').click();
}
function BtnEnviarMailCancelacion() {
$('#BtnEnviarMailCancelacion').click();
}
function BtnRefacturacionConfirmar() {
$('#BtnRefacturacionConfirmar').click();
}
function BtnRefacturacionConfirmarAceptacion(Liga) {
$('#BtnRefacturacionConfirmarAceptacion').click();
}
function BtnRefrescarPagina() {
$('#BtnRefrescarPagina').click();
}
function Recargar() {
$('#BtnRefrescarPagina').click();
}
function BtnAplicaNuevaNC() {
$('#BtnAplicaNuevaNC').click();
}
function BtnEnviarMailCancelacion() {
$('#BtnEnviarMailCancelacion').click();
}
function BtnRefacturacionConfirmar() {
$('#BtnRefacturacionConfirmar').click();
}
function BtnRefacturacionConfirmarAceptacion(Liga) {
$('#BtnRefacturacionConfirmarAceptacion').click();
}
function BtnRefrescarPagina() {
$('#BtnRefrescarPagina').click();
}
function Recargar() {
$('#BtnRefrescarPagina').click();
}
function BtnAplicaNuevaNC() {
$('#BtnAplicaNuevaNC').click();
}
$('.DdlPS').on("select2:open", function (e) { $('.select2-container.select2-container--default .select2-dropdown .select2anothertable').remove(); });
$('.DdlPSPyME').on("select2:open", function (e) { $('.select2-container.select2-container--default .select2-dropdown .select2anothertable').remove(); });
$('.DdlPS').on("select2:open", function (e) { $('.select2-container.select2-container--default .select2-dropdown .select2anothertable').remove(); });
$('.DdlPSPyME').on("select2:open", function (e) { $('.select2-container.select2-container--default .select2-dropdown .select2anothertable').remove(); });
$("body").on("mouseenter", ".select2-container.select2-container--default.select2-container--open .select2-dropdown li", function (event) {
var $this = $(this);
var ind = $this.index();
$(".select2-container.select2-container--default.select2-container--open .select2-dropdown .select2anothertable tr.active").removeClass('active');
$(".select2-container.select2-container--default.select2-container--open .select2-dropdown .select2anothertable tr:nth-child(" + (ind + 2) + ")").addClass('active');
//log($this);
});
var scrollfuncion = function () {
var stop = this.scrollTop;
$(".select2-container.select2-container--default.select2-container--open .select2-dropdown .select2anothertable").scrollTop(stop);
}
function CargaExistenciaAlmacenes(data, params) {
var div = $('<div class="select2anothertable" style=" max-width: 950px; overflow-x: auto;"></div>');
$('.select2-container.select2-container--default.select2-container--open .select2-dropdown .select2anothertable').remove();
$('.select2-container.select2-container--default.select2-container--open .select2-dropdown').prepend(div);
var table = $('<table id="TExistencias" ></table>'); div.append(table);
var tbody = $('<tbody></tbody>'); table.append(tbody);
$(".select2-container--default .select2-results>.select2-results__options").off("scroll", scrollfuncion);
$(".select2-container--default .select2-results>.select2-results__options").scroll(scrollfuncion);
var indexd = 0;
data.forEach(function (item) {
if (indexd == 0) {
var tr = $('<tr></tr>'); tbody.append(tr);
var td;
for (var key in item) {
if (!(key == "text" || key == "id")) { td = $('<td style="font-weight:bold;">' + key + '</td>'); tr.append(td); }
}
}
var tr = $('<tr></tr>'); tbody.append(tr);
$("body").on("mouseenter", ".select2-container.select2-container--default.select2-container--open .select2-dropdown li", function (event) {
var $this = $(this);
var ind = $this.index();
$(".select2-container.select2-container--default.select2-container--open .select2-dropdown .select2anothertable tr.active").removeClass('active');
$(".select2-container.select2-container--default.select2-container--open .select2-dropdown .select2anothertable tr:nth-child(" + (ind + 2) + ")").addClass('active');
//log($this);
});
var scrollfuncion = function () {
var stop = this.scrollTop;
$(".select2-container.select2-container--default.select2-container--open .select2-dropdown .select2anothertable").scrollTop(stop);
}
function CargaExistenciaAlmacenes(data, params) {
var div = $('<div class="select2anothertable" style=" max-width: 950px; overflow-x: auto;"></div>');
$('.select2-container.select2-container--default.select2-container--open .select2-dropdown .select2anothertable').remove();
$('.select2-container.select2-container--default.select2-container--open .select2-dropdown').prepend(div);
var table = $('<table id="TExistencias" ></table>'); div.append(table);
var tbody = $('<tbody></tbody>'); table.append(tbody);
$(".select2-container--default .select2-results>.select2-results__options").off("scroll", scrollfuncion);
$(".select2-container--default .select2-results>.select2-results__options").scroll(scrollfuncion);
var indexd = 0;
data.forEach(function (item) {
if (indexd == 0) {
var tr = $('<tr></tr>'); tbody.append(tr);
var td;
for (var key in item) {
if (!(key == "text" || key == "id")) { td = $('<td style="font-weight:bold;">' + key + '</td>'); tr.append(td); }
}
}
var tr = $('<tr></tr>'); tbody.append(tr);
var td;
for (var key in item) {
if (!(key == "text" || key == "id")) {
if ((item[key] > 0)) {
td = $('<td style = "font-weight:bold;" >' + item[key] + '</td>'); tr.append(td);
} else {
if ('<%= UsuarioActual.Empresa.Funcionalidad(566) %>' == '1') {
var td;
for (var key in item) {
if (!(key == "text" || key == "id")) {
if ((item[key] > 0)) {
td = $('<td style = "font-weight:bold;" >' + item[key] + '</td>'); tr.append(td);
} else {
if ('<%= UsuarioActual.Empresa.Funcionalidad(566) %>' == '1') {
var buscarAlmacenes = "CargaExistenciasSucursales(" + item.id + ",'" + item.text + "');"
td = $('<td>' + item[key] + ' <button type="button" class="btn btn-xs btn-primary" onclick="' + buscarAlmacenes + '">Ver mas existencias</button></td>'); tr.append(td);
} else {
@@ -7951,17 +8099,17 @@
function ConvertirPesos(ChkConvertirDoctoPesos) {
//LIMPIA
$('#<%= LtlTotalConvertido.ClientID %>').text('');
$("#TrConversionPesosTexto").hide();
$("#TrConversionPesosTexto").hide();
//CALCULA
if (ChkConvertirDoctoPesos.checked) {
ConvertirDllsPesos();
}
}
//CALCULA
if (ChkConvertirDoctoPesos.checked) {
ConvertirDllsPesos();
}
}
function ConvertirPesosDlls() {
var totalPesos = FormatoNumero(ToDouble($get('TxtTotal').value) / ToDouble($get('TxtTipoCambioDlls').value), 2)
$('#<%= LblDolaresConvertidos.ClientID %>').text(totalPesos);
function ConvertirPesosDlls() {
var totalPesos = FormatoNumero(ToDouble($get('TxtTotal').value) / ToDouble($get('TxtTipoCambioDlls').value), 2)
$('#<%= LblDolaresConvertidos.ClientID %>').text(totalPesos);
$("#TrConversionDolaresTexto").show();
}
@@ -8098,5 +8246,26 @@
}
};
function showDivAgregarSucursal() {
$('#<%= TxtNombreSucursal.ClientID %>').val('');
$('#<%= TxtDireccionSucursal.ClientID %>').val('');
$('#<%= TxtNumExtSucursal.ClientID %>').val('');
$('#<%= TxtNumIntSucursal.ClientID %>').val('');
$('#<%= TxtCPSucursal.ClientID %>').val('');
$('#<%= TxtColoniaSucursal.ClientID %>').val('');
$('#<%= TxtTelefonoSucursal.ClientID %>').val('');
$('#<%= TxtCiudadSucursal.ClientID %>').val('');
$('#<%= TxtLocalidadSucursal.ClientID %>').val('');
$('#<%= TxtEstadoSucursal.ClientID %>').val('');
$('#<%= TxtPaisSucursal.ClientID %>').val('');
$('#<%= TxtCorreoSucursal.ClientID %>').val('');
$('#divAgregarSucursal').modal();
}
function hideDivAgregarSucursal() {
$('#divAgregarSucursal').modal('hide');
}
</script>
</asp:Content>

View File

@@ -1764,6 +1764,23 @@ Partial Class Ventas
ViewState("CvePrecioLista") = value
End Set
End Property
Private Property FacturarSucursal As Boolean
Get
Return CBool(IfNull(ViewState("FacturarSucursal"), "False", ViewState("FacturarSucursal")))
End Get
Set(value As Boolean)
ViewState("FacturarSucursal") = value
End Set
End Property
Private Property ClienteSucursal As Modelos.SucursalModel
Get
Return CType(ViewState("ClienteSucursal"), Modelos.SucursalModel)
End Get
Set(value As Modelos.SucursalModel)
ViewState("ClienteSucursal") = value
End Set
End Property
#End Region
@@ -4566,6 +4583,12 @@ Partial Class Ventas
DdlTipoRetencion.SelectedValueExist(DbRowVenta("CveTipoRetencion").ToString())
Me.FacturarSucursal = CBool(DbRowVenta("FacturarSucursal").ToString())
If Me.FacturarSucursal Then
HabilitarFacturacionSucursal()
End If
CargaPS(-1, DdlPS)
'CARGA GV DE OC RELACIONADAS
@@ -4802,7 +4825,10 @@ Partial Class Ventas
End Sub
Private Sub CargaUsoCFDI()
DdlUsoCFDI.DataSource = GlobalDTSATUsosCFDI(UsuarioActual.Empresa.EsPersonaFisica)
DdlSucursalUsoCFDI.DataSource = GlobalDTSATUsosCFDI(UsuarioActual.Empresa.EsPersonaFisica)
DdlUsoCFDI.DataBind()
DdlSucursalUsoCFDI.DataBind()
End Sub
Private Sub CargaTiposRelacion()
DdlTiposRelacion.DataSource = GlobalDTVtaTiposRelacion
@@ -5221,6 +5247,11 @@ Partial Class Ventas
DdlSucursalCliente.Items.Insert(0, New ListItem("Matriz", "-1"))
DdlSucursalCliente.DataBind()
'SI UTILIZA EL RFC GENERICO PERMITE FACTURAR SUCURSAL
If (CveVenta <= 0 OrElse NuevaFactura = 1) AndAlso LblRFC.Text.Trim() = "XAXX010101000" Then
HabilitarFacturacionSucursal()
End If
'CargaFolios()
CargaDatosEstimaciones(CveCliente)
@@ -5576,6 +5607,11 @@ Partial Class Ventas
Private Sub CargaClienteSucursal(CveClienteSuc As Integer, Optional ByRef ObjVentas As ClsVentas = Nothing)
Me.ClienteSucursal = Nothing
Me.FacturarSucursal = False
LtlTitleRFCSucursal.Text = ""
LtlRFCSucursal.Text = ""
Dim ObjCliente As New ClsClientes
If CveClienteSuc > 0 Then
If ObjCliente.GetSucursales(CveCliente, CveClienteSuc) Then
@@ -5612,6 +5648,32 @@ Partial Class Ventas
UpParametros.Update()
End If
'SI EL CLIENTE TIENE RFC GENERICO Y LA SUCURSAL TIENE RFC DEBE FACTURAR LA SUCURSAL
If LblRFC.Text.Trim() = "XAXX010101000" AndAlso Not String.IsNullOrEmpty(ObjCliente.DtResultados.Rows(0)("RFC").ToString()) Then
Me.FacturarSucursal = True
LtlTitleRFCSucursal.Text = "RFC:"
LtlRFCSucursal.Text = ObjCliente.DtResultados.Rows(0)("RFC").ToString()
Me.ClienteSucursal = New Modelos.SucursalModel
Me.ClienteSucursal.Nombre = ObjCliente.DtResultados.Rows(0)("SucursalCliente").ToString()
Me.ClienteSucursal.RFC = ObjCliente.DtResultados.Rows(0)("RFC").ToString()
Me.ClienteSucursal.NoExt = CliNoExt
Me.ClienteSucursal.NoInt = CliNoInt
Me.ClienteSucursal.Localidad = CliLocalidad
Me.ClienteSucursal.Direccion = LblDireccion.Text
Me.ClienteSucursal.Colonia = LblColonia.Text
Me.ClienteSucursal.Municipio = LblCiudad.Text
Me.ClienteSucursal.Estado = LblEstado.Text
Me.ClienteSucursal.CP = LblCP.Text
Me.ClienteSucursal.Pais = CliPais
Me.ClienteSucursal.CorreoSucursal = CliCorreoCot.ToString()
Me.ClienteSucursal.TelefonoSucursal = LblTelefono.Text
Me.ClienteSucursal.Sucursal = If(DdlSucursalCliente.SelectedValue.ToEntero() > 0, DdlSucursalCliente.SelectedItem.Text, "")
Me.ClienteSucursal.ImprimeNombreSucursal = ImprimeNombreSucursal.ToString()
End If
If CveVenta <= 0 Then
CveMetodoPagoCliente = ObjCliente.DtResultados.Rows(0)("CveMetodoPago").ToString().ToEntero()
@@ -5666,10 +5728,12 @@ Partial Class Ventas
LnkRemisiones.Visible = If(UsuarioActual.TienePermisoProceso(199), True, False) : LnkOCs.Visible = True : LnkCotizaciones.Visible = True : LnkPedido2SinFacturar.Visible = True : InicializaAplicarNCMasiva()
End If
ObjCliente.Dispose()
UPPVentas.Update()
UpEstatus.Update()
UPCondicionesPago.Update()
ObjCliente.Dispose()
UpCliente.Update()
End Sub
Private Function CargaCreditoDisponible(tCveCliente As Integer, tCveSucursalCliente As Integer, Optional ByRef ObjVentas As ClsVentas = Nothing) As Decimal
Dim Retorno As Decimal = 0
@@ -6630,6 +6694,11 @@ Partial Class Ventas
DtOCTmpDT = TmpDT.Copy
TmpDTError = TmpDT.Copy
If (Me.FacturarSucursal AndAlso DdlSucursalCliente.SelectedValue.ToEntero() > 0 AndAlso (Me.ClienteSucursal IsNot Nothing AndAlso String.IsNullOrEmpty(Me.ClienteSucursal.RFC))) Then
Alert("La sucursal no tiene asignada un RFC.", TipoMensaje.MsgAdvertencia)
Exit Sub
End If
'CUANDO ES PEDIDO SE DEBE ESPECIFICAR EL NUMERO DE CONTRATO
If TrTipoPedido.Visible AndAlso DdlTipoPedido.SelectedIndex = 2 Then
If String.IsNullOrEmpty(TxtObsFact.Text.Trim()) Then
@@ -7904,6 +7973,10 @@ Partial Class Ventas
'ObjFacturaDevolucion.SetSucursal(Me)
ObjFacturaDevolucion.ClienteSucursal = New Modelos.SucursalModel
If Me.ClienteSucursal IsNot Nothing Then
ObjFacturaDevolucion.ClienteSucursal.RFC = Me.ClienteSucursal.RFC
ObjFacturaDevolucion.ClienteSucursal.Nombre = Me.ClienteSucursal.Nombre
End If
ObjFacturaDevolucion.ClienteSucursal.NoExt = CliNoExt
ObjFacturaDevolucion.ClienteSucursal.NoInt = CliNoInt
ObjFacturaDevolucion.ClienteSucursal.Localidad = CliLocalidad
@@ -8140,6 +8213,11 @@ Partial Class Ventas
'ObjFacturaBonificacion.SetSucursal(Me)
ObjFacturaBonificacion.ClienteSucursal = New Modelos.SucursalModel
If Me.ClienteSucursal IsNot Nothing Then
ObjFacturaBonificacion.ClienteSucursal.Nombre = Me.ClienteSucursal.Nombre
ObjFacturaBonificacion.ClienteSucursal.RFC = Me.ClienteSucursal.RFC
End If
ObjFacturaBonificacion.ClienteSucursal.NoExt = CliNoExt
ObjFacturaBonificacion.ClienteSucursal.NoInt = CliNoInt
ObjFacturaBonificacion.ClienteSucursal.Localidad = CliLocalidad
@@ -8371,7 +8449,6 @@ Partial Class Ventas
ObjFactura = New Modelos.Factura
End If
ObjFactura.Version = "3.3"
ObjFactura.CveUsuario = UsuarioActual.CveUsuario
ObjFactura.CveEmpresa = UsuarioActual.CveEmpresa
@@ -8383,7 +8460,7 @@ Partial Class Ventas
ObjFactura.Moneda = DdlMoneda.SelectedItem.Text
ObjFactura.MonedaSAT = GlobalDTMonedas.FiltroPrimeroValor("AbreviaturaSAT", $"CveMoneda = {DdlMoneda.SelectedValue}")
ObjFactura.TipoDocto = If(IfNull(ViewState("CveRemision"), 0).ToString().ToEntero() > 0, "Ing", DdlTipoComprobante.SelectedValue)
ObjFactura.FacturarSucursal = (Me.FacturarSucursal AndAlso DdlSucursalCliente.SelectedValue.ToEntero() > 0 AndAlso (Me.ClienteSucursal IsNot Nothing AndAlso Not String.IsNullOrEmpty(Me.ClienteSucursal.RFC)))
'ObjFactura.RefDocto = TxtDocto.Text.Trim
'si es cancelacion, debe de conservar el folio actual
@@ -8832,8 +8909,12 @@ Partial Class Ventas
'ObjFactura.CveSubProyecto = DdlSubProyectoDatos.SelectedValue.ToEntero()
ObjFactura.SetSubProyectoMatriz(Me)
ObjFactura.SetSubProyecto(Me)
ObjFactura.ClienteSucursal = New Modelos.SucursalModel
ObjFactura.ClienteSucursal = New Modelos.SucursalModel()
If Not CveEmpresaCRM > 0 Then
If Me.ClienteSucursal IsNot Nothing Then
ObjFactura.ClienteSucursal.RFC = Me.ClienteSucursal.RFC
ObjFactura.ClienteSucursal.Nombre = Me.ClienteSucursal.Nombre
End If
ObjFactura.ClienteSucursal.NoExt = CliNoExt
ObjFactura.ClienteSucursal.NoInt = CliNoInt
ObjFactura.ClienteSucursal.Localidad = CliLocalidad
@@ -9232,7 +9313,12 @@ Partial Class Ventas
ObjFacturaDevolucion.CveSubProyecto = DdlSubProyectoDatos.SelectedValue.ToEntero()
ObjFacturaDevolucion.SetSubProyectoMatriz(Me)
ObjFacturaDevolucion.SetSubProyecto(Me)
ObjFacturaDevolucion.ClienteSucursal = New Modelos.SucursalModel
If Me.ClienteSucursal IsNot Nothing Then
ObjFacturaDevolucion.ClienteSucursal.RFC = Me.ClienteSucursal.RFC
ObjFacturaDevolucion.ClienteSucursal.Nombre = Me.ClienteSucursal.Nombre
End If
ObjFacturaDevolucion.ClienteSucursal.NoExt = CliNoExt
ObjFacturaDevolucion.ClienteSucursal.NoInt = CliNoInt
ObjFacturaDevolucion.ClienteSucursal.Localidad = CliLocalidad
@@ -9245,6 +9331,7 @@ Partial Class Ventas
ObjFacturaDevolucion.ClienteSucursal.CorreoSucursal = CliCorreoCot.ToString()
ObjFacturaDevolucion.ClienteSucursal.TelefonoSucursal = LblTelefono.Text
ObjFacturaDevolucion.ClienteSucursal.Sucursal = If(DdlSucursalCliente.SelectedValue.ToEntero() > 0, DdlSucursalCliente.SelectedItem.Text, "")
ObjFacturaDevolucion.ClienteSucursal.ImprimeNombreSucursal = ImprimeNombreSucursal.ToString()
'ENVIO DIRECCION
ObjFacturaDevolucion.EnviarA = New Modelos.EnviarAModel
@@ -9292,13 +9379,18 @@ Partial Class Ventas
Timbre.Comprobante.Confirmacion = ""
Timbre.Receptor.RFC = Obj.Cliente.RFC
Timbre.Receptor.Nombre = Obj.Cliente.Nombre
If Obj.FacturarSucursal Then
Timbre.Receptor.RFC = Obj.ClienteSucursal.RFC
Timbre.Receptor.Nombre = Obj.ClienteSucursal.Nombre
Else
Timbre.Receptor.RFC = Obj.Cliente.RFC
Timbre.Receptor.Nombre = Obj.Cliente.Nombre
End If
Timbre.Receptor.ResidenciaFiscal = ""
Timbre.Receptor.NumeroRegistroTributario = ""
Timbre.Receptor.UsoCFDI = Obj.ClaveUsoCFDI
If HdnTipoDescuento.Value = "3" And DdlTipoAmortizacionAnticipo.SelectedValue.ToEntero() > 0 Then
Timbre.CFDIRelacionados.TipoRelacion = "07"
@@ -9367,8 +9459,6 @@ Partial Class Ventas
End If
Dim totSubTotal As Decimal = Obj.SubTotal
Dim totIVA As Decimal = Obj.IVA
Dim totRetIVA As Decimal = Obj.RetIVA
@@ -9936,7 +10026,7 @@ Partial Class Ventas
CveVentaRelacion:=(If(factura.CveVentaRelacion.ToEntero() > 0, factura.CveVentaRelacion, -1)), ImporteRelacion:=(If(factura.ImporteRelacion <> Nothing, factura.ImporteRelacion, -1)),
CveTipoAmortizacionAnticipo:=factura.CveTipoAmortizacionAnticipo, CveEmpresaCRM:=CveEmpresaCRM, EsInterno:=EsInterno, CveAcercamientoCRM:=CveAcercamientoCRM,
DiasCredito:=factura.DiasCredito, EsDiasCreditoFijo:=factura.EsDiasCreditoFijo, AnticipoEspecial:=If(TrAntEspecial.Visible, ChkAntEspecial.Checked, False),
Kilometraje:=TxtKilometraje.Text.ToDouble, EsAmortizacion:=EsNCAmortizacion, CveTipoRetencion:=factura.CveTipoRetencion, CorreoNotificacion:=TxtCorreoNotificaciones.Text, FormaPaqueteria:=RblPaqueteria.SelectedValue.ToEntero) Then
Kilometraje:=TxtKilometraje.Text.ToDouble, EsAmortizacion:=EsNCAmortizacion, CveTipoRetencion:=factura.CveTipoRetencion, CorreoNotificacion:=TxtCorreoNotificaciones.Text, FormaPaqueteria:=RblPaqueteria.SelectedValue.ToEntero, FacturarSucursal:=factura.FacturarSucursal) Then
ErrorList.Add("Ocurrió un error al Generar la Venta.<br />Revise su factura y cualquier detalle comuníquese a Soporte Técnico")
Else
If factura.TipoDocto.Contiene("Dev", "Egs") Or DtVentasNC IsNot Nothing Or CveEstatusRefacturacion = 1 Then
@@ -15027,7 +15117,11 @@ Partial Class Ventas
DdlVendedor.SelectedValue = "0"
DdlVendedor.Items.Insert(0, New ListItem("Sin Asignar", "0"))
DdlVendedorSucursal.DataSource = DdlVendedor.DataSource
DdlVendedor.DataBind()
DdlVendedorSucursal.DataBind()
DdlVendedor.SelectedValueExist(CveVendedorActual)
@@ -16709,6 +16803,84 @@ Partial Class Ventas
Protected Sub TxtFolio_TextChanged(sender As Object, e As System.EventArgs) Handles TxtFolio.TextChanged
ViewState("EstablecioFolio") = True
End Sub
Private Sub HabilitarFacturacionSucursal()
trsucursalciente.Visible = True
LnkAgregarSucursal.Visible = True
LblSucursal.Text = "Cliente"
If (CveVenta <= 0 OrElse NuevaFactura = 1) Then
DdlSucursalCliente.Enabled = True
End If
DdlSucursalCliente_SelectedIndexChanged(DdlSucursalCliente, EventArgs.Empty)
UpCliente.Update()
End Sub
Protected Sub ChkFacturarSucursal_CheckedChanged(sender As Object, e As EventArgs)
End Sub
Protected Sub LnkAgregarSucursal_Click(sender As Object, e As EventArgs)
RegistraScript("showDivAgregarSucursal();")
End Sub
Protected Sub BtnAgregar_Click(sender As Object, e As System.EventArgs) Handles BtnAgregarSucursal.Click
Dim LT As String = "0"
Dim LG As String = "0"
If CveCliente > 0 Then
Dim ObjCliente As New ClsClientes
Try
If ObjCliente.AddSucursal(CveCliente, TxtNombreSucursal.Text.Trim, UsuarioActual.CveUsuario, TxtCiudadSucursal.Text.Trim, TxtColoniaSucursal.Text.Trim, TxtCPSucursal.Text.Trim, TxtDireccionSucursal.Text.Trim, TxtEstadoSucursal.Text.Trim, TxtLocalidadSucursal.Text.Trim, TxtPaisSucursal.Text.Trim, TxtNumExtSucursal.Text.Trim, TxtNumIntSucursal.Text.Trim, TxtTelefonoSucursal.Text.Trim.Replace(" ", "").Replace("(", "").Replace(")", "").Replace("-", ""), TxtCorreoSucursal.Text.Trim, "", "",
DdlVendedorSucursal.SelectedValue.ToEntero, "", -1, 0, -1, DdlSucursalUsoCFDI.SelectedValue.ToEntero, -1, -1, LT:=LT, LG:=LG, RFC:=TxtRFCSucursal.Text.Trim()) Then
TxtNombreSucursal.Text = ""
TxtCiudadSucursal.Text = ""
TxtColoniaSucursal.Text = ""
TxtCPSucursal.Text = ""
TxtDireccionSucursal.Text = ""
TxtEstadoSucursal.Text = ""
TxtLocalidadSucursal.Text = ""
TxtPaisSucursal.Text = ""
TxtNumExtSucursal.Text = ""
TxtNumIntSucursal.Text = ""
TxtTelefonoSucursal.Text = ""
TxtCorreoSucursal.Text = ""
DdlVendedorSucursal.SelectedIndex = 0
DdlSucursalUsoCFDI.SelectedIndex = 0
Alert("La nueva Sucursal del Cliente se guardó correctamente.", TipoMensaje.MsgInformacion)
'VUELVE A CARGAR LAS SUCURSALES
DdlSucursalCliente.Items.Clear()
If ObjCliente.GetSucursales(CveCliente) Then
DdlSucursalCliente.DataSource = ObjCliente.DtResultados
If ObjCliente.DtResultados.Rows.Count > 0 Then
trsucursalciente.Visible = True
Else
trsucursalciente.Visible = False
End If
Else
trsucursalciente.Visible = False
DdlSucursalCliente.DataSource = Nothing
End If
DdlSucursalCliente.Items.Insert(0, New ListItem("Matriz", "-1"))
DdlSucursalCliente.DataBind()
End If
Catch ex As Exception
OnError("Ocurrió un error al agregar la sucursal", ex)
End Try
ObjCliente.Dispose()
End If
UpCliente.Update()
RegistraScript("hideDivAgregarSucursal();")
End Sub
Private Sub ConfiguraTipoDocto()
'Esconde Todo
@@ -17824,6 +17996,11 @@ Partial Class Ventas
Dim TotalT As Decimal = TxtTotal.Text.ToDecimal
Dim RFCReceptor As String = LblRFC.Text.Trim
'SI SE FACTURO LA SUCURSAL DEL CLIENTE TOMA EL RFC DE ESTA
If FacturarSucursal AndAlso Me.ClienteSucursal IsNot Nothing Then
RFCReceptor = Me.ClienteSucursal.RFC
End If
Dim SWatch As New Stopwatch
SWatch.Start()
@@ -20040,6 +20217,12 @@ Partial Class Ventas
Dim TotalT As Decimal = TxtTotal.Text.ToDecimal
Dim RFCReceptor As String = LblRFC.Text.Trim
'SI SE FACTURO LA SUCURSAL DEL CLIENTE TOMA EL RFC DE ESTA
If FacturarSucursal AndAlso Me.ClienteSucursal IsNot Nothing Then
RFCReceptor = Me.ClienteSucursal.RFC
End If
Dim SWatch As New Stopwatch
SWatch.Start()
Dim Vigencia = Timbrado.VerificarVigenciaSAT(FolioFiscal, UsuarioActual.Empresa.RFC, RFCReceptor, TotalT.ToString(), True)
@@ -25953,6 +26136,12 @@ Partial Class Ventas
Return Retorno
End Function
Private Sub EmitirDocumentoNuevo(TipoDoctoNuevo As String)
If (FacturarSucursal AndAlso DdlSucursalCliente.SelectedValue.ToEntero() > 0 AndAlso (Me.ClienteSucursal IsNot Nothing AndAlso String.IsNullOrEmpty(Me.ClienteSucursal.RFC))) Then
Alert("La sucursal no tiene asignada un RFC.", TipoMensaje.MsgAdvertencia)
Exit Sub
End If
If GvPagos.Rows.Count = 0 And UsuarioActual.Empresa.Funcionalidad(558).ToEntero() = 1 And RBLPago.SelectedValue.ToEntero() = 2 Then
Alert("No se puede facturar hasta que se haya especificado detalladamente la forma de pago", TipoMensaje.MsgAdvertencia)
Else