This commit is contained in:
Antonio Gonzalez
2019-12-27 08:58:00 -07:00
3 changed files with 193 additions and 29 deletions

View File

@@ -191,7 +191,7 @@ Public Class ClsCompras
AplicaNotaCredito As Boolean, Observaciones As String, CveEstatusCompra As Integer, CvePrePoliza As Integer, CveUsuario As Integer, CveEmpresa As Integer, Optional IdPoliza As Integer = -1, AplicaNotaCredito As Boolean, Observaciones As String, CveEstatusCompra As Integer, CvePrePoliza As Integer, CveUsuario As Integer, CveEmpresa As Integer, Optional IdPoliza As Integer = -1,
Optional CveOC As Integer = -1, Optional CveCajaChica As Integer = -1, Optional CvePersonal As Integer = -1, Optional NumeroReembolso As String = "-1", Optional CveProveedorSucursal As Integer = -1, Optional CveOC As Integer = -1, Optional CveCajaChica As Integer = -1, Optional CvePersonal As Integer = -1, Optional NumeroReembolso As String = "-1", Optional CveProveedorSucursal As Integer = -1,
Optional AplicoPromocion As Boolean = False, Optional PorcentajeIVA As Double = 0, Optional CveMetodoPago As Integer = -1, Optional CveRetIVAConcepto As Integer = -1, Optional CveConceptoContableAlmacen As Integer = -1, Optional AplicoPromocion As Boolean = False, Optional PorcentajeIVA As Double = 0, Optional CveMetodoPago As Integer = -1, Optional CveRetIVAConcepto As Integer = -1, Optional CveConceptoContableAlmacen As Integer = -1,
Optional CveRetISRConcepto As Integer = -1, Optional NoDeducible As Boolean = False, Optional CveTipoCompra As Integer = -1) As Boolean Optional CveRetISRConcepto As Integer = -1, Optional NoDeducible As Boolean = False, Optional CveTipoCompra As Integer = -1, Optional TotalOriginal As Double = 0) As Boolean
Dim Retorno As Boolean = False Dim Retorno As Boolean = False
@@ -239,6 +239,8 @@ Public Class ClsCompras
.Add("@CveRetISRConcepto", SqlDbType.Int).Value = CveRetISRConcepto .Add("@CveRetISRConcepto", SqlDbType.Int).Value = CveRetISRConcepto
.Add("@NoDeducible", SqlDbType.Bit).Value = NoDeducible .Add("@NoDeducible", SqlDbType.Bit).Value = NoDeducible
.Add("@CveTipoCompra", SqlDbType.Int).Value = CveTipoCompra .Add("@CveTipoCompra", SqlDbType.Int).Value = CveTipoCompra
.Add("@TotalOriginal", SqlDbType.Money).Value = TotalOriginal
End With End With
Try Try

View File

@@ -907,6 +907,10 @@
<td runat="server" id="tdT5" visible="false"> <td runat="server" id="tdT5" visible="false">
<asp:Label Text="" ID="LbIVAOriginal" runat="server" /> <asp:Label Text="" ID="LbIVAOriginal" runat="server" />
</td> </td>
<td runat="server" id="tdIVA6" visible="false">
<asp:LinkButton runat="server" ID="LnkActivaIva6" Text="" ToolTip="Ret IVA Servicios" OnClick="LnkActivaIva6_Click"><i class="fa fa-usd" aria-hidden="true"></i></asp:LinkButton>
</td>
<%--<td align="left" runat="server" id="TdIVA" visible="false"> <%--<td align="left" runat="server" id="TdIVA" visible="false">
<asp:DropDownList ID="DdlIVA" AutoPostBack="true" OnSelectedIndexChanged="DdlIVA_SelectedIndexChanged" CssClass="select2me" Style="width: 100%; display: inline-block;" runat="server" Visible="false"> <asp:DropDownList ID="DdlIVA" AutoPostBack="true" OnSelectedIndexChanged="DdlIVA_SelectedIndexChanged" CssClass="select2me" Style="width: 100%; display: inline-block;" runat="server" Visible="false">
<asp:ListItem Selected="True" Value="1.08">8%</asp:ListItem> <asp:ListItem Selected="True" Value="1.08">8%</asp:ListItem>
@@ -914,6 +918,7 @@
<asp:ListItem Value="1">0%</asp:ListItem> <asp:ListItem Value="1">0%</asp:ListItem>
</asp:DropDownList> </asp:DropDownList>
</td>--%> </td>--%>
</tr> </tr>
<tr align="right" id="TrRetIVA" runat="server" visible="False"> <tr align="right" id="TrRetIVA" runat="server" visible="False">
<td><b>Ret. IVA:</b></td> <td><b>Ret. IVA:</b></td>

View File

