Validaciones de OC

This commit is contained in:
2022-10-31 12:42:33 -07:00
parent 7e99988fa1
commit 2f28a20f2c
4 changed files with 89 additions and 30 deletions

View File

@@ -2356,6 +2356,11 @@ Partial Class OC_OC
Private Function ValidaGuardar() As Boolean Private Function ValidaGuardar() As Boolean
Dim TieneError = False Dim TieneError = False
If CboE.SelectedValue.ToEntero = 0 AndAlso TipoOC = "OC" Then
Alert("Las ordenes de compra no puede tener el estatus 'Pre Solicitud'. Debe ser una requisición", TipoMensaje.MsgAdvertencia)
Return True
End If
'Entrega Directa requiere Cliente y Vendedor 'Entrega Directa requiere Cliente y Vendedor
If ChkEntregaDirecta.Checked And Ddlcliente.txtValue.Value.ToEntero <= 0 Then If ChkEntregaDirecta.Checked And Ddlcliente.txtValue.Value.ToEntero <= 0 Then
Alert("Al ser una Entrega Directa es necesario seleccionar un cliente, por favor seleccione uno.") Alert("Al ser una Entrega Directa es necesario seleccionar un cliente, por favor seleccione uno.")

View File

@@ -348,6 +348,7 @@
<asp:BoundField DataField="EntregaDirectaFormat" HeaderText="Entrega Directa" /> <asp:BoundField DataField="EntregaDirectaFormat" HeaderText="Entrega Directa" />
<asp:BoundField DataField="Total" DataFormatString="{0:N2}" HeaderText="Total" ItemStyle-HorizontalAlign="Right" /> <asp:BoundField DataField="Total" DataFormatString="{0:N2}" HeaderText="Total" ItemStyle-HorizontalAlign="Right" />
<asp:BoundField DataField="MonAbreviatura" HeaderText="Mon" /> <asp:BoundField DataField="MonAbreviatura" HeaderText="Mon" />
<asp:BoundField DataField="PrioridadTexto" HeaderText="Prioridad" />
</Columns> </Columns>
</asp:GridView> </asp:GridView>
@@ -385,6 +386,7 @@
<asp:BoundField DataField="EntregaDirectaFormat" HeaderText="Entrega Directa" /> <asp:BoundField DataField="EntregaDirectaFormat" HeaderText="Entrega Directa" />
<asp:BoundField DataField="Total" HeaderText="Total" DataFormatString="{0:N2}" ItemStyle-HorizontalAlign="Right" ItemStyle-Width="80px" /> <asp:BoundField DataField="Total" HeaderText="Total" DataFormatString="{0:N2}" ItemStyle-HorizontalAlign="Right" ItemStyle-Width="80px" />
<asp:BoundField DataField="MonAbreviatura" HeaderText="Mon" /> <asp:BoundField DataField="MonAbreviatura" HeaderText="Mon" />
<asp:BoundField DataField="PrioridadTexto" HeaderText="Prioridad" />
</Columns> </Columns>
</asp:GridView> </asp:GridView>
</ContentTemplate> </ContentTemplate>
@@ -424,6 +426,7 @@
<asp:BoundField DataField="EntregaDirectaFormat" HeaderText="Entrega Directa" /> <asp:BoundField DataField="EntregaDirectaFormat" HeaderText="Entrega Directa" />
<asp:BoundField DataField="Total" HeaderText="Total" DataFormatString="{0:N2}" ItemStyle-HorizontalAlign="Right" ItemStyle-Width="80px" /> <asp:BoundField DataField="Total" HeaderText="Total" DataFormatString="{0:N2}" ItemStyle-HorizontalAlign="Right" ItemStyle-Width="80px" />
<asp:BoundField DataField="MonAbreviatura" HeaderText="Mon" /> <asp:BoundField DataField="MonAbreviatura" HeaderText="Mon" />
<asp:BoundField DataField="PrioridadTexto" HeaderText="Prioridad" />
</Columns> </Columns>
</asp:GridView> </asp:GridView>

