Utilizar direcciones de envio como destinatario en comercio exterior en Ventas.aspx, alta de regimen fiscal en clientes desde PV.aspx

This commit is contained in:
2022-12-03 16:17:55 -07:00
parent 34004c31fa
commit 878b406d27
10 changed files with 335 additions and 151 deletions

View File

@@ -1499,8 +1499,9 @@ Public Class ClsClientes
#Region "D I R E C C I O N D E E N V I O "
Public Function DireccionEnvioAdd(CveCliente As Integer, EnvioDireccion As String, EnvioNoExt As String, EnvioNoInt As String, EnvioColonia As String, EnvioCiudad As String, EnvioEstado As String,
EnvioCP As Integer, EnvioContacto As String, CveUsuario As Integer, Estatus As Integer, Optional CveClienteSucursal As Integer = -1, Optional EnvioDepartamento As String = "-1", Optional EnvioTel As String = "-1",
Optional CvePais As Integer = -1, Optional CveEstado As Integer = -1, Optional CveMunicipio As Integer = -1, Optional CveLocalidad As Integer = -1, Optional CveColonia As Integer = -1, Optional CveSubProyecto As Integer = -1, Optional CveEmpresa As Integer = -1) As Integer
EnvioCP As String, EnvioContacto As String, CveUsuario As Integer, Estatus As Integer, Optional CveClienteSucursal As Integer = -1, Optional EnvioDepartamento As String = "-1", Optional EnvioTel As String = "-1",
Optional CvePais As Integer = -1, Optional CveEstado As Integer = -1, Optional CveMunicipio As Integer = -1, Optional CveLocalidad As Integer = -1, Optional CveColonia As Integer = -1, Optional CveSubProyecto As Integer = -1, Optional CveEmpresa As Integer = -1,
Optional COM_NumRegIdTrib As String = "") As Integer
Dim Retorno As Integer = -1
DataAdapter("PA_Vta_ClientesDireccionesEnvioAdd")
@@ -1513,7 +1514,7 @@ Public Class ClsClientes
.Add("@EnvioColonia", SqlDbType.VarChar).Value = EnvioColonia
.Add("@EnvioCiudad", SqlDbType.VarChar).Value = EnvioCiudad
.Add("@EnvioEstado", SqlDbType.VarChar).Value = EnvioEstado
.Add("@EnvioCP", SqlDbType.Int).Value = EnvioCP
.Add("@EnvioCP", SqlDbType.VarChar).Value = EnvioCP
.Add("@EnvioContacto", SqlDbType.VarChar).Value = EnvioContacto
.Add("@EnvioDepartamento", SqlDbType.VarChar).Value = EnvioDepartamento
.Add("@EnvioTel", SqlDbType.VarChar).Value = EnvioTel
@@ -1527,6 +1528,7 @@ Public Class ClsClientes
.Add("@CveLocalidad", SqlDbType.Int).Value = CveLocalidad
.Add("@CveColonia", SqlDbType.Int).Value = CveColonia
.Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa
.Add("@COM_NumRegIdTrib", SqlDbType.VarChar).Value = COM_NumRegIdTrib
.Add("@CveDireccionEnvio", SqlDbType.Int).Direction = ParameterDirection.Output
End With
@@ -1561,8 +1563,9 @@ Public Class ClsClientes
End Function
Public Function DireccionEnvioUpdate(CveCliente As Integer, EnvioDireccion As String, EnvioNoExt As String, EnvioNoInt As String, EnvioColonia As String, EnvioCiudad As String, EnvioEstado As String,
EnvioCP As Integer, EnvioContacto As String, CveUsuario As Integer, Estatus As Integer, CveDireccionEnvio As Integer, Optional EnvioDepartamento As String = "-1", Optional CveClienteSucursal As Integer = -1, Optional EnvioTel As String = "-1",
Optional CvePais As Integer = -1, Optional CveEstado As Integer = -1, Optional CveMunicipio As Integer = -1, Optional CveLocalidad As Integer = -1, Optional CveColonia As Integer = -1, Optional CveSubProyecto As Integer = -1) As Boolean
EnvioCP As String, EnvioContacto As String, CveUsuario As Integer, Estatus As Integer, CveDireccionEnvio As Integer, Optional EnvioDepartamento As String = "-1", Optional CveClienteSucursal As Integer = -1, Optional EnvioTel As String = "-1",
Optional CvePais As Integer = -1, Optional CveEstado As Integer = -1, Optional CveMunicipio As Integer = -1, Optional CveLocalidad As Integer = -1, Optional CveColonia As Integer = -1, Optional CveSubProyecto As Integer = -1,
Optional COM_NumRegIdTrib As String = "") As Boolean
Dim Retorno As Boolean = False
DataAdapter("PA_Vta_ClientesDireccionesEnvioUpdate")
@@ -1578,7 +1581,7 @@ Public Class ClsClientes
.Add("@EnvioEstado", SqlDbType.VarChar).Value = EnvioEstado
.Add("@EnvioContacto", SqlDbType.VarChar).Value = EnvioContacto
.Add("@EnvioDepartamento", SqlDbType.VarChar).Value = EnvioDepartamento
.Add("@EnvioCP", SqlDbType.Int).Value = EnvioCP
.Add("@EnvioCP", SqlDbType.VarChar).Value = EnvioCP
.Add("@EnvioTel", SqlDbType.VarChar).Value = EnvioTel
.Add("@CveUsuario", SqlDbType.Int).Value = CveUsuario
.Add("@Estatus", SqlDbType.Int).Value = Estatus
@@ -1589,6 +1592,7 @@ Public Class ClsClientes
.Add("@CveMunicipio", SqlDbType.Int).Value = CveMunicipio
.Add("@CveLocalidad", SqlDbType.Int).Value = CveLocalidad
.Add("@CveColonia", SqlDbType.Int).Value = CveColonia
.Add("@COM_NumRegIdTrib", SqlDbType.VarChar).Value = COM_NumRegIdTrib
End With

View File

@@ -536,7 +536,7 @@ Partial Class Inventarios_CartaPorteManual
Dim EnvioDireccion As String = GvRow.DataKey("EnvioDireccion")
Dim EnvioNoExt As String = GvRow.DataKey("EnvioNoExt")
Dim EnvioNoInt As String = GvRow.DataKey("EnvioNoInt")
Dim EnvioCP As Integer = GvRow.DataKey("EnvioCP").ToEntero
Dim EnvioCP As String = GvRow.DataKey("EnvioCP")
Dim CvePais As Integer = GvRow.DataKey("CvePais").ToEntero
Dim CveEstado As Integer = GvRow.DataKey("CveEstado").ToEntero

View File