@@ -869,6 +869,9 @@ Partial Class Compras_Compras
Private Property Fecha As String Private Property Fecha As String
Private Property SubTotal As Decimal Private Property SubTotal As Decimal
Private Property Total As Decimal = 0 Private Property Total As Decimal = 0
Private Property Descuentos As Decimal = 0 Private Property Descuentos As Decimal = 0
Private Property EmisorRFC As String Private Property EmisorRFC As String
Private Property ReceptorRFC As String Private Property ReceptorRFC As String
@@ -1047,14 +1050,20 @@ Partial Class Compras_Compras
ViewState("RetISROriginal") = value ViewState("RetISROriginal") = value
End Set End Set
End Property End Property
Private Property TotalOriginal As Double Private Property TotalOriginal As Double
Get Get
Return ViewState("TotalOriginal").ToString.ToDouble If ViewState("TotalOriginal") Is Nothing Then
Return 0
Else
Return ViewState("TotalOriginal").ToString.ToDouble
End If
End Get End Get
Set(value As Double) Set(value As Double)
ViewState("TotalOriginal") = value ViewState("TotalOriginal") = value
End Set End Set
End Property End Property
Private Property ActualizaTotales As Boolean Private Property ActualizaTotales As Boolean
Get Get
Return CBool(ViewState("ActualizaTotales")) Return CBool(ViewState("ActualizaTotales"))
@@ -2052,19 +2061,37 @@ Partial Class Compras_Compras
End Function End Function
Private Sub CargaRetIVAConcepto(Optional Cambio As Boolean = False) Private Sub CargaRetIVAConcepto(Optional Cambio As Boolean = False)
If TrRetIVA.Visible Then If TrRetIVA.Visible Then
TdRetIVAConcepto.Visible = True TdRetIVAConcepto.Visible = True
End If End If
If Cambio Then If Cambio Then
DdlRetIVAConcepto.Items.Clear() DdlRetIVAConcepto.Items.Clear()
If RFCProv.Length = 13 Then If RFCProv.Length = 13 Then
DdlRetIVAConcepto.Items.Insert(0, New ListItem("Honorarios/Serv. Prof.", "1")) DdlRetIVAConcepto.Items.Insert(0, New ListItem("Honorarios/Serv. Prof.", "1"))
DdlRetIVAConcepto.Items.Insert(1, New ListItem("Fletes P.F.", "2")) DdlRetIVAConcepto.Items.Insert(1, New ListItem("Fletes P.F.", "2"))
ElseIf RFCProv.Length = 12 Then ElseIf RFCProv.Length = 12 Then
DdlRetIVAConcepto.Items.Insert(0, New ListItem("Fletes P.M.", "3")) DdlRetIVAConcepto.Items.Insert(0, New ListItem("Fletes P.M.", "3"))
End If End If
DdlRetIVAConcepto.Items.Add(New ListItem("Arrendamiento", "4")) DdlRetIVAConcepto.Items.Add(New ListItem("Arrendamiento", "4"))
DdlRetIVAConcepto.Items.Add(New ListItem("Ret IVA Servicios", "5"))
End If End If
UpPS.Update() UpPS.Update()
End Sub End Sub
@@ -2157,6 +2184,10 @@ Partial Class Compras_Compras
End If End If
End If End If
Dim MostrarRetIva6 As Boolean = False
TxtSubTotal.Text = SubtotalTemp.FormatoNumero TxtSubTotal.Text = SubtotalTemp.FormatoNumero
@@ -2204,6 +2235,25 @@ Partial Class Compras_Compras
'ASIGNA VALORES ORIGINALES PARA GUARDAR 'ASIGNA VALORES ORIGINALES PARA GUARDAR
AsignaValoresOriginales(SubtotalTemp, Subtotal2Temp, IVATemp, RetIVATemp, RetISRTemp, Total) AsignaValoresOriginales(SubtotalTemp, Subtotal2Temp, IVATemp, RetIVATemp, RetISRTemp, Total)
If RetencionIVA = 0 And IVAOriginal > 0 Then
For Each dRow As DataRow In TmpDT.Rows
If dRow("CveTipoPS").ToString.ToEntero = 1 Then
tdIVA6.Visible = True
Exit For
End If
Next
End If
End Sub End Sub
''' <summary> ''' <summary>
@@ -4347,7 +4397,7 @@ Partial Class Compras_Compras
TxtRedondeo.Text.ToDouble, TxtTotal.Text.ToDouble, TxtFecha.Text.Trim.ToDate, DdlMoneda.SelectedValue.ToEntero, TipoCambio, TxtFechaPago.Text.Trim.ToDate, ChkAplicaNotaCredito.Checked, TxtObsFact.Text.Trim, CveEstatusFactura, TxtRedondeo.Text.ToDouble, TxtTotal.Text.ToDouble, TxtFecha.Text.Trim.ToDate, DdlMoneda.SelectedValue.ToEntero, TipoCambio, TxtFechaPago.Text.Trim.ToDate, ChkAplicaNotaCredito.Checked, TxtObsFact.Text.Trim, CveEstatusFactura,
CvePrePoliza, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, IdPoliza, CveCajaChica:=CveCajaChica, CvePersonal:=CvePersonal, NumeroReembolso:=NumeroReembolso, CveProveedorSucursal:=DdlProveedorSucursal.SelectedValue.ToEntero, CvePrePoliza, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, IdPoliza, CveCajaChica:=CveCajaChica, CvePersonal:=CvePersonal, NumeroReembolso:=NumeroReembolso, CveProveedorSucursal:=DdlProveedorSucursal.SelectedValue.ToEntero,
AplicoPromocion:=ChkOCPromocion.Checked, PorcentajeIVA:=PorcentajeIVA, CveMetodoPago:=CveMetodoPago, CveRetIVAConcepto:=If(DdlRetIVAConcepto.Items.Count > 0, DdlRetIVAConcepto.SelectedValue.ToEntero, -1), CveConceptoContableAlmacen:=CveConceptoContableAlmacen, AplicoPromocion:=ChkOCPromocion.Checked, PorcentajeIVA:=PorcentajeIVA, CveMetodoPago:=CveMetodoPago, CveRetIVAConcepto:=If(DdlRetIVAConcepto.Items.Count > 0, DdlRetIVAConcepto.SelectedValue.ToEntero, -1), CveConceptoContableAlmacen:=CveConceptoContableAlmacen,
CveRetISRConcepto:=If(DdlRetISRConcepto.Items.Count > 0, DdlRetISRConcepto.SelectedValue.ToEntero, -1), NoDeducible:=EsNoDeducible, CveTipoCompra:=DdlTipoCompra.SelectedValue.ToEntero) Then CveRetISRConcepto:=If(DdlRetISRConcepto.Items.Count > 0, DdlRetISRConcepto.SelectedValue.ToEntero, -1), NoDeducible:=EsNoDeducible, CveTipoCompra:=DdlTipoCompra.SelectedValue.ToEntero, TotalOriginal:=TotalOriginal) Then
ViewState("CveCompra") = ObjCompras.CveCompra ViewState("CveCompra") = ObjCompras.CveCompra
If ObjCompras.DtResultados.Rows.Count > 0 Then ViewState("CompraFolio") = ObjCompras.DtResultados.Rows(0)("vFolio").ToString If ObjCompras.DtResultados.Rows.Count > 0 Then ViewState("CompraFolio") = ObjCompras.DtResultados.Rows(0)("vFolio").ToString
@@ -6087,6 +6137,7 @@ Partial Class Compras_Compras
End If End If
Case 65 'Perdida Case 65 'Perdida
If TCPago <> 1 AndAlso TxtFechaPago.Text <> TxtFecha.Text Then If TCPago <> 1 AndAlso TxtFechaPago.Text <> TxtFecha.Text Then
IdCtaContable = UsuarioActual.Empresa.IdCuentaPerdidaCambiaria IdCtaContable = UsuarioActual.Empresa.IdCuentaPerdidaCambiaria
CveCuenta = UsuarioActual.Empresa.CveCuentaPerdidaCambiaria CveCuenta = UsuarioActual.Empresa.CveCuentaPerdidaCambiaria
@@ -6100,6 +6151,35 @@ Partial Class Compras_Compras
Else Else
importeMovimiento = 0 importeMovimiento = 0
End If End If
Case 285 'Perdida
If ObjConta.GetRetCuenta(ConceptoContable, UsuarioActual.CveEmpresa) And Not IdCtaContable > 0 Then
If ObjConta.DtResultados.Rows.Count > 0 Then
IdCtaContable = ObjConta.DtResultados.Rows(0)("IdCuentaRetIVACirculacion").ToString.ToEntero
CveCuenta = ObjConta.DtResultados.Rows(0)("IdCuentaRetIVACirculacionSIG").ToString.ToEntero
End If
End If
If DdlRetIVAConcepto.SelectedValue.ToEntero = 5 Then
If CveMoneda = 2 Then
importeMN = TmpDT.SUMD("RetIVA") * TxtTC.Text.ToDecimal
Else
importeMN = TmpDT.SUMD("RetIVA")
importeMovimiento = TmpDT.SUMD("RetIVA")
End If
Else
importeMovimiento = 0
End If
Case 6 'Compra Case 6 'Compra
@@ -16290,6 +16370,10 @@ Partial Class Compras_Compras
CargaRetIVAConcepto() CargaRetIVAConcepto()
CargaRetISRConcepto() CargaRetISRConcepto()
End Sub End Sub
Private Sub OriginalesVisible(Accion As Boolean) Private Sub OriginalesVisible(Accion As Boolean)
tdT0.Visible = Accion tdT0.Visible = Accion
@@ -18893,11 +18977,11 @@ Partial Class Compras_Compras
End If End If
Else Else
Retorno = False Retorno = False
Exit For Exit For
End If End If
Else Else
'2018.11.24 se cambia concepto 177, de cargo a abono negativo., petición MALL '2018.11.24 se cambia concepto 177, de cargo a abono negativo., petición MALL
If ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, -DiferenciaInvOC, SerieFolio, If(ConceptoSalida = 0, 177, 177), ConceptoPartida, Fecha, If(ConceptoSalida = 0, IdCtaContableAlmacen, IdCtaContableRecepcionOCER), -1, CveProveedor:=CveProveedor, CveMovimientoAlmacen:=CveMovimientoAlmacen, CveOC:=CveOrdenCompra, ImporteMX:=-DiferenciaInvOC, CveCuenta:=CveCuentaAlmacen, CveOCDetalle:=CveOCDetalle) Then If ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, -DiferenciaInvOC, SerieFolio, If(ConceptoSalida = 0, 177, 177), ConceptoPartida, Fecha, If(ConceptoSalida = 0, IdCtaContableAlmacen, IdCtaContableRecepcionOCER), -1, CveProveedor:=CveProveedor, CveMovimientoAlmacen:=CveMovimientoAlmacen, CveOC:=CveOrdenCompra, ImporteMX:=-DiferenciaInvOC, CveCuenta:=CveCuentaAlmacen, CveOCDetalle:=CveOCDetalle) Then
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, DiferenciaInvOC, SerieFolio, 176, ConceptoPartida, Fecha, IdCtaContableRecepcionOC, -1, CveProveedor:=CveProveedor, CveMovimientoAlmacen:=CveMovimientoAlmacen, CveOC:=CveOrdenCompra, ImporteMX:=DiferenciaInvOC, CveOCDetalle:=CveOCDetalle) Then If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, DiferenciaInvOC, SerieFolio, 176, ConceptoPartida, Fecha, IdCtaContableRecepcionOC, -1, CveProveedor:=CveProveedor, CveMovimientoAlmacen:=CveMovimientoAlmacen, CveOC:=CveOrdenCompra, ImporteMX:=DiferenciaInvOC, CveOCDetalle:=CveOCDetalle) Then
Retorno = False Retorno = False
Exit For Exit For
@@ -19135,4 +19219,77 @@ Partial Class Compras_Compras
End Sub End Sub
#End Region #End Region
Protected Sub LnkActivaIva6_Click(sender As Object, e As EventArgs)
TrRetIVA.Visible = True
TdRetIVAConcepto.Visible = True
TotalOriginal = TxtTotal.Text.ToDecimal
'For Each dRow As DataRow In TmpDT.Rows
' If dRow("CveTipoPS").ToString.ToEntero = 1 Then
' tdIVA6.Visible = True
' Exit For
' End If
'Next
For Each dRow As DataRow In TmpDT.Rows
If dRow("CvePS").ToString.ToEntero <= 0 Then
Alert("Debe de asignar producto a todas las partidas", TipoMensaje.MsgAdvertencia)
Exit Sub
End If
Next
If RetencionIVA = 0 And IVAOriginal > 0 Then
For Each dRow As DataRow In TmpDT.Rows
If dRow("CveTipoPS").ToString.ToEntero = 1 Then
'Dim InternalIVA As Decimal = 0D
Dim InternalRETIVA As Decimal = 0D
'InternalIVA = dRow("Cantidad").ToString.ToDecimal * dRow("PU").ToString.ToDecimal * 0.1D
InternalRETIVA = dRow("Cantidad").ToString.ToDecimal * dRow("PU").ToString.ToDecimal * 0.06D
'dRow("IVA") = InternalIVA
'dRow("IVAPorcentaje") = 0.1D
dRow("RetIVA") = InternalRETIVA
' dRow("IVAPorcentaje") = 0.1D
End If
Next
End If
TmpDT.AcceptChanges()
GvPS.DataSource = TmpDT
GvPS.DataBind()
DdlRetIVAConcepto.SelectedValueExist("5")
LblRetIVA.Text = "0.06%"
RetencionIVA = TmpDT.SUMD("RetIVA")
TxtRetIVA.Text = RetencionIVA.ToString("###,###,###.00")
'TrasladoIVA = TmpDT.SUMD("IVA")
'TxtIVA.Text = TrasladoIVA.ToString("###,###,###.00")
'Total = Total - RetencionIVA
TxtTotal.Text = (TxtTotal.Text.ToDecimal - RetencionIVA).ToString("###,###,###.00")
UpPS.Update()
'ValidacionesTotalesXml()
ValidaTotalesGuardar()
End Sub
End Class End Class