diff --git a/App_Code/ClsGenerales.vb b/App_Code/ClsGenerales.vb index 6d292dd55..b36cf01da 100644 --- a/App_Code/ClsGenerales.vb +++ b/App_Code/ClsGenerales.vb @@ -3059,12 +3059,13 @@ Public Class ClsGenerales End Function - Public Function GetSATLocalidad(Optional CveEstado As Integer = -1, Optional CveMunicipio As Integer = -1) As Boolean + Public Function GetSATLocalidad(Optional CveEstado As Integer = -1, Optional CveMunicipio As Integer = -1, Optional CodigoPostal As String = "-1") As Boolean Dim Retorno As Boolean = False DataAdapter("PA_Gral_SAT_LocalidadGet") With SqlAdapter.SelectCommand.Parameters .Add("@CveEstado", SqlDbType.VarChar).Value = CveEstado - .Add("@CveMunicipio", SqlDbType.VarChar).Value = CveMunicipio + .Add("@CveMunicipio", SqlDbType.VarChar).Value = CveMunicipio + .Add("@CodigoPostal", SqlDbType.VarChar).Value = CodigoPostal End With Try SqlAdapter.Fill(Data) diff --git a/App_Code/ClsPaginas.vb b/App_Code/ClsPaginas.vb index 6cf4c4ce7..a1016870a 100644 --- a/App_Code/ClsPaginas.vb +++ b/App_Code/ClsPaginas.vb @@ -589,25 +589,20 @@ Public Class ClsPaginas End Set End Property - Property GlobalDTLocalidad(Optional CveEstado As Integer = -1, Optional CveMunicipio As Integer = -1) As DataTable + Property GlobalDTLocalidad(Optional CveEstado As Integer = -1, Optional CveMunicipio As Integer = -1, Optional CodigoPostal As String = "-1") As DataTable Get If Application("GlobalDTLocalidad") Is Nothing Then Dim ObjGrales As New ClsGenerales If ObjGrales.GetSATLocalidad(-1, -1) Then Application("GlobalDTLocalidad") = ObjGrales.DtResultados ObjGrales.Dispose() End If - Dim StrFiltro As String = "" - If CveEstado > 0 And CveMunicipio > 0 Then - StrFiltro = $" CveEstado = '{CveEstado}' AND CveMunicipio = '{CveMunicipio}'" - ElseIf CveEstado > 0 Then - StrFiltro = $" CveEstado = '{CveEstado}'" - ElseIf CveMunicipio > 0 Then - StrFiltro = $" CveMunicipio = '{CveMunicipio}'" - Else - StrFiltro = "" - End If + Dim filtros As New List(Of String) + If CveEstado > 0 And CveMunicipio > 0 Then filtros.Add($" CveEstado = '{CveEstado}' AND CveMunicipio = '{CveMunicipio}'") + If CveEstado > 0 Then filtros.Add($" CveEstado = '{CveEstado}'") + If CveMunicipio > 0 Then filtros.Add($" CveMunicipio = '{CveMunicipio}'") + If CodigoPostal <> "-1" Then filtros.Add($" CP = '{CodigoPostal}'") - Dim Dv As New DataView(DirectCast(Application("GlobalDTLocalidad"), DataTable), StrFiltro, "", DataViewRowState.CurrentRows) + Dim Dv As New DataView(DirectCast(Application("GlobalDTLocalidad"), DataTable), String.Join(" AND ", filtros), "", DataViewRowState.CurrentRows) GlobalDTLocalidad = Dv.ToTable Dv.Dispose() diff --git a/Inventarios/CartaPorteManual.aspx.vb b/Inventarios/CartaPorteManual.aspx.vb index 71f333a2a..0619d16a4 100644 --- a/Inventarios/CartaPorteManual.aspx.vb +++ b/Inventarios/CartaPorteManual.aspx.vb @@ -548,11 +548,11 @@ Partial Class Inventarios_CartaPorteManual If Tipo = 1 Then CveDireccionOrigen = ObjClientes.DireccionEnvioAdd(-1, EnvioDireccion, EnvioNoExt, EnvioNoInt, "", "", "", EnvioCP, "", UsuarioActual.CveUsuario, 1, -1, "", - CvePais:=CvePais, CveEstado:=CveEstado, CveMunicipio:=CveMunicipio, CveLocalidad:=CveLocalidad, CveColonia:=CveColonia) + CvePais:=CvePais, CveEstado:=CveEstado, CveMunicipio:=CveMunicipio, CveLocalidad:=CveLocalidad, CveColonia:=CveColonia, CveEmpresa:=UsuarioActual.CveEmpresa) Else CveDireccionDestino = ObjClientes.DireccionEnvioAdd(-1, EnvioDireccion, EnvioNoExt, EnvioNoInt, "", "", "", EnvioCP, "", UsuarioActual.CveUsuario, 1, -1, "", - CvePais:=CvePais, CveEstado:=CveEstado, CveMunicipio:=CveMunicipio, CveLocalidad:=CveLocalidad, CveColonia:=CveColonia) + CvePais:=CvePais, CveEstado:=CveEstado, CveMunicipio:=CveMunicipio, CveLocalidad:=CveLocalidad, CveColonia:=CveColonia, CveEmpresa:=UsuarioActual.CveEmpresa) End If Next @@ -1081,12 +1081,10 @@ Partial Class Inventarios_CartaPorteManual DdlDirClienteLocalidad.Items.Clear() If DdlDirClienteEstado.SelectedValue.ToEntero > 0 Then - DdlDirClienteLocalidad.DataSource = GlobalDTLocalidad(DdlDirClienteEstado.SelectedValue.ToEntero, DdlDirClienteMunicipio.SelectedValue.ToEntero) + DdlDirClienteLocalidad.DataSource = GlobalDTLocalidad(DdlDirClienteEstado.SelectedValue.ToEntero, DdlDirClienteMunicipio.SelectedValue.ToEntero, CodigoPostal:=TxtEnvioCP.Text.Trim) DdlDirClienteLocalidad.DataBind() End If - - DdlDirClienteLocalidad.Items.Insert(0, New ListItem("Seleccione una", "-1")) - + DdlDirClienteLocalidad.Items.Insert(0, New ListItem("-", "-1")) End Sub diff --git a/Planeacion/CatSubProyectos.aspx.vb b/Planeacion/CatSubProyectos.aspx.vb index f6d48d7ac..c180762b0 100644 --- a/Planeacion/CatSubProyectos.aspx.vb +++ b/Planeacion/CatSubProyectos.aspx.vb @@ -872,11 +872,11 @@ Partial Class CatSubProyectos DdlLocalidad.Items.Clear() If DdlEstado.SelectedValue.ToEntero > 0 Then - DdlLocalidad.DataSource = GlobalDTLocalidad(DdlEstado.SelectedValue.ToEntero, DdlMunicipio.SelectedValue.ToEntero) + DdlLocalidad.DataSource = GlobalDTLocalidad(DdlEstado.SelectedValue.ToEntero, DdlMunicipio.SelectedValue.ToEntero, CodigoPostal:=TxtCP.Text.Trim) DdlLocalidad.DataBind() End If - DdlLocalidad.Items.Insert(0, New ListItem("Seleccione una", "-1")) + DdlLocalidad.Items.Insert(0, New ListItem("-", "-1")) End Sub