@@ -1094,7 +1094,7 @@ public partial class General_RepEntregaAlmacenRuta : ClsPaginas
bool ErrorProceso = false;
//CveDireccionEditar
if (!ObjCli.DireccionEnvioUpdate(-1, TxtEnvioDireccion.Text, TxtEnvioNoExt.Text, TxtEnvioNoInt.Text, "-1", "-1", "-1", TxtEnvioCP.Text.ToEntero(), "-1", UsuarioActual.CveUsuario, -1, CveDireccionEditar, "-1", -1, "-1",
if (!ObjCli.DireccionEnvioUpdate(-1, TxtEnvioDireccion.Text, TxtEnvioNoExt.Text, TxtEnvioNoInt.Text, "-1", "-1", "-1", TxtEnvioCP.Text, "-1", UsuarioActual.CveUsuario, -1, CveDireccionEditar, "-1", -1, "-1",
DdlDirClientePais.SelectedValue.ToEntero(), DdlDirClienteEstado.SelectedValue.ToEntero(), DdlDirClienteMunicipio.SelectedValue.ToEntero(), DdlDirClienteLocalidad.SelectedValue.ToEntero(), DdlDirClienteColonia.SelectedValue.ToEntero()))
{
ErrorProceso = true;

View File

@@ -7800,7 +7800,7 @@ Partial Class OC_OC
Dim TieneError = False
Dim Estatus = If(ChkEstatus.Checked, 1, 0)
CveDireccionEnvio = ObjClientes.DireccionEnvioAdd(Ddlcliente.txtValue.Value.ToEntero, TxtEnvioDireccion.Text.Trim, TxtEnvioNoExt.Text.Trim, TxtEnvioNoInt.Text.Trim, TxtEnvioColonia.Text.Trim, TxtEnvioCiudad.Text.Trim, TxtEnvioEstado.Text.Trim, TxtEnvioCP.Text.ToEntero, TxtEnvioContacto.Text.Trim, UsuarioActual.CveUsuario, Estatus, CveClienteSucursal:=DdlClienteSucursalEnvio.SelectedValue.ToEntero, EnvioTel:=TxtEnvioTel.Text.Trim.Replace(" ", "").Replace("(", "").Replace(")", "").Replace("-", "").Replace("_", ""))
CveDireccionEnvio = ObjClientes.DireccionEnvioAdd(Ddlcliente.txtValue.Value.ToEntero, TxtEnvioDireccion.Text.Trim, TxtEnvioNoExt.Text.Trim, TxtEnvioNoInt.Text.Trim, TxtEnvioColonia.Text.Trim, TxtEnvioCiudad.Text.Trim, TxtEnvioEstado.Text.Trim, TxtEnvioCP.Text, TxtEnvioContacto.Text.Trim, UsuarioActual.CveUsuario, Estatus, CveClienteSucursal:=DdlClienteSucursalEnvio.SelectedValue.ToEntero, EnvioTel:=TxtEnvioTel.Text.Trim.Replace(" ", "").Replace("(", "").Replace(")", "").Replace("-", "").Replace("_", ""))
If CveDireccionEnvio < 0 Then
TieneError = True

View File

@@ -856,7 +856,7 @@
</div>
<div class="portlet-body form">
<asp:GridView ID="GvDireccionesEnvio" runat="server" Width="100%" GridLines="None"
DataKeyNames="CveDireccionEnvio,CveCliente,CveClienteSucursal,EnvioDireccion,EnvioColonia,EnvioCiudad,EnvioEstado,EnvioCP,CveUsuario,Estatus,EnvioNoExt,EnvioNoInt,EnvioContacto,EnvioDepartamento,EnvioTel,CvePais,CveEstado,CveMunicipio,CveLocalidad,CveColonia,CveSubProyecto"
DataKeyNames="CveDireccionEnvio,CveCliente,CveClienteSucursal,EnvioDireccion,EnvioColonia,EnvioCiudad,EnvioEstado,EnvioCP,CveUsuario,Estatus,EnvioNoExt,EnvioNoInt,EnvioContacto,EnvioDepartamento,EnvioTel,CvePais,CveEstado,CveMunicipio,CveLocalidad,CveColonia,CveSubProyecto,COM_NumRegIdTrib"
CssClass="table table-striped table-advance table-hover mysmallbtn ScrollAD" AutoGenerateColumns="False" EmptyDataText="No se encontraron registros" ToolTip="Listado de direcciones de envio">
<Columns>
<asp:TemplateField>
@@ -5294,7 +5294,7 @@
<div class="col-md-6">
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtEnvioCP" runat="server" Width="100%" CssClass="form-control" CausesValidation="true" TextMode="Number" onblur="DirclienteValidaCodigoPostal()" onkeypress="if(event.key === 'Enter'){return false;}"></asp:TextBox>
<asp:TextBox ID="TxtEnvioCP" runat="server" Width="100%" CssClass="form-control" CausesValidation="true" onblur="DirclienteValidaCodigoPostal()" onkeypress="if(event.key === 'Enter'){return false;}"></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator14" runat="server" CssClass="help-block errorimput" ControlToValidate="TxtEnvioCP" 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="GrpObligatorio"></asp:RequiredFieldValidator>
<label for="<%= TxtEnvioCP.ClientID.ToString()%>">Código Postal:</label>
</div>
@@ -5325,10 +5325,7 @@
</div>
</div>
<div class="row">
<div class="col-md-6">
<div class="form-group form-md-line-input input-iconright">
<asp:DropDownList ID="DdlDirClienteMunicipio" AutoPostBack="true" AppendDataBoundItems="true" OnSelectedIndexChanged="DdlDirClienteMunicipio_SelectedIndexChanged" runat="server" DataTextField="Descripcion" DataValueField="CveMunicipio" CssClass="form-control select2me" Width="100%" CausesValidation="true">
@@ -5339,21 +5336,17 @@
</div>
</div>
<div class="col-md-6">
<div class="form-group form-md-line-input input-iconright">
<asp:DropDownList runat="server" ID="DdlDirClienteLocalidad" CssClass="form-control select2me" DataValueField="CveLocalidad" DataTextField="NombreLocalidad" Width="100%" CausesValidation="true"></asp:DropDownList>
<%--<asp:RequiredFieldValidator ID="RfvDdlDirClienteLocalidad" InitialValue="-1" runat="server" CssClass="help-block errorimput" ControlToValidate="DdlDirClienteLocalidad" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Localidad''</b> es necesario, por favor ingréselo." ValidationGroup="GrpObligatorio"></asp:RequiredFieldValidator>--%>
<label for="<%= DdlDirClienteLocalidad.ClientID.ToString()%>">Localidad:</label>
<i></i>
</div>
</div>
</div>
<div class="row">
<div class="col-md-6">
<div class="form-group form-md-line-input input-iconright">
<asp:DropDownList ID="DdlDirClienteColonia" runat="server" AppendDataBoundItems="true" DataTextField="NombreAsentamiento" DataValueField="CveColonia" CssClass="form-control select2me" Width="100%" AutoPostBack="true" OnSelectedIndexChanged="DdlDirClienteColonia_SelectedIndexChanged" CausesValidation="true">
</asp:DropDownList>
@@ -5361,18 +5354,14 @@
<label for="<%= DdlDirClienteColonia.ClientID.ToString()%>">Colonia:</label>
<i></i>
</div>
</div>
<div class="col-md-6">
<div class="form-group form-md-line-input">
<asp:TextBox ID="TxtCom_NumRegIdTrib" runat="server" CssClass="form-control" MaxLength="50"></asp:TextBox>
<label for="<%= TxtCom_NumRegIdTrib.ClientID.ToString()%>">(Com. Ext.) Num. Reg. IdTrib.</label>
</div>
</div>
</div>
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtEnvioTel" runat="server" Width="100%" CssClass="form-control" CausesValidation="true"></asp:TextBox>
<%--<asp:RequiredFieldValidator ID="RequiredFieldValidator17" runat="server" CssClass="help-block errorimput" ControlToValidate="TxtEnvioTel" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Telefono''</b> es necesario, por favor ingréselo." ValidationGroup="GrpObligatorio"></asp:RequiredFieldValidator>--%>

View File

@@ -4583,17 +4583,21 @@ Partial Class Clientes
Private Sub DirClientevalidaCodigoPostal()
Dim CPTxt As Integer = TxtEnvioCP.Text.ToEntero()
'EN JAPON NO SE MANEJA CP NUMERICO
If DdlDirClientePais.SelectedValue.ToEntero() <> 122 Then
Dim CPTxt As Integer = TxtEnvioCP.Text.ToEntero()
Dim CveColonia As Integer = DdlDirClienteColonia.SelectedValue.ToEntero
Dim CveColonia As Integer = DdlDirClienteColonia.SelectedValue.ToEntero
If CPTxt > 0 And CveColonia > 0 Then
Dim CP As Integer = GlobalDTGralColonias("-1", "-1", "-1", CveColonia:=CveColonia).FiltroPrimeroValor("CP", "").ToEntero
If CPTxt <> CP Then
Alert("El código postal selecionado es diferente del codigo postal de la Colonia.", TipoMensaje.MsgAdvertencia)
If CPTxt > 0 And CveColonia > 0 Then
Dim CP As Integer = GlobalDTGralColonias("-1", "-1", "-1", CveColonia:=CveColonia).FiltroPrimeroValor("CP", "").ToEntero
If CPTxt <> CP Then
Alert("El código postal selecionado es diferente del codigo postal de la Colonia.", TipoMensaje.MsgAdvertencia)
End If
End If
End If
End Sub
@@ -4636,6 +4640,7 @@ Partial Class Clientes
DdlClienteSucursalEnvio.SelectedValueExist("-1")
End If
TxtCom_NumRegIdTrib.Text = GvRow.DataKey("COM_NumRegIdTrib")
Dim CveSubProyectoClienteSucursal As Integer = GvRow.DataKey("CveSubProyecto").ToEntero
@@ -4644,6 +4649,8 @@ Partial Class Clientes
DdlSubProyectoClienteSucursal.SelectedValueExist(CveSubProyectoClienteSucursal)
End If
BtnAgregarDireccion.Text = "Actualizar"
UpAddDireccion.Update()
RegistraScript("$('#divAddDireccionEnvio').modal();")
End Sub
@@ -4653,16 +4660,16 @@ Partial Class Clientes
Dim Estatus = If(ChkEstatus.Checked, 1, 0)
If CveDireccionEnvio < 0 Then
CveDireccionEnvio = ObjClientes.DireccionEnvioAdd(CveCliente, TxtEnvioDireccion.Text.Trim, TxtEnvioNoExt.Text.Trim, TxtEnvioNoInt.Text.Trim, TxtEnvioColonia.Text.Trim, TxtEnvioCiudad.Text.Trim, TxtEnvioEstado.Text.Trim, TxtEnvioCP.Text.ToEntero(), TxtEnvioContacto.Text.Trim, UsuarioActual.CveUsuario, Estatus, CveClienteSucursal:=DdlClienteSucursalEnvio.SelectedValue.ToEntero(), EnvioTel:=TxtEnvioTel.Text.Trim.Replace(" ", "").Replace("(", "").Replace(")", "").Replace("-", "").Replace("_", ""),
CvePais:=DdlDirClientePais.SelectedValue.ToEntero, CveEstado:=DdlDirClienteEstado.SelectedValue.ToEntero, CveMunicipio:=DdlDirClienteMunicipio.SelectedValue.ToEntero, CveLocalidad:=DdlDirClienteLocalidad.SelectedValue.ToEntero, CveColonia:=DdlDirClienteColonia.SelectedValue.ToEntero, CveSubProyecto:=DdlSubProyectoClienteSucursal.SelectedValue.ToEntero)
CveDireccionEnvio = ObjClientes.DireccionEnvioAdd(CveCliente, TxtEnvioDireccion.Text.Trim, TxtEnvioNoExt.Text.Trim, TxtEnvioNoInt.Text.Trim, TxtEnvioColonia.Text.Trim, TxtEnvioCiudad.Text.Trim, TxtEnvioEstado.Text.Trim, TxtEnvioCP.Text.Trim(), TxtEnvioContacto.Text.Trim, UsuarioActual.CveUsuario, Estatus, CveClienteSucursal:=DdlClienteSucursalEnvio.SelectedValue.ToEntero(), EnvioTel:=TxtEnvioTel.Text.Trim.Replace(" ", "").Replace("(", "").Replace(")", "").Replace("-", "").Replace("_", ""),
CvePais:=DdlDirClientePais.SelectedValue.ToEntero, CveEstado:=DdlDirClienteEstado.SelectedValue.ToEntero, CveMunicipio:=DdlDirClienteMunicipio.SelectedValue.ToEntero, CveLocalidad:=DdlDirClienteLocalidad.SelectedValue.ToEntero, CveColonia:=DdlDirClienteColonia.SelectedValue.ToEntero, CveSubProyecto:=DdlSubProyectoClienteSucursal.SelectedValue.ToEntero, COM_NumRegIdTrib:=TxtCom_NumRegIdTrib.Text.Trim())
If CveDireccionEnvio < 0 Then
TieneError = True
End If
Else
If Not ObjClientes.DireccionEnvioUpdate(CveCliente, TxtEnvioDireccion.Text.Trim, TxtEnvioNoExt.Text.Trim, TxtEnvioNoInt.Text.Trim, TxtEnvioColonia.Text.Trim, TxtEnvioCiudad.Text.Trim, TxtEnvioEstado.Text.Trim, TxtEnvioCP.Text.ToEntero(), TxtEnvioContacto.Text.Trim, UsuarioActual.CveUsuario, Estatus, CveDireccionEnvio, CveClienteSucursal:=DdlClienteSucursalEnvio.SelectedValue.ToEntero(), EnvioTel:=TxtEnvioTel.Text.Trim.Replace(" ", "").Replace("(", "").Replace(")", "").Replace("-", "").Replace("_", ""),
CvePais:=DdlDirClientePais.SelectedValue.ToEntero, CveEstado:=DdlDirClienteEstado.SelectedValue.ToEntero, CveMunicipio:=DdlDirClienteMunicipio.SelectedValue.ToEntero, CveLocalidad:=DdlDirClienteLocalidad.SelectedValue.ToEntero, CveColonia:=DdlDirClienteColonia.SelectedValue.ToEntero, CveSubProyecto:=DdlSubProyectoClienteSucursal.SelectedValue.ToEntero) Then
If Not ObjClientes.DireccionEnvioUpdate(CveCliente, TxtEnvioDireccion.Text.Trim, TxtEnvioNoExt.Text.Trim, TxtEnvioNoInt.Text.Trim, TxtEnvioColonia.Text.Trim, TxtEnvioCiudad.Text.Trim, TxtEnvioEstado.Text.Trim, TxtEnvioCP.Text.Trim(), TxtEnvioContacto.Text.Trim, UsuarioActual.CveUsuario, Estatus, CveDireccionEnvio, CveClienteSucursal:=DdlClienteSucursalEnvio.SelectedValue.ToEntero(), EnvioTel:=TxtEnvioTel.Text.Trim.Replace(" ", "").Replace("(", "").Replace(")", "").Replace("-", "").Replace("_", ""),
CvePais:=DdlDirClientePais.SelectedValue.ToEntero, CveEstado:=DdlDirClienteEstado.SelectedValue.ToEntero, CveMunicipio:=DdlDirClienteMunicipio.SelectedValue.ToEntero, CveLocalidad:=DdlDirClienteLocalidad.SelectedValue.ToEntero, CveColonia:=DdlDirClienteColonia.SelectedValue.ToEntero, CveSubProyecto:=DdlSubProyectoClienteSucursal.SelectedValue.ToEntero, COM_NumRegIdTrib:=TxtCom_NumRegIdTrib.Text.Trim()) Then
TieneError = True
End If
@@ -4698,6 +4705,7 @@ Partial Class Clientes
'DdlDirClienteLocalidad.SelectedValueExist(-1)
'DdlDirClienteColonia.SelectedValueExist(-1)
BtnAgregarDireccion.Text = "Agregar"
UpAddDireccion.Update()
RegistraScript("$('#divAddDireccionEnvio').modal();")
End Sub

View File

@@ -2464,7 +2464,6 @@
<asp:UpdatePanel ID="UpAgregarCliente" class="modal-content rowpadding" tabindex="-1" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<div class="portlet-title">
<div class="caption font-green">
<i class="fa fa-users font-green"></i>
@@ -2475,47 +2474,32 @@
</div>
</div>
</div>
<div class="modal-body">
<div class="row" style="padding-left: 16px;">
<div class="form-group form-md-line-input input-iconright col-xs-9">
<asp:TextBox ID="TxtRFCCliente" Text="XAXX010101000" Style="text-transform: uppercase;" placeholder="Ingrese el RFC para su validación" runat="server" CssClass="form-control" MaxLength="13" CausesValidation="true"></asp:TextBox>
<asp:RegularExpressionValidator ID="REVRFCCliente" 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="GrpGuardarCliente" ControlToValidate="TxtRFCCliente" ValidationExpression="^[a-zñA-ZÑ.)(/\\&-]{3,4}(\d{6})((\D|\d){2})((\D|\d){1})$"></asp:RegularExpressionValidator>
<label for="<%= TxtRFCCliente.ClientID.ToString()%>">RFC:</label>
<div class="col-md-8">
<div class="row">
<div class="form-group form-md-line-input input-iconright col-xs-9">
<asp:TextBox ID="TxtRFCCliente" Style="text-transform: uppercase;" placeholder="Ingrese el RFC para su validación" runat="server" CssClass="form-control" MaxLength="13" CausesValidation="true"></asp:TextBox>
<asp:RegularExpressionValidator ID="REVRFCCliente" 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="GrpGuardarCliente" ControlToValidate="TxtRFCCliente" ValidationExpression="^[a-zñA-ZÑ.)(/\\&-]{3,4}(\d{6})((\D|\d){2})((\D|\d){1})$"></asp:RegularExpressionValidator>
<label for="<%= TxtRFCCliente.ClientID.ToString()%>">RFC:</label>
</div>
<div class="form-group form-md-line-input input-iconright col-xs-3">
<asp:Button ID="BtnValidarRFC" runat="server" CssClass="btn btn-success" Text="Validar" />
</div>
</div>
</div>
<div class="form-group form-md-line-input input-iconright col-xs-3">
<asp:Button ID="BtnValidarRFC" runat="server" CssClass="btn btn-success" Text="Validar" />
</div>
</div>
<div class="row">
<div class="col-md-12">
<div class="col-md-4">
<div runat="server" id="DivTipoPersona" visible="false" class="form-group form-md-line-input input-iconright">
<asp:RadioButtonList runat="server" ID="RdTipoPersona" RepeatDirection="Horizontal" OnSelectedIndexChanged="RdTipoPersona_SelectedIndexChanged" AutoPostBack="true" CssClass="form-control">
<asp:ListItem Value="0">Física</asp:ListItem>
<asp:ListItem Value="1">Moral</asp:ListItem>
</asp:RadioButtonList>
<label for="<%= RdTipoPersona.ClientID.ToString()%>">Tipo Persona:</label>
<i></i>
</div>
</div>
</div>
<div class="row">
<div class="col-md-12" runat="server" id="DivRazonSocial2">
<div id="DivNombreCliente" runat="server" visible="false" class="form-group form-md-line-input input-iconright">
@@ -2533,8 +2517,6 @@
</div>
</div>
<div id="DivDireccionCliente" runat="server" visible="false" class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtDireccionCliente" CssClass="form-control " runat="server" MaxLength="90" CausesValidation="true"></asp:TextBox>
<asp:RequiredFieldValidator ID="RFVDireccionC" runat="server" ControlToValidate="TxtDireccionCliente" 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="GrpGuardarCliente"></asp:RequiredFieldValidator>
@@ -2543,6 +2525,7 @@
<div id="DivNumeroCPCliente" runat="server" visible="false" class="row" style="padding-left: 16px;">
<div class="form-group form-md-line-input input-iconright col-xs-4">
<asp:TextBox ID="TxtCPCliente" CssClass="form-control " runat="server" MaxLength="5" CausesValidation="true"></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator5" runat="server" ControlToValidate="TxtCPCliente" 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="GrpGuardarCliente"></asp:RequiredFieldValidator>
<label for="<%= TxtCPCliente.ClientID.ToString()%>">Código Postal:</label>
</div>
<div class="form-group form-md-line-input input-iconright col-xs-4">
@@ -2555,29 +2538,37 @@
<label for="<%= TxtNumIntCliente.ClientID.ToString()%>">Número Interior:</label>
</div>
</div>
<div id="DivColoniaTelefonoCliente" runat="server" visible="false" class="row" style="padding-left: 16px;">
<div class="form-group form-md-line-input input-iconright col-xs-6">
<div id="DivCiudadLocalidadCliente" runat="server" visible="false" class="row" style="padding-left: 16px;">
<div class="form-group form-md-line-input input-iconright col-xs-4">
<asp:TextBox ID="TxtColoniaCliente" CssClass="form-control " runat="server" MaxLength="50" CausesValidation="true"></asp:TextBox>
<asp:RequiredFieldValidator ID="RFVColoniaC" runat="server" ControlToValidate="TxtColoniaCliente" 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="GrpGuardarCliente"></asp:RequiredFieldValidator>
<label for="<%= TxtColoniaCliente.ClientID.ToString()%>">Colonia:</label>
</div>
<div class="form-group form-md-line-input input-iconright col-xs-6">
<asp:TextBox ID="TxtTelefonoCliente" CssClass="form-control " runat="server" MaxLength="10" CausesValidation="true"></asp:TextBox>
<label for="<%= TxtTelefonoCliente.ClientID.ToString()%>">Teléfono:</label>
</div>
</div>
<div id="DivCiudadLocalidadCliente" runat="server" visible="false" class="row" style="padding-left: 16px;">
<div class="form-group form-md-line-input input-iconright col-xs-6">
<div class="form-group form-md-line-input input-iconright col-xs-4">
<asp:TextBox ID="TxtCiudadCliente" CssClass="form-control " runat="server" MaxLength="50" CausesValidation="true"></asp:TextBox>
<asp:RequiredFieldValidator ID="RFVCiudadC" runat="server" ControlToValidate="TxtCiudadCliente" 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="GrpGuardarCliente"></asp:RequiredFieldValidator>
<label for="<%= TxtCiudadCliente.ClientID.ToString()%>">Ciudad:</label>
</div>
<div class="form-group form-md-line-input input-iconright col-xs-6">
<div class="form-group form-md-line-input input-iconright col-xs-4">
<asp:TextBox ID="TxtLocalidadCliente" CssClass="form-control " runat="server" MaxLength="50" CausesValidation="true"></asp:TextBox>
<asp:RequiredFieldValidator ID="RFVLocalidadC" runat="server" ControlToValidate="TxtLocalidadCliente" 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="GrpGuardarCliente"></asp:RequiredFieldValidator>
<label for="<%= TxtLocalidadCliente.ClientID.ToString()%>">Localidad:</label>
</div>
</div>
<div id="DivCorreoCuentaCliente" runat="server" visible="false" class="row" style="padding-left: 16px;">
<div class="form-group form-md-line-input input-iconright col-xs-6">
<asp:TextBox ID="TxtCorreoCliente" CssClass="form-control" runat="server" MaxLength="300" CausesValidation="true"></asp:TextBox>
<asp:RegularExpressionValidator ID="RegularExpressionValidator3" 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="TxtCorreoCliente" 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="GrpGuardarCliente"></asp:RegularExpressionValidator>
<label for="<%= TxtCorreoCliente.ClientID.ToString()%>">Email: </label>
<i></i>
</div>
<div class="form-group form-md-line-input input-iconright col-xs-6">
<asp:TextBox ID="TxtTelefonoCliente" CssClass="form-control " runat="server" MaxLength="10" CausesValidation="true"></asp:TextBox>
<asp:RequiredFieldValidator ID="RFVTelefonoCliente" runat="server" ControlToValidate="TxtTelefonoCliente" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Teléfono''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardarCliente"></asp:RequiredFieldValidator>
<asp:RegularExpressionValidator ID="RevTelefonoCliente" runat="server" CssClass="help-block errorimput" ValidationExpression="\d{10}" ControlToValidate="TxtTelefonoCliente" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Teléfono''</b> no es válido, por favor ingrése uno correcto." ValidationGroup="GrpGuardarCliente"></asp:RegularExpressionValidator>
<label for="<%= TxtTelefonoCliente.ClientID.ToString()%>">Teléfono:</label>
</div>
</div>
<div id="DivEstadoPaisCliente" runat="server" visible="false" class="row" style="padding-left: 16px;">
<div class="form-group form-md-line-input input-iconright col-xs-6">
@@ -2599,47 +2590,42 @@
<label for="<%= DdlEstadoSAT.ClientID.ToString()%>">Estado:</label>
</div>
</div>
<div id="DivCorreoCuentaCliente" runat="server" visible="false" class="row" style="padding-left: 16px;">
<div class="form-group form-md-line-input input-iconright col-xs-6">
<asp:TextBox ID="TxtCorreoCliente" CssClass="form-control" runat="server" MaxLength="300" CausesValidation="true"></asp:TextBox>
<label for="<%= TxtCorreoCliente.ClientID.ToString()%>">Email: </label>
<i></i>
</div>
<div class="form-group form-md-line-input input-iconright col-xs-6">
</div>
</div>
<div id="DivFormaCliente" runat="server" visible="false" class="row" style="padding-left: 16px;">
<div class="form-group form-md-line-input input-iconright col-xs-6">
<asp:DropDownList ID="DdlMetodoCliente" runat="server" CssClass=" form-control input-sm select2me" AppendDataBoundItems="true" CausesValidation="true" DataTextField="MetodoPagoSAT" DataValueField="CveMetodoPago" Width="200px">
<asp:DropDownList ID="DdlMetodoCliente" runat="server" CssClass=" form-control input-sm select2me" CausesValidation="true" DataTextField="MetodoPagoSAT" DataValueField="CveMetodoPago" Width="100%">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList>
<asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" ControlToValidate="DdlMetodoCliente" InitialValue="-1" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Método Pago''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardarCliente"></asp:RequiredFieldValidator>
<asp:RequiredFieldValidator ID="RequiredFieldValidator6" runat="server" ControlToValidate="DdlMetodoCliente" InitialValue="-1" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Método Pago''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardarCliente"></asp:RequiredFieldValidator>
<label for="<%= DdlMetodoCliente.ClientID.ToString()%>">Método Pago:</label>
</div>
<div class="form-group form-md-line-input input-iconright col-xs-6">
<asp:DropDownList ID="DdlFormaCliente" CssClass=" form-control input-sm select2me" runat="server" AppendDataBoundItems="true" CausesValidation="true" DataTextField="FormaPagoSAT" DataValueField="CveFormaPago" Width="200px">
<asp:DropDownList ID="DdlFormaCliente" CssClass=" form-control input-sm select2me" runat="server" AppendDataBoundItems="true" CausesValidation="true" DataTextField="FormaPagoSAT" DataValueField="CveFormaPago" Width="100%">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList>
<asp:RequiredFieldValidator ID="RequiredFieldValidator2" runat="server" ControlToValidate="DdlMetodoCliente" InitialValue="-1" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Forma Pago''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardarCliente"></asp:RequiredFieldValidator>
<asp:RequiredFieldValidator ID="RequiredFieldValidator11" runat="server" ControlToValidate="DdlMetodoCliente" InitialValue="-1" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Forma Pago''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardarCliente"></asp:RequiredFieldValidator>
<label for="<%= DdlFormaCliente.ClientID.ToString()%>">Forma Pago: </label>
<i></i>
</div>
</div>
<div class="row" id="divRegimenCliente" runat="server" visible="false" style="padding-left: 16px;">
<div class="form-group form-md-line-input input-iconright col-xs-6">
<asp:DropDownList ID="DdlRegimenFiscalCliente" AutoPostBack="true" OnSelectedIndexChanged="DdlRegimenFiscalCliente_SelectedIndexChanged" DataTextField="CodigoRegimenFiscalTexto" Width="100%" DataValueField="CveRegimenFiscal" runat="server" CssClass="form-control input-sm select2me">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList>
<asp:RequiredFieldValidator ID="RFVRegimenFiscal" runat="server" InitialValue="-1" ControlToValidate="DdlRegimenFiscalCliente" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Regimen Fiscal''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardarCliente"></asp:RequiredFieldValidator>
<label for="<%= DdlRegimenFiscalCliente.ClientID.ToString()%>">Régimen Fiscal:</label>
<i></i>
</div>
<div class="form-group form-md-line-input input-iconright col-xs-6">
<asp:DropDownList ID="DdlUsoCFDICliente" Width="100%" DataTextField="UsoCFDIDescripcion" DataValueField="CveUsoCFDI" runat="server" CssClass="form-control input-sm select2me">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList>
<asp:RequiredFieldValidator ID="RequiredFieldValidator22" runat="server" InitialValue="-1" ControlToValidate="DdlUsoCFDICliente" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Uso CFDi''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardarCliente"></asp:RequiredFieldValidator>
<label for="<%= DdlUsoCFDICliente.ClientID.ToString()%>">Uso CFDi:</label>
<i></i>
</div>
</div>
</div>
<div id="DivBotonesAgregarCliente" runat="server" visible="false" class="modal-footer">
<asp:Button ID="BtnAgregarCliente" runat="server" CssClass="btn btn-primary" Text="Agregar" ValidationGroup="GrpGuardarCliente" />
<button id="BtnCancelarCliente" runat="server" type="button" class="btn default" data-dismiss="modal">Cancelar</button>

View File

@@ -6450,14 +6450,17 @@ Partial Class PV
Private Sub LnkAgregarCliente_Click(sender As Object, e As EventArgs) Handles LnkAgregarCliente.Click
DivNombreCliente.Visible = False
DivTipoPersona.Visible = False
DivDireccionCliente.Visible = False
DivNumeroCPCliente.Visible = False
DivColoniaTelefonoCliente.Visible = False
'DivColoniaTelefonoCliente.Visible = False
DivCiudadLocalidadCliente.Visible = False
DivEstadoPaisCliente.Visible = False
DivCorreoCuentaCliente.Visible = False
DivBotonesAgregarCliente.Visible = False
DivFormaCliente.Visible = False
divRegimenCliente.Visible = False
TxtRFCCliente.Text = "XAXX010101000"
UpAgregarCliente.Update()
CargaEstados()
@@ -6468,12 +6471,11 @@ Partial Class PV
Private Sub BtnValidarRFC_Click(sender As Object, e As EventArgs) Handles BtnValidarRFC.Click
If TxtRFCCliente.Text.ToUpper = "XAXX010101000" Then
DivTipoPersona.Visible = True
DivNombreCliente.Visible = True
DivTipoPersona.Visible = True
DivDireccionCliente.Visible = True
DivNumeroCPCliente.Visible = True
DivColoniaTelefonoCliente.Visible = True
'DivColoniaTelefonoCliente.Visible = True
DivCiudadLocalidadCliente.Visible = True
DivEstadoPaisCliente.Visible = True
DivCorreoCuentaCliente.Visible = True
@@ -6485,10 +6487,18 @@ Partial Class PV
RFVColoniaC.Visible = False
RFVCiudadC.Visible = False
RFVLocalidadC.Visible = False
TxtNombreCliente.Focus()
RFVSATPais.Visible = False
divRegimenCliente.Visible = UsuarioActual.Empresa.Funcionalidad(350) = "1"
RdTipoPersona.SelectedValue = "0"
DdlMetodoCliente.SelectedValueExist(1)
DdlFormaCliente.SelectedValueExist(1)
DdlRegimenFiscalCliente.DataSource = GlobalDTRegimenesFiscales().FiltraParametros("CveRegimenFiscal = 11")
DdlRegimenFiscalCliente.DataBind()
CargaComboCFDICliente()
'carga datos particulares de la sucursal
Dim dr As DataRow = GlobalDTSubProyectos(-1, CveSubProyecto:=DdlSubProyectoDatos.SelectedValue.ToEntero).FiltroPrimero("")
@@ -6503,8 +6513,8 @@ Partial Class PV
If ObjCliente.ValidaClienteRFC(TxtRFCCliente.Text, UsuarioActual.CveEmpresa) Then
If ObjCliente.DtResultados.Rows.Count > 0 Then
RegistraScript("hideDivEC();")
ViewState("CveCliente") = ObjCliente.DtResultados(0)("CveCliente").ToString.ToEntero
HdnCveCliente.Value = ObjCliente.DtResultados(0)("CveCliente").ToString
ViewState("CveCliente") = ObjCliente.DtResultados(0)("CveCliente").ToString().ToEntero()
HdnCveCliente.Value = ObjCliente.DtResultados(0)("CveCliente").ToString()
CargaCliente(CveCliente)
UpCliente.Update()
Else
@@ -6512,12 +6522,13 @@ Partial Class PV
DivTipoPersona.Visible = True
DivDireccionCliente.Visible = True
DivNumeroCPCliente.Visible = True
DivColoniaTelefonoCliente.Visible = True
'DivColoniaTelefonoCliente.Visible = True
DivCiudadLocalidadCliente.Visible = True
DivEstadoPaisCliente.Visible = True
DivCorreoCuentaCliente.Visible = True
DivBotonesAgregarCliente.Visible = True
DivFormaCliente.Visible = True
divRegimenCliente.Visible = UsuarioActual.Empresa.Funcionalidad(350) = "1"
End If
End If
ObjCliente.Dispose()
@@ -6527,20 +6538,107 @@ Partial Class PV
RFVColoniaC.Visible = True
RFVCiudadC.Visible = True
RFVLocalidadC.Visible = True
RFVSATPais.Visible = True
DdlMetodoCliente.SelectedValueExist(-1)
DdlFormaCliente.SelectedValueExist(-1)
DdlRegimenFiscalCliente.DataSource = GlobalDTRegimenesFiscales()
DdlRegimenFiscalCliente.DataBind()
DdlRegimenFiscalCliente.Items.Insert(0, New ListItem("Seleccione", "-1"))
CargaComboCFDICliente()
End If
UpAgregarCliente.Update()
End Sub
Private Sub CargaComboCFDICliente()
If DdlRegimenFiscalCliente.SelectedValue.ToEntero() > 0 Then
If TxtRFCCliente.Text.ToUpper = "XAXX010101000" Then
DdlUsoCFDICliente.DataSource = GlobalDTSATUsosCFDI().FiltraParametros("CveUsoCFDI = 23")
DdlUsoCFDICliente.DataBind()
Else
Dim RegimenFiscalCliente As String = "-1"
If UsuarioActual.Empresa.Funcionalidad(350).Contiene("1") AndAlso DdlRegimenFiscalCliente.SelectedValue.ToEntero() > 0 Then
RegimenFiscalCliente = GlobalDTRegimenesFiscales().FiltroPrimeroValor("CodigoRegimenFiscal", $"CveRegimenFiscal = {DdlRegimenFiscalCliente.SelectedValue.ToEntero()}")
End If
DdlUsoCFDICliente.Items.Clear()
If UsuarioActual.Empresa.Funcionalidad(350) = "1" Then
Dim EsPersonaMoral As Boolean = (RdTipoPersona.SelectedValue = "1")
DdlUsoCFDICliente.DataSource = GlobalDTSATUsosCFDI(If(Not EsPersonaMoral, 1, 0), RegimenFiscalReceptor:=RegimenFiscalCliente)
Else
DdlUsoCFDICliente.DataSource = GlobalDTSATUsosCFDI(UsuarioActual.Empresa.EsPersonaFisica, RegimenFiscalReceptor:=RegimenFiscalCliente)
End If
DdlUsoCFDICliente.DataBind()
DdlUsoCFDICliente.Items.Insert(0, New ListItem("Seleccione", "-1"))
End If
Else
DdlUsoCFDICliente.Items.Clear()
DdlUsoCFDICliente.Items.Insert(0, New ListItem("Seleccione", "-1"))
End If
UpAgregarCliente.Update()
End Sub
Protected Sub DdlRegimenFiscalCliente_SelectedIndexChanged(sender As Object, e As EventArgs)
CargaComboCFDICliente()
End Sub
Private Sub BtnAgregarCliente_Click(sender As Object, e As EventArgs) Handles BtnAgregarCliente.Click
Dim CvePrecioLista As Integer = -1
If DdlSubProyectoDatos.SelectedValue.ToEntero > 0 Then
Dim Dr As DataRow = GlobalDTSubProyectos(-1, DdlSubProyectoDatos.SelectedValue.ToEntero, UsuarioActual.CveEmpresa).Rows(0)
Dim CveRegimenFiscal As Integer = -1
Dim CveUsoCFDI As Integer = 3
If UsuarioActual.Empresa.Funcionalidad(350) = "1" Then
CveRegimenFiscal = DdlRegimenFiscalCliente.SelectedValue.ToEntero()
CveUsoCFDI = DdlUsoCFDICliente.SelectedValue.ToEntero()
Dim RegimenFiscalCliente As String = "-1"
If DdlRegimenFiscalCliente.SelectedValue.ToEntero() > 0 Then
RegimenFiscalCliente = GlobalDTRegimenesFiscales().FiltroPrimeroValor("CodigoRegimenFiscal", $"CveRegimenFiscal = {CveRegimenFiscal}")
End If
If TxtRFCCliente.Text.Trim().ToUpper().Contiene("XAXX010101000", "XEXX010101000") AndAlso DdlRegimenFiscalCliente.SelectedValue <> "11" Then
Alert("El Regimen fiscal del cliente debe ser <b>'616 - Sin obligaciones fiscales'</b> cuando se utiliza el RFC genérico.", TipoMensaje.MsgAdvertencia)
Exit Sub
End If
If TxtRFCCliente.Text.Trim().ToUpper().Contiene("XAXX010101000", "XEXX010101000") AndAlso DdlUsoCFDICliente.SelectedValue <> "23" Then
Alert("El uso cfdi del cliente debe ser <b>'S01 - Sin efectos fiscales'</b> cuando se utiliza el RFC genérico.", TipoMensaje.MsgAdvertencia)
Exit Sub
End If
If Not TxtRFCCliente.Text.Trim().ToUpper().Contiene("XAXX010101000", "XEXX010101000") AndAlso DdlRegimenFiscalCliente.SelectedValue = "11" Then
Alert("El Regimen fiscal del cliente no puede ser <b>'616 - Sin obligaciones fiscales'</b> si no se utiliza el RFC genérico.", TipoMensaje.MsgAdvertencia)
Exit Sub
End If
If Not TxtRFCCliente.Text.Trim().ToUpper().Contiene("XAXX010101000", "XEXX010101000") AndAlso DdlUsoCFDICliente.SelectedValue = "23" Then
Alert("El uso cfdi del cliente no puede ser <b>'S01 - Sin efectos fiscales'</b> si no se utiliza el RFC genérico.", TipoMensaje.MsgAdvertencia)
Exit Sub
End If
Dim EsPersonaMoral As Boolean = (RdTipoPersona.SelectedValue = "1")
Dim DtUsosCFDI = GlobalDTSATUsosCFDI(If(Not EsPersonaMoral, 1, 0), RegimenFiscalReceptor:=RegimenFiscalCliente).FiltraParametros($"CveUsoCFDI = {CveUsoCFDI}")
If DtUsosCFDI.Rows.Count = 0 Then
Alert("El Uso CFDI no corresponde con el tipo de persona (fisca, moral) y el régimen fiscal.", TipoMensaje.MsgAdvertencia)
Exit Sub
End If
End If
If DdlSubProyectoDatos.SelectedValue.ToEntero() > 0 Then
Dim Dr As DataRow = GlobalDTSubProyectos(-1, DdlSubProyectoDatos.SelectedValue.ToEntero(), UsuarioActual.CveEmpresa).Rows(0)
If Dr IsNot Nothing Then
If Dr("CvePrecioLista").ToString.ToEntero > 0 Then
CvePrecioLista = Dr("CvePrecioLista").ToString.ToEntero
If Dr("CvePrecioLista").ToString().ToEntero() > 0 Then
CvePrecioLista = Dr("CvePrecioLista").ToString().ToEntero()
End If
End If
End If
@@ -6549,14 +6647,16 @@ Partial Class PV
Dim TipoPersona As Boolean = If(RdTipoPersona.SelectedValue.ToEntero = 1, True, False)
If ObjCliente.AgregarClienteNoFrecuente(TxtNombreCliente.Text.Trim, TxtDireccionCliente.Text.Trim, TxtNumExtCliente.Text.Trim, TxtNumIntCliente.Text.Trim, TxtColoniaCliente.Text.Trim,
TxtLocalidadCliente.Text.Trim, TxtCiudadCliente.Text.Trim, DdlEstadoSAT.SelectedValue.ToEntero, TxtRFCCliente.Text.Trim,
TxtCPCliente.Text.Trim, TxtTelefonoCliente.Text.Trim, TxtCorreoCliente.Text.Trim, DdlSubProyectoDatos.SelectedValue.ToEntero, UsuarioActual.CveUsuario,
UsuarioActual.CveEmpresa, "", DdlMetodoCliente.SelectedValue.ToEntero, DdlFormaCliente.SelectedValue.ToEntero, RegimenSociedad:=TxtRegimenSociedad.Text, TipoPersona:=TipoPersona) Then
If ObjCliente.AgregarClienteNoFrecuente(TxtNombreCliente.Text.Trim, TxtDireccionCliente.Text.Trim, TxtNumExtCliente.Text.Trim, TxtNumIntCliente.Text.Trim,
TxtColoniaCliente.Text.Trim, TxtLocalidadCliente.Text.Trim, TxtCiudadCliente.Text.Trim, DdlEstadoSAT.SelectedValue.ToEntero,
TxtRFCCliente.Text.Trim, TxtCPCliente.Text.Trim, TxtTelefonoCliente.Text.Trim, TxtCorreoCliente.Text.Trim,
DdlSubProyectoDatos.SelectedValue.ToEntero(), UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, "", -1, -1, CvePrecioLista:=CvePrecioLista,
RegimenSociedad:=TxtRegimenSociedad.Text, TipoPersona:=TipoPersona, CveRegimenFiscal:=CveRegimenFiscal, CveUsoCFDI:=CveUsoCFDI) Then
If ObjCliente.DtResultados.Rows.Count > 0 Then
RegistraScript("hideDivEC();")
ViewState("CveCliente") = ObjCliente.DtResultados(0)("CveCliente").ToString.ToEntero
HdnCveCliente.Value = ObjCliente.DtResultados(0)("CveCliente").ToString
ViewState("CveCliente") = ObjCliente.DtResultados(0)("CveCliente").ToString().ToEntero()
HdnCveCliente.Value = ObjCliente.DtResultados(0)("CveCliente").ToString()
CargaCliente(CveCliente)
UpCliente.Update()
End If
@@ -6565,6 +6665,7 @@ Partial Class PV
ObjCliente.Dispose()
RecargaGlobalCliente()
End Sub
#End Region
@@ -8436,11 +8537,38 @@ Partial Class PV
DVRegimenSociedad.Visible = False
DivRazonSocial2.Attributes.Add("class", "col-md-12")
If RdTipoPersona.SelectedValue.ToEntero = 1 And UsuarioActual.Empresa.Funcionalidad(350).Contiene("1", "2") Then
If UsuarioActual.Empresa.Funcionalidad(350).Contiene("1", "2") Then
DivRazonSocial2.Attributes.Add("class", "col-md-8")
DVRegimenSociedad.Visible = True
If TxtRFCCliente.Text.ToUpper = "XAXX010101000" Then
DdlRegimenFiscalCliente.DataSource = GlobalDTRegimenesFiscales().FiltraParametros("CveRegimenFiscal = 11")
DdlRegimenFiscalCliente.DataBind()
Else
Dim dt As DataTable = GlobalDTRegimenesFiscales(RdTipoPersona.SelectedValue.ToEntero).FiltraParametros("", "CodigoRegimenFiscal")
Dim Val As String
If dt IsNot Nothing AndAlso dt.Rows.Count > 0 Then
'verifico que sino existe el valor. lo limpie
Val = dt.FiltroPrimeroValor("CveRegimenFiscal", "CveRegimenFiscal = " & DdlRegimenFiscalCliente.SelectedValue)
If Val = "" Then 'sino encuentra valor, lo limpia
DdlRegimenFiscalCliente.Items.Clear()
DdlRegimenFiscalCliente.SelectedValue = Nothing
End If
End If
DdlRegimenFiscalCliente.DataSource = dt
DdlRegimenFiscalCliente.DataBind()
DdlRegimenFiscalCliente.SelectedValueExist(Val)
End If
DdlRegimenFiscalCliente.Items.Insert(0, New ListItem("Seleccione", "-1"))
DdlUsoCFDICliente.Items.Clear()
DdlUsoCFDICliente.Items.Insert(0, New ListItem("Seleccione", "-1"))
End If
UpAgregarCliente.Update()

View File

@@ -405,7 +405,7 @@
<i class="icon-pin font-green"></i>
<span class="caption-subject bold uppercase"><a id="HlCliente" href="javascript:void(0);" runat="server" class="Texto" onclick="javascript:AbrirVentana('/Ventas/PopUpBuscarClientes.aspx?Opt=Fact', 800, 547, 'N', 'PopUpBuscar')">
<asp:Label runat="server" id="LblTituloPorletCliente" Text ="Cliente:"> </asp:Label></a></span>
<asp:Label runat="server" ID="LblTituloPorletCliente" Text="Cliente:"> </asp:Label></a></span>
<asp:LinkButton ID="LnkAgregarCliente" runat="server" AlternateText="Agregar Cliente" Text="<i class='fa fa-plus-square'></i>" />
<asp:TextBox ID="TxtCodigo" runat="server" AutoPostBack="true" BorderStyle="None" Width="65px"></asp:TextBox>
<asp:HiddenField ID="HdnCveCliente" runat="server" ClientIDMode="Static" Value="-1" />
@@ -425,7 +425,7 @@
<div class="form-body">
<table border="0" width="463px">
<tr align="left" runat="server" id="trNombreCliente">
<td width="95px"><b>Nombre:</b>&nbsp;</td>
<td width="200px">
@@ -433,7 +433,7 @@
<td width="85px" runat="server" id="LblEnviarMail"><b>Enviar Mail:</b></td>
<td width="135px">
<asp:CheckBox ID="ChkEnviarFactura" runat="server" /></td>
</tr>
</tr>
<tr runat="server" id="trsucursalciente" visible="false">
<td align="left"><b>
<asp:Label ID="LblSucursal" runat="server" Text="Sucursal"></asp:Label>
@@ -507,23 +507,23 @@
</td>
</tr>
<%--CRM--%>
<%--CRM--%>
<tr align="left" runat="server" id="trCRM1" visible="false">
<td width="95px"><b>Empresa:</b>&nbsp;</td>
<td width="200px">
<asp:Label ID="LblEmpresaCRM" runat="server" Text="Cliente"></asp:Label></td>
</tr>
<tr align="left" runat="server" id="trCRM2" visible="false" >
<tr align="left" runat="server" id="trCRM2" visible="false">
<td><b>RFC:</b>&nbsp;</td>
<td>
<asp:Label ID="LblRFCCRM" runat="server" Text="AAA010101AAA"></asp:Label></td>
</tr>
<tr align="left" runat="server" id="trCRM3" visible="false" >
<tr align="left" runat="server" id="trCRM3" visible="false">
<td><b>Medio de Captación::</b>&nbsp;</td>
<td>
<asp:Label ID="LblMedioCaptacionCRM" runat="server" Text=""></asp:Label></td>
</tr>
<%--CRM--%>
<%--CRM--%>
<tr runat="server" id="TrAtencionA" visible="false">
@@ -552,8 +552,8 @@
</td>
</tr>
</table>
@@ -562,7 +562,7 @@
</ContentTemplate>
</asp:UpdatePanel>
<%-- <asp:UpdatePanel ID="UpEmpresaCRM" runat="server" Visible="false" UpdateMode="Conditional" class="portlet light xspadding bordered whitoutcol" style="width: 473px;">
<%-- <asp:UpdatePanel ID="UpEmpresaCRM" runat="server" Visible="false" UpdateMode="Conditional" class="portlet light xspadding bordered whitoutcol" style="width: 473px;">
<ContentTemplate>
<div class="portlet-title">
<div class="caption font-green" >
@@ -2504,7 +2504,7 @@
</div>
</div>
<div class="row">
<%-- <label class="col-md-2 form-group form-md-line-input" style="margin-top: 0px; padding-top: 0px; display: inline-block;">Motivo Traslado:</label>
<%-- <label class="col-md-2 form-group form-md-line-input" style="margin-top: 0px; padding-top: 0px; display: inline-block;">Motivo Traslado:</label>
<div class="col-md-4 form-group form-md-line-input" style="margin-top: 0px; padding-top: 0px; display: inline-block;">
<asp:DropDownList ID="DdlSATMotivoTraslado" Width="100%" runat="server" CssClass="select2me" DataTextField="ClaveSATMotivoTrasladoDescripcion" DataValueField="CveMotivoTraslado"></asp:DropDownList>
</div>--%>
@@ -2566,6 +2566,18 @@
</div>
</div>
<div class="row rowpadding">
<div class="col-md-2 form-group form-md-line-input"><span>Aplica Destinatario:</span></div>
<div class="col-md-2 form-group form-md-line-input">
<asp:CheckBox ID="ChkAplicaDestinatario" runat="server" CssClass="chksino" Text=" " OnCheckedChanged="ChkAplicaDestinatario_CheckedChanged" AutoPostBack="true" Checked="false" />
</div>
</div>
<div class="row rowpadding">
<div class="col-md-2 form-group form-md-line-input" id="DivLblDestino" runat="server" visible="false"><span>Destino:</span></div>
<div class="col-md-4 form-group form-md-line-input" id="DivDdlDestino" runat="server" visible="false">
<asp:DropDownList ID="DdlDirecionDestinatario" CssClass="form-control select2me" AppendDataBoundItems="true" Style="width: 100%;" runat="server" DataTextField="DireccionEnvioContacto" DataValueField="CveDireccionEnvio"></asp:DropDownList>
</div>
</div>
<div class="row">
<div class="col-md-12">
Convertir a unidad Aduana
@@ -2600,6 +2612,7 @@
</asp:GridView>
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</div>
@@ -7281,7 +7294,7 @@
<asp:GridView ID="GvAplicaDevolucion" runat="server" OnRowDataBound="GvAplicaDevolucion_RowDataBound" AutoGenerateColumns="false" GridLines="None" CssClass="table table-grid table-striped table-advance table-hover Widthall"
DataKeyNames="CveVentaDetalle, PU, Total, Cantidad,Descuento,CvePS,PS,Codigo,CodigoPS,CveTipoPS,CveTipoInvPS,CveUM,UM,CveClasificacion,
Clasificacion,CveProyecto,Proyecto,CveSubProyecto,SubProyecto,Obs,PorcentajeIVA,ImporteIVA,PorcentajeRetIVA,ImporteRetIVA,PorcentajeRetISR,
ImporteRetISR,PorcentajeIEPS,ImporteIEPS,SATClaveProdServ,SATClaveUM,CantSur,CantRes,CveTamaño"
ImporteRetISR,PorcentajeIEPS,ImporteIEPS,SATClaveProdServ,SATClaveUM,CantSur,CantRes,CveTamaño,CodigoObjetoImpuesto"
AllowPaging="False">
<Columns>
<asp:TemplateField>

View File

@@ -6470,6 +6470,12 @@ Partial Class Ventas
If ObjCliente.AplicaComercioExterior Then
ChkEmitirComercioExterior.Checked = True
ChkEmitirComercioExterior_CheckedChanged(ChkEmitirComercioExterior, EventArgs.Empty)
If CveCliente = 665317 Then
ChkAplicaDestinatario.Checked = True
ChkAplicaDestinatario_CheckedChanged(ChkAplicaDestinatario, EventArgs.Empty)
End If
End If
If ObjCliente.AplicaComercioExterior Then
@@ -8640,6 +8646,11 @@ Partial Class Ventas
Exit Sub
End If
If ChkEmitirComercioExterior.Checked AndAlso ChkAplicaDestinatario.Checked AndAlso DdlDirecionDestinatario.SelectedValue.ToEntero() <= 0 Then
Alert("Debe seleccionar un destino para comercio exterior.", TipoMensaje.MsgAdvertencia)
Exit Sub
End If
If UsuarioActual.Empresa.Funcionalidad(350) = "1" AndAlso DdlTipoComprobante.SelectedValue.Contiene("Ing", "Ant", "Egs", "Dev") Then
If LblRFC.Text.Trim().ToUpper().Contiene("XAXX010101000", "XEXX010101000") AndAlso RegimenFiscalCliente <> "616" Then
@@ -12362,20 +12373,48 @@ Partial Class Ventas
'DESTINATARIO
Timbre.Complementos.ComercioExterior11.Destinatario = Nothing
If ChkAplicaDestinatario.Checked AndAlso DdlDirecionDestinatario.SelectedValue.ToEntero() > 0 Then
Dim RowDireccion As DataRow = Nothing
Dim ObjClientes As New ClsClientes
If ObjClientes.DireccionEnvioGet(DdlDirecionDestinatario.SelectedValue.ToEntero(), CveCliente, -1) Then
RowDireccion = ObjClientes.DtResultados.Rows(0)
End If
ObjClientes.Dispose()
If RowDireccion IsNot Nothing Then
Timbre.Complementos.ComercioExterior11.Destinatario.Nombre = RowDireccion("EnvioContacto").ToString()
Timbre.Complementos.ComercioExterior11.Destinatario.Calle = RowDireccion("EnvioDireccion").ToString()
Timbre.Complementos.ComercioExterior11.Destinatario.NumeroExterior = RowDireccion("EnvioNoExt").ToString()
Timbre.Complementos.ComercioExterior11.Destinatario.NumeroInterior = ""
Timbre.Complementos.ComercioExterior11.Destinatario.Colonia = ""
Timbre.Complementos.ComercioExterior11.Destinatario.Localidad = RowDireccion("NombreLocalidad").ToString()
Timbre.Complementos.ComercioExterior11.Destinatario.Referencia = ""
Timbre.Complementos.ComercioExterior11.Destinatario.Municipio = RowDireccion("NombreMunicipio").ToString()
Timbre.Complementos.ComercioExterior11.Destinatario.CP = RowDireccion("EnvioCP").ToString()
Timbre.Complementos.ComercioExterior11.Destinatario.Estado = RowDireccion("NombreEstado").ToString()
Timbre.Complementos.ComercioExterior11.Destinatario.Pais = RowDireccion("ClaveSATPais").ToString()
Timbre.Complementos.ComercioExterior11.Destinatario.NumRegIdTrib = RowDireccion("COM_NumRegIdTrib").ToString()
'Timbre.Complementos.ComercioExterior11.Destinatario.Nombre = "FARMIND CORPORATION"
'Timbre.Complementos.ComercioExterior11.Destinatario.Calle = "Kandaizumicho Bldg"
'Timbre.Complementos.ComercioExterior11.Destinatario.NumeroExterior = "7F"
'Timbre.Complementos.ComercioExterior11.Destinatario.NumeroInterior = ""
'Timbre.Complementos.ComercioExterior11.Destinatario.Colonia = ""
'Timbre.Complementos.ComercioExterior11.Destinatario.Localidad = "Chiyoda-ku"
'Timbre.Complementos.ComercioExterior11.Destinatario.Referencia = ""
'Timbre.Complementos.ComercioExterior11.Destinatario.Municipio = "Kandaizumicho"
'Timbre.Complementos.ComercioExterior11.Destinatario.CP = "101-0024"
'Timbre.Complementos.ComercioExterior11.Destinatario.Estado = "Tokyo"
'Timbre.Complementos.ComercioExterior11.Destinatario.Pais = "JPN"
'Timbre.Complementos.ComercioExterior11.Destinatario.NumRegIdTrib = "2010401130418"
End If
Else
Timbre.Complementos.ComercioExterior11.Destinatario = Nothing
End If
'Timbre.Complementos.ComercioExterior11.Destinatario.Nombre = TxtDestinatarioNombre.Text.Trim
'Timbre.Complementos.ComercioExterior11.Destinatario.Calle = ComExtCalle
'Timbre.Complementos.ComercioExterior11.Destinatario.NumeroExterior = ComExtNumero
'Timbre.Complementos.ComercioExterior11.Destinatario.NumeroInterior = ""
'Timbre.Complementos.ComercioExterior11.Destinatario.Colonia = ComExtColonia
'Timbre.Complementos.ComercioExterior11.Destinatario.Localidad = ""
'Timbre.Complementos.ComercioExterior11.Destinatario.Referencia = Obj.Cliente.ReferenciaFiscal
'Timbre.Complementos.ComercioExterior11.Destinatario.Municipio = ComExtMunicipio
'Timbre.Complementos.ComercioExterior11.Destinatario.CP = ComExtCP
'Timbre.Complementos.ComercioExterior11.Destinatario.Estado = ComExtEstado
'Timbre.Complementos.ComercioExterior11.Destinatario.Pais = ComExtPais
'Timbre.Complementos.ComercioExterior11.Destinatario.NumRegIdTrib = TxtNumRegIdTrib.Text.Trim
'MERCANCIAS
For Each Gvr As GridViewRow In GvComercioExterior.Rows
@@ -23143,7 +23182,7 @@ Partial Class Ventas
Dim TieneError = False
Dim CveDireccionEnvio As Integer
CveDireccionEnvio = ObjClientes.DireccionEnvioAdd(CveCliente, TxtEnvioDireccion.Text.Trim, TxtEnvioNoExt.Text.Trim, TxtEnvioNoInt.Text.Trim, DdlDirClienteColonia.SelectedItem.Text.Trim, DdlDirClienteMunicipio.SelectedItem.Text.Trim, DdlDirClienteEstado.SelectedItem.Text.Trim, TxtEnvioCP.Text.ToEntero(), TxtEnvioContacto.Text.Trim, UsuarioActual.CveUsuario, 1, CveClienteSucursal:=CveClienteSucursal, EnvioTel:=TxtEnvioTel.Text.Trim.Replace(" ", "").Replace("(", "").Replace(")", "").Replace("-", "").Replace("_", ""),
CveDireccionEnvio = ObjClientes.DireccionEnvioAdd(CveCliente, TxtEnvioDireccion.Text.Trim, TxtEnvioNoExt.Text.Trim, TxtEnvioNoInt.Text.Trim, DdlDirClienteColonia.SelectedItem.Text.Trim, DdlDirClienteMunicipio.SelectedItem.Text.Trim, DdlDirClienteEstado.SelectedItem.Text.Trim, TxtEnvioCP.Text.Trim(), TxtEnvioContacto.Text.Trim, UsuarioActual.CveUsuario, 1, CveClienteSucursal:=CveClienteSucursal, EnvioTel:=TxtEnvioTel.Text.Trim.Replace(" ", "").Replace("(", "").Replace(")", "").Replace("-", "").Replace("_", ""),
CvePais:=DdlDirClientePais.SelectedValue.ToEntero, CveEstado:=DdlDirClienteEstado.SelectedValue.ToEntero, CveMunicipio:=DdlDirClienteMunicipio.SelectedValue.ToEntero, CveLocalidad:=DdlDirClienteLocalidad.SelectedValue.ToEntero, CveColonia:=DdlDirClienteColonia.SelectedValue.ToEntero)
If CveDireccionEnvio < 0 Then
@@ -29623,6 +29662,7 @@ Partial Class Ventas
Dim ImporteRetIVA As Decimal = TotalImpuestos * Gv.DataKey("PorcentajeRetIVA").ToString().ToDecimal
Dim ImporteRetISR As Decimal = TotalImpuestos * Gv.DataKey("PorcentajeRetISR").ToString().ToDecimal
Dim ImporteIEPS As Decimal = TotalImpuestos * Gv.DataKey("PorcentajeIEPS").ToString().ToDecimal
Dim CodigoObjetoImpuesto As String = Gv.DataKey("CodigoObjetoImpuesto")
AgregaTempDT(TmpDT, Gv.DataKey("CvePS").ToString().ToEntero(), Gv.DataKey("PS").ToString(), Gv.DataKey("Codigo").ToString(), Gv.DataKey("CodigoPS").ToString(),
Gv.DataKey("CveTipoPS").ToString().ToEntero(), Gv.DataKey("CveTipoInvPS").ToString().ToEntero(),
@@ -29633,7 +29673,7 @@ Partial Class Ventas
Gv.DataKey("PorcentajeRetIVA").ToString().ToDecimal, ImporteRetIVA,
Gv.DataKey("PorcentajeRetISR").ToString().ToDecimal, ImporteRetISR, Gv.DataKey("PorcentajeIEPS").ToString().ToDecimal,
ImporteIEPS, -1, Descuento, Total, "", "", -1, -1,
Gv.DataKey("SATClaveProdServ").ToString(), Gv.DataKey("SATClaveUM").ToString(), -1, Gv.DataKey("CveVentaDetalle").ToString().ToEntero(), -1, -1, -1, -1, Gv.DataKey("CveTamaño").ToEntero())
Gv.DataKey("SATClaveProdServ").ToString(), Gv.DataKey("SATClaveUM").ToString(), -1, Gv.DataKey("CveVentaDetalle").ToString().ToEntero(), -1, -1, -1, -1, Gv.DataKey("CveTamaño").ToEntero(), CodigoObjetoImpuesto:=CodigoObjetoImpuesto)
End If
Next
@@ -35785,5 +35825,21 @@ Partial Class Ventas
End If
End Using
End Sub
Protected Sub ChkAplicaDestinatario_CheckedChanged(sender As Object, e As EventArgs)
DivLblDestino.Visible = ChkAplicaDestinatario.Checked
DivDdlDestino.Visible = ChkAplicaDestinatario.Checked
If ChkAplicaDestinatario.Checked Then
Dim ObjClientes As New ClsClientes
If ObjClientes.DireccionEnvioGet(-1, CveCliente, -1) Then
DdlDirecionDestinatario.DataSource = ObjClientes.DtResultados
End If
ObjClientes.Dispose()
DdlDirecionDestinatario.DataBind()
DdlDirecionDestinatario.Items.Insert(0, New ListItem("Seleccione", "-1"))
End If
UpComercioExterior.Update()
End Sub
End Class