View File

@@ -22,7 +22,7 @@ Partial Class RepOC
Set(value As DataTable) Set(value As DataTable)
ViewState("DtPorAtender") = value ViewState("DtPorAtender") = value
End Set End Set
End Property End Property
Private Property DtPendiente As DataTable Private Property DtPendiente As DataTable
Get Get
Return DirectCast(ViewState("DtPendiente"), DataTable) Return DirectCast(ViewState("DtPendiente"), DataTable)
@@ -30,9 +30,9 @@ Partial Class RepOC
Set(value As DataTable) Set(value As DataTable)
ViewState("DtPendiente") = value ViewState("DtPendiente") = value
End Set End Set
End Property End Property
#End Region #End Region
Protected Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load Protected Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load
If Not Page.IsPostBack Then If Not Page.IsPostBack Then
txtFechaI.Text = Now.AddMonths(-3).ToShortDateString txtFechaI.Text = Now.AddMonths(-3).ToShortDateString
@@ -108,12 +108,12 @@ Partial Class RepOC
Protected Sub CargaUsuarios() Protected Sub CargaUsuarios()
ddlUsuario.DataSource = GlobalDTUsuarios(-1, UsuarioActual.CveEmpresa).FiltraParametros("", "Nombre", {"CveUsuario", "Nombre"}) ddlUsuario.DataSource = GlobalDTUsuarios(-1, UsuarioActual.CveEmpresa).FiltraParametros("", "Nombre", {"CveUsuario", "Nombre"})
ddlUsuario.DataBind() ddlUsuario.DataBind()
ddlUsuario.Items.Insert(0, New ListItem("Todos", "-1")) ddlUsuario.Items.Insert(0, New ListItem("Todos", "-1"))
DdlUsuarioAsignado.DataSource = GlobalDTUsuarios(-1, UsuarioActual.CveEmpresa).FiltraParametros("Estatus = 1", "Nombre", {"CveUsuario", "Nombre"}) DdlUsuarioAsignado.DataSource = GlobalDTUsuarios(-1, UsuarioActual.CveEmpresa).FiltraParametros("Estatus = 1", "Nombre", {"CveUsuario", "Nombre"})
DdlUsuarioAsignado.DataBind() DdlUsuarioAsignado.DataBind()
DdlUsuarioAsignado.Items.Insert(0, New ListItem("Todos", "-1")) DdlUsuarioAsignado.Items.Insert(0, New ListItem("Todos", "-1"))
DdlUsuarioAutorizo.DataSource = GlobalDTUsuarios(-1, UsuarioActual.CveEmpresa).FiltraParametros("", "Nombre", {"CveUsuario", "Nombre"}) DdlUsuarioAutorizo.DataSource = GlobalDTUsuarios(-1, UsuarioActual.CveEmpresa).FiltraParametros("", "Nombre", {"CveUsuario", "Nombre"})
DdlUsuarioAutorizo.DataBind() DdlUsuarioAutorizo.DataBind()
DdlUsuarioAutorizo.Items.Insert(0, New ListItem("Todos", "-1")) DdlUsuarioAutorizo.Items.Insert(0, New ListItem("Todos", "-1"))
@@ -137,7 +137,7 @@ Partial Class RepOC
End Sub End Sub
Protected Sub CargaEstatus() Protected Sub CargaEstatus()
DdlEstatus.DataSource = GlobalDTOCEstatus(UsuarioActual.CveEmpresa).FiltraParametros(String.Format(" (Tipo = '{0}' OR '{0}' = '-1')", DdlTipo.SelectedValue.ToString)) DdlEstatus.DataSource = GlobalDTOCEstatus(UsuarioActual.CveEmpresa).FiltraParametros(String.Format(" (Tipo = '{0}' OR '{0}' = '-1')", DdlTipo.SelectedValue.ToString))
DdlEstatus.DataBind() DdlEstatus.DataBind()
If DdlTipo.SelectedValue = "-1" Or DdlTipo.SelectedValue = "REQ" Then DdlEstatus.Items.Insert(0, New ListItem("Pre Requisicion", "0")) If DdlTipo.SelectedValue = "-1" Or DdlTipo.SelectedValue = "REQ" Then DdlEstatus.Items.Insert(0, New ListItem("Pre Requisicion", "0"))
DdlEstatus.Items.Insert(0, New ListItem("Todos", "-1")) DdlEstatus.Items.Insert(0, New ListItem("Todos", "-1"))
@@ -205,34 +205,64 @@ Partial Class RepOC
Dim OC As New ClsOC Dim OC As New ClsOC
If OC.GetOrdenesPendientes(DdlTipo.SelectedValue.ToString, 0, UsuarioActual.CveEmpresa, DdlProyectos.SelectedValue.ToEntero, DdlSubProyectos.SelectedValue.ToEntero, If OC.GetOrdenesPendientes(DdlTipo.SelectedValue.ToString, 0, UsuarioActual.CveEmpresa, DdlProyectos.SelectedValue.ToEntero, DdlSubProyectos.SelectedValue.ToEntero,
DdlEstatus.SelectedValue.ToEntero, UsuarioActual.CveUsuario, ddlcliente.SelectedValue.ToEntero, SoloSubProyectosConPermiso:=If(UsuarioActual.Empresa.Funcionalidad(530) = "1", True, False), DdlEstatus.SelectedValue.ToEntero, UsuarioActual.CveUsuario, ddlcliente.SelectedValue.ToEntero, SoloSubProyectosConPermiso:=If(UsuarioActual.Empresa.Funcionalidad(530) = "1", True, False),
CveUsuarioAsignado:=DdlUsuarioAsignado.SelectedValue.ToEntero(), EntregaDirecta:=DdlEntregaDirecta.SelectedValue.ToEntero()) Then CveUsuarioAsignado:=DdlUsuarioAsignado.SelectedValue.ToEntero(), EntregaDirecta:=DdlEntregaDirecta.SelectedValue.ToEntero()) Then
DtPorAtender = OC.DtResultados DtPorAtender = OC.DtResultados
GvPorAtender.DataSource = DtPorAtender 'OC.DtResultados GvPorAtender.DataSource = DtPorAtender 'OC.DtResultados
GvPorAtender.DataBind() GvPorAtender.DataBind()
'If (GvPorAtender.Rows.Count > 0) Then 'SI NO TIENE DATOS, NO MOSTRAR LA COLUMNA
' GvPorAtender.UseAccessibleHeader = True If OC.DtResultados.FiltraParametros("", DistinctColumns:={"UsuarioAsignado"}).FiltroPrimeroValor("UsuarioAsignado") = "" Then
' GvPorAtender.HeaderRow.TableSection = TableRowSection.TableHeader GvPorAtender.Columns(10).Visible = False
' RegistraScript("AddScrollGvPorAtender();") End If
'End If
'SI NO TIENE DATOS, NO MOSTRAR LA COLUMNA
If OC.DtResultados.FiltraParametros("", DistinctColumns:={"Cliente"}).FiltroPrimeroValor("Cliente") = "" Then
GvPorAtender.Columns(12).Visible = False
End If
'SI NO TIENE DATOS, NO MOSTRAR LA COLUMNA
If OC.DtResultados.FiltraParametros("", DistinctColumns:={"CodigoAF"}).FiltroPrimeroValor("CodigoAF") = "" Then
GvPorAtender.Columns(13).Visible = False
End If
'SI NO TIENE DATOS, NO MOSTRAR LA COLUMNA
If OC.DtResultados.FiltraParametros("", DistinctColumns:={"EntregaDirectaFormat"}).FiltroPrimeroValor("EntregaDirectaFormat") = "" Then
GvPorAtender.Columns(15).Visible = False
End If
End If End If
If OC.GetOrdenesPendientes(DdlTipo.SelectedValue.ToString, 1, UsuarioActual.CveEmpresa, DdlProyectos.SelectedValue.ToEntero, DdlSubProyectos.SelectedValue.ToEntero, If OC.GetOrdenesPendientes(DdlTipo.SelectedValue.ToString, 1, UsuarioActual.CveEmpresa, DdlProyectos.SelectedValue.ToEntero, DdlSubProyectos.SelectedValue.ToEntero,
DdlEstatus.SelectedValue.ToEntero, UsuarioActual.CveUsuario, ddlcliente.SelectedValue.ToEntero, SoloSubProyectosConPermiso:=If(UsuarioActual.Empresa.Funcionalidad(530) = "1", True, False), DdlEstatus.SelectedValue.ToEntero, UsuarioActual.CveUsuario, ddlcliente.SelectedValue.ToEntero, SoloSubProyectosConPermiso:=If(UsuarioActual.Empresa.Funcionalidad(530) = "1", True, False),
CveUsuarioAsignado:=DdlUsuarioAsignado.SelectedValue.ToEntero(), EntregaDirecta:=DdlEntregaDirecta.SelectedValue.ToEntero()) Then CveUsuarioAsignado:=DdlUsuarioAsignado.SelectedValue.ToEntero(), EntregaDirecta:=DdlEntregaDirecta.SelectedValue.ToEntero()) Then
GvPendientes.DataSource = OC.DtResultados GvPendientes.DataSource = OC.DtResultados
DtPendiente = OC.DtResultados DtPendiente = OC.DtResultados
GvPendientes.DataBind() GvPendientes.DataBind()
'If (GvPendientes.Rows.Count > 0) Then
' GvPendientes.UseAccessibleHeader = True 'SI NO TIENE DATOS, NO MOSTRAR LA COLUMNA
' GvPendientes.HeaderRow.TableSection = TableRowSection.TableHeader If OC.DtResultados.FiltraParametros("", DistinctColumns:={"UsuarioAsignado"}).FiltroPrimeroValor("UsuarioAsignado") = "" Then
' RegistraScript("AddScrollGvPendientes();") GvPendientes.Columns(10).Visible = False
'End If End If
'SI NO TIENE DATOS, NO MOSTRAR LA COLUMNA
If OC.DtResultados.FiltraParametros("", DistinctColumns:={"Cliente"}).FiltroPrimeroValor("Cliente") = "" Then
GvPendientes.Columns(12).Visible = False
End If
'SI NO TIENE DATOS, NO MOSTRAR LA COLUMNA
If OC.DtResultados.FiltraParametros("", DistinctColumns:={"CodigoAF"}).FiltroPrimeroValor("CodigoAF") = "" Then
GvPendientes.Columns(13).Visible = False
End If
'SI NO TIENE DATOS, NO MOSTRAR LA COLUMNA
If OC.DtResultados.FiltraParametros("", DistinctColumns:={"EntregaDirectaFormat"}).FiltroPrimeroValor("EntregaDirectaFormat") = "" Then
GvPendientes.Columns(15).Visible = False
End If
End If End If
OC.Dispose() OC.Dispose()
End Sub End Sub
Protected Sub GVPendientes_RowDataBound(sender As Object, e As GridViewRowEventArgs) Handles GvPendientes.RowDataBound Protected Sub GVPendientes_RowDataBound(sender As Object, e As GridViewRowEventArgs) Handles GvPendientes.RowDataBound
If e.Row.RowType = DataControlRowType.DataRow Then If e.Row.RowType = DataControlRowType.DataRow Then
@@ -337,19 +367,39 @@ Partial Class RepOC
Dim OC As New ClsOC Dim OC As New ClsOC
If OC.GetOrdenesCompraRep(DdlTipo.SelectedValue.ToString, DdlProyectos.SelectedValue.ToEntero, DdlSubProyectos.SelectedValue.ToEntero, DDlClasificacion.SelectedValue.ToEntero, If OC.GetOrdenesCompraRep(DdlTipo.SelectedValue.ToString, DdlProyectos.SelectedValue.ToEntero, DdlSubProyectos.SelectedValue.ToEntero, DDlClasificacion.SelectedValue.ToEntero,
DdlEstatus.SelectedValue.ToEntero, FI, FF, -1, ddlProveedor.SelectedValue.ToEntero, If(txtFolio.Text.ToEntero = 0, -1, txtFolio.Text.ToEntero), ddlUsuario.SelectedValue.ToEntero, DdlEstatus.SelectedValue.ToEntero, FI, FF, -1, ddlProveedor.SelectedValue.ToEntero, If(txtFolio.Text.ToEntero = 0, -1, txtFolio.Text.ToEntero), ddlUsuario.SelectedValue.ToEntero,
If(CheckNoCompleta.Checked, -1, UsuarioActual.CveUsuario), UsuarioActual.Empresa.CveEmpresa, If(DDlPS.SelectedValue = "", -1, DDlPS.SelectedValue.ToEntero), If(CheckNoCompleta.Checked, True, False), If(CheckNoCompleta.Checked, -1, UsuarioActual.CveUsuario), UsuarioActual.Empresa.CveEmpresa, If(DDlPS.SelectedValue = "", -1, DDlPS.SelectedValue.ToEntero), If(CheckNoCompleta.Checked, True, False),
ddlcliente.SelectedValue.ToEntero, CveActivoFijo:=DdlActivoFijo.SelectedValue.ToEntero, SoloSubProyectosConPermiso:=If(UsuarioActual.Empresa.Funcionalidad(530) = "1", True, False), ddlcliente.SelectedValue.ToEntero, CveActivoFijo:=DdlActivoFijo.SelectedValue.ToEntero, SoloSubProyectosConPermiso:=If(UsuarioActual.Empresa.Funcionalidad(530) = "1", True, False),
CveUsuarioAutorizo:=DdlUsuarioAutorizo.SelectedValue.ToEntero(), CveUsuarioAsignado:=DdlUsuarioAsignado.SelectedValue.ToEntero(), EntregaDirecta:=DdlEntregaDirecta.SelectedValue.ToEntero()) Then CveUsuarioAutorizo:=DdlUsuarioAutorizo.SelectedValue.ToEntero(), CveUsuarioAsignado:=DdlUsuarioAsignado.SelectedValue.ToEntero(), EntregaDirecta:=DdlEntregaDirecta.SelectedValue.ToEntero()) Then
GvConsultar.DataSource = OC.DtResultados GvConsultar.DataSource = OC.DtResultados
DtOC = OC.DtResultados DtOC = OC.DtResultados
DtPorAtender = OC.DtResultados DtPorAtender = OC.DtResultados
LblTotal.Text = OC.DtResultados.SUM("Total").FormatoNumero LblTotal.Text = OC.DtResultados.SUM("Total").FormatoNumero
If UsuarioActual.TienePermisoProceso(227) Then If UsuarioActual.TienePermisoProceso(227) Then
DivTotalOC.Visible = True DivTotalOC.Visible = True
End If End If
'SI NO TIENE DATOS, NO MOSTRAR LA COLUMNA
If OC.DtResultados.FiltraParametros("", DistinctColumns:={"UsuarioAsignado"}).FiltroPrimeroValor("UsuarioAsignado") = "" Then
GvConsultar.Columns(10).Visible = False
End If
'SI NO TIENE DATOS, NO MOSTRAR LA COLUMNA
If OC.DtResultados.FiltraParametros("", DistinctColumns:={"Cliente"}).FiltroPrimeroValor("Cliente") = "" Then
GvConsultar.Columns(12).Visible = False
End If
'SI NO TIENE DATOS, NO MOSTRAR LA COLUMNA
If OC.DtResultados.FiltraParametros("", DistinctColumns:={"CodigoAF"}).FiltroPrimeroValor("CodigoAF") = "" Then
GvConsultar.Columns(13).Visible = False
End If
'SI NO TIENE DATOS, NO MOSTRAR LA COLUMNA
If OC.DtResultados.FiltraParametros("", DistinctColumns:={"EntregaDirectaFormat"}).FiltroPrimeroValor("EntregaDirectaFormat") = "" Then
GvConsultar.Columns(15).Visible = False
End If
End If End If
OC.Dispose() OC.Dispose()
GvConsultar.DataBind() GvConsultar.DataBind()
@@ -382,7 +432,7 @@ Partial Class RepOC
Case "2" 'Rechazada Case "2" 'Rechazada
e.Row.Cells(7).CssClass = "label label-sm label-danger" 'Rojo e.Row.Cells(7).CssClass = "label label-sm label-danger" 'Rojo
Case "3" 'Solicitada Case "3" 'Solicitada
e.Row.Cells(7).CssClass = "label label-sm label-Default" 'Gris e.Row.Cells(7).CssClass = "label label-sm label-default" 'Gris
End Select End Select
If e.Row.DBCampo("Tipo") = "OC" Then If e.Row.DBCampo("Tipo") = "OC" Then
@@ -497,11 +547,11 @@ Partial Class RepOC
'GvPendientes.ExportToExcel("OrdenesCompraPendientes" & Now.ToShortDateString) 'GvPendientes.ExportToExcel("OrdenesCompraPendientes" & Now.ToShortDateString)
ImprimirPendientes("EXCEL") ImprimirPendientes("EXCEL")
End Sub End Sub
Protected Sub LbPendientesPDF_Click(sender As Object, e As System.EventArgs) Handles LbPendientesPDF.Click Protected Sub LbPendientesPDF_Click(sender As Object, e As System.EventArgs) Handles LbPendientesPDF.Click
ImprimirPendientes("PDF") ImprimirPendientes("PDF")
End Sub End Sub
Private Sub ImprimirPendientes(format As String) Private Sub ImprimirPendientes(format As String)
If UsuarioActual.CveEmpresa.Contiene(72) Then If UsuarioActual.CveEmpresa.Contiene(72) Then
Dim params As New List(Of ReportParameter) Dim params As New List(Of ReportParameter)
params.Add(New ReportParameter("NombreEmpresa", UsuarioActual.Empresa.Empresa)) params.Add(New ReportParameter("NombreEmpresa", UsuarioActual.Empresa.Empresa))
@@ -514,7 +564,7 @@ Partial Class RepOC
ImprimirPDF(String.Format(UsuarioActual.Empresa.Ruta & "/Formatos/RepRequisicionesOC.rdlc", UsuarioActual.Empresa.Ruta), DtPendiente, params, Formato:=format) ImprimirPDF(String.Format(UsuarioActual.Empresa.Ruta & "/Formatos/RepRequisicionesOC.rdlc", UsuarioActual.Empresa.Ruta), DtPendiente, params, Formato:=format)
Else Else
GvConsultar.ExportToExcel("OrdenesCompra" & Now.ToShortDateString) GvConsultar.ExportToExcel("OrdenesCompra" & Now.ToShortDateString)
End If End If
End Sub End Sub
Protected Sub LbConsultar_Click(sender As Object, e As System.EventArgs) Handles LbConsultar.Click Protected Sub LbConsultar_Click(sender As Object, e As System.EventArgs) Handles LbConsultar.Click
If UsuarioActual.CveEmpresa.Contiene(72) Then If UsuarioActual.CveEmpresa.Contiene(72) Then

View File

@@ -240,6 +240,7 @@
<asp:Literal Text='<%# Eval("Proveedor").ToString %>' runat="server"></asp:Literal> <asp:Literal Text='<%# Eval("Proveedor").ToString %>' runat="server"></asp:Literal>
</ItemTemplate> </ItemTemplate>
</asp:TemplateField> </asp:TemplateField>
<asp:BoundField DataField="PrioridadTexto" HeaderText="Prioridad" />