diff --git a/App_Code/ClsGenerales.vb b/App_Code/ClsGenerales.vb
index 60e55b897..b47b3d317 100644
--- a/App_Code/ClsGenerales.vb
+++ b/App_Code/ClsGenerales.vb
@@ -1496,6 +1496,34 @@ Public Class ClsGenerales
Return Retorno
End Function
+ Public Function UpdateCuentasDepositosEstatusPagoElectronicoGrupos(CveCuentaDeposito As Integer, EstatusPagoElectronicoGrupos As Boolean) As Boolean
+
+ Dim Retorno As Boolean = False
+
+ DataAdapter("PA_Gral_CuentasDepositosUpdateEstatusPagoElectronicoGrupos")
+
+ With SqlAdapter.SelectCommand.Parameters
+ .Add("@CveCuentaDeposito", SqlDbType.VarChar).Value = CveCuentaDeposito
+ .Add("@EstatusPagoElectronicoGrupos", SqlDbType.Bit).Value = EstatusPagoElectronicoGrupos
+ End With
+
+
+ Try
+ SqlAdapter.Fill(Data)
+ Retorno = True
+ Catch Ex1 As SqlException
+ If Ex1.Message.Contains("Número: 2627;") Then
+ Alert("Ya existe un registro con el mismo nombre", TipoMensaje.MsgAdvertencia)
+ Else
+ Me.OnError("Ocurrió un error al guardar los cambios", Ex1, SqlAdapter.SelectCommand.Parameters.ParametrosInfo())
+ End If
+ Catch ex As Exception
+ OnError("Ocurrió un error al guardar los cambios.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
+ End Try
+
+ Return Retorno
+ End Function
+
#End Region
#Region "T I P O - C A M B I O"
diff --git a/Bancos/PagoElectronicoGrupos.aspx b/Bancos/PagoElectronicoGrupos.aspx
index 521e5853c..e8c9384e9 100644
--- a/Bancos/PagoElectronicoGrupos.aspx
+++ b/Bancos/PagoElectronicoGrupos.aspx
@@ -166,7 +166,7 @@
-
--%>
diff --git a/Bancos/PagoElectronicoGrupos.aspx.vb b/Bancos/PagoElectronicoGrupos.aspx.vb
index 0e89dec64..40f10f8f6 100644
--- a/Bancos/PagoElectronicoGrupos.aspx.vb
+++ b/Bancos/PagoElectronicoGrupos.aspx.vb
@@ -374,24 +374,25 @@ Partial Class Bancos_PagoElectronicoGrupos
fs.Close()
Return True
- End Function
- Private Function GuardaTXT() As Boolean
- Dim Retorno = True
- Try
- Dim Ruta = ""
- Dim FileName As String = Path.GetFileName(FUTxt.PostedFile.FileName)
- NombreArchivo = FileName
- Dim Extension As String = Path.GetExtension(FUTxt.PostedFile.FileName)
- Dim FolderPath As String = String.Format("{0}Empresas\", Request.ApplicationPath)
- Dim FilePath As String = Server.MapPath(FolderPath + FileName)
- FUTxt.SaveAs(FilePath)
- NombreArchivo = FilePath
- Catch ex As Exception
- Retorno = False
- End Try
-
- Return Retorno
End Function
+
+ 'Private Function GuardaTXT() As Boolean
+ ' Dim Retorno = True
+ ' Try
+ ' Dim Ruta = ""
+ ' Dim FileName As String = Path.GetFileName(FUTxt.PostedFile.FileName)
+ ' NombreArchivo = FileName
+ ' Dim Extension As String = Path.GetExtension(FUTxt.PostedFile.FileName)
+ ' Dim FolderPath As String = String.Format("{0}Empresas\", Request.ApplicationPath)
+ ' Dim FilePath As String = Server.MapPath(FolderPath + FileName)
+ ' FUTxt.SaveAs(FilePath)
+ ' NombreArchivo = FilePath
+ ' Catch ex As Exception
+ ' Retorno = False
+ ' End Try
+
+ ' Return Retorno
+ 'End Function
#End Region
#Region " TAB PRINCIPAL "
@@ -544,9 +545,11 @@ Partial Class Bancos_PagoElectronicoGrupos
DtCuentasPendientesTemp.CaseSensitive = False
- Dim DtCuentasPendientesBancomer As DataTable = DtCuentasPendientesTemp.FiltraParametros($" (EstatusPagoElectronicoGrupos IS NULL OR EstatusPagoElectronicoGrupos = False) AND (BancoNombre like '%BBVA%' OR BancoNombre like '%BANCOMER%' ) ", "", {"BancoNombre", "CLABEDestino", "Abreviatura", "RazonSocial", "CveProveedor", "CveBanco", "Cuenta", "BBVAAlias"})
- Dim DtCuentasPendientesInterbancarias As DataTable = DtCuentasPendientesTemp.FiltraParametros($" (EstatusPagoElectronicoGrupos IS NULL OR EstatusPagoElectronicoGrupos = False) AND (BancoNombre not like '%BBVA%' AND BancoNombre not like '%BANCOMER%' ) ", "", {"BancoNombre", "CLABEDestino", "Abreviatura", "RazonSocial", "CveProveedor", "CveBanco", "Cuenta", "BBVAAlias"})
- 'CLABEDestino
+ Dim DtCuentasPendientesBancomer As DataTable = DtCuentasPendientesTemp.FiltraParametros($" (EstatusPagoElectronicoGrupos IS NULL OR EstatusPagoElectronicoGrupos = False) AND (BancoNombre like '%BBVA%' OR BancoNombre like '%BANCOMER%' ) ", "", {"CveCuentaDeposito", "BancoNombre", "CLABEDestino", "Abreviatura", "RazonSocial", "CveProveedor", "CveBanco", "Cuenta", "BBVAAlias"})
+ Dim DtCuentasPendientesInterbancarias As DataTable = DtCuentasPendientesTemp.FiltraParametros($" (EstatusPagoElectronicoGrupos IS NULL OR EstatusPagoElectronicoGrupos = False) AND (BancoNombre not like '%BBVA%' AND BancoNombre not like '%BANCOMER%' ) ", "", {"CveCuentaDeposito", "BancoNombre", "CLABEDestino", "Abreviatura", "RazonSocial", "CveProveedor", "CveBanco", "Cuenta", "BBVAAlias"})
+
+
+ Dim ObjGrales As New ClsGenerales
If DtCuentasPendientesBancomer.Rows.Count > 0 Then
For Each dRow As DataRow In DtCuentasPendientesBancomer.Rows
@@ -591,6 +594,7 @@ Partial Class Bancos_PagoElectronicoGrupos
If Not ErrorLineaBancomer Then
RegistrosAltaBancomer.Append(SBTmpBancomer.ToString)
+ ObjGrales.UpdateCuentasDepositosEstatusPagoElectronicoGrupos(dRow("CveCuentaDeposito").ToString.ToEntero, True)
Else
SBErroresBancomer.Append("
")
SBErrores.AppendLine(SBErroresBancomer.ToString)
@@ -667,6 +671,7 @@ Partial Class Bancos_PagoElectronicoGrupos
If Not ErrorLineaInterbancaria Then
RegistrosAltaInterbancario.Append(SBTmpInterbancarias.ToString)
+ ObjGrales.UpdateCuentasDepositosEstatusPagoElectronicoGrupos(dRow("CveCuentaDeposito").ToString.ToEntero, True)
Else
SBErroresInterBancario.Append("
")
SBErrores.AppendLine(SBErroresInterBancario.ToString)
@@ -683,6 +688,7 @@ Partial Class Bancos_PagoElectronicoGrupos
End If
+ ObjGrales.Dispose()
Dim Mensaje As New StringBuilder
@@ -711,6 +717,7 @@ Partial Class Bancos_PagoElectronicoGrupos
End If
+ CargaDatos()
End Sub
@@ -1327,240 +1334,240 @@ Partial Class Bancos_PagoElectronicoGrupos
DtAlta.Columns.Add("MensajeAdicional", GetType(String))
DtAlta.Columns.Add("Moneda", GetType(String))
- End Sub
-
-
- Protected Sub BtnCargarAlta_Click(sender As Object, e As EventArgs)
- Dim ErrorArchivo = False
-
- If FUTxt.HasFile Then
- If Not GuardaTXT() Then
- Alert("Ocurrio un error al cargar el archivo", TipoMensaje.MsgError)
- Exit Sub
- End If
- Else
- Alert("No tiene ningun archivo", TipoMensaje.MsgAdvertencia)
- Exit Sub
- End If
-
-
- 'LEE TXT
- Dim Texto As String
-
- Dim sr As New System.IO.StreamReader(NombreArchivo)
- Texto = sr.ReadToEnd()
- sr.Close()
-
- Dim TextoArreglo() = Texto.Split(CChar(vbCrLf))
-
- 'Alert(TextoArreglo.Length.ToString)
-
- 'LEE LINEA POR LINEA
- Dim RespuestaHeader = "", RespuestaDetalle = "", RespuestaTrailer = "", CveCuentasDeposito = ""
- CreaDtAlta()
- Dim ObjGrales As New ClsGenerales
- Dim Row As DataRow = Nothing
- Dim TipoCuentaDeposito = ""
-
- For i = 0 To TextoArreglo.Length - 1 Step 1
- 'Valida que el primer renglon sea el HEADER
- If i = 0 Then
- If TextoArreglo(i).Substring(0, 1) <> "H" Then
- ErrorArchivo = True
- Exit For
- Else
- RespuestaHeader = TextoArreglo(i).Substring(50, 2)
- End If
- Else
- 'LEE DETALLE
- If TextoArreglo(i).Length > 1 Then
- If TextoArreglo(i).Substring(1, 1) = "D" Then
-
- 'If i > 1 Then
- ' RespuestaDetalle += vbCrLf
- 'End If
-
- 'RespuestaDetalle += String.Format("{0} | {1} | ", If(TextoArreglo(i).Substring(197, 1) = "M", TextoArreglo(i).Substring(198, 50).Trim, TextoArreglo(i).Substring(268, 60).Trim), (TextoArreglo(i).Substring(599, 30)))
-
- ''Guardo CveCuentaDeposito cuando la operacion salio exitosa para actualizar en la DB
- If TextoArreglo(i).Substring(597, 2) = "00" Or TextoArreglo(i).Substring(597, 2) = "34" Then
- CveCuentasDeposito += If(CveCuentasDeposito <> "", ",", "")
- CveCuentasDeposito += TextoArreglo(i).Substring(3, 30).ToEntero.ToString
- End If
-
-
- ''LLENA DT PARA REPORTE
- Row = DtAlta.NewRow()
-
- Row("Proveedor") = If(TextoArreglo(i).Substring(197, 1) = "M", TextoArreglo(i).Substring(198, 50).Trim, TextoArreglo(i).Substring(268, 60).Trim)
-
- 'BANCO
- If ObjGrales.GetCuentasDepositos(CveCuentaDeposito:=TextoArreglo(i).Substring(3, 30).ToEntero) Then
- If ObjGrales.DtResultados.Rows.Count = 1 Then
- Row("Banco") = ObjGrales.DtResultados.Rows(0)("BancoNombre").ToString
- Else
- ErrorArchivo = True
- Exit For
- End If
- Else
- ErrorArchivo = True
- Exit For
- End If
-
- 'CUENTA
- If TextoArreglo(i).Substring(41, 2).Trim <> "" Then
- Row("Cuenta") = String.Format("{0}", TextoArreglo(i).Substring(43, 35).TrimStart("0"c))
- ElseIf TextoArreglo(i).Substring(81, 2).Trim <> "" Then
- Row("Cuenta") = String.Format("{0}", TextoArreglo(i).Substring(83, 35).TrimStart("0"c))
- Row("TipoCuenta") = "CLABE"
- Else
- ErrorArchivo = True
- Exit For
- End If
-
- 'TIPO CUENTA
- If Row("TipoCuenta").ToString = "" Then
- If String.Format("{0}", TextoArreglo(i).Substring(43, 35).TrimStart("0"c)).Length = 8 Then
- Row("TipoCuenta") = "CIE"
- ElseIf String.Format("{0}", TextoArreglo(i).Substring(43, 35).TrimStart("0"c)).Length = 10 Or String.Format("{0}", TextoArreglo(i).Substring(43, 35).TrimStart("0"c)).Length = 9 Then
- Row("TipoCuenta") = "Cuenta"
- ElseIf String.Format("{0}", TextoArreglo(i).Substring(43, 35).TrimStart("0"c)).Length = 18 Then
- Row("TipoCuenta") = "CLABE"
- End If
- End If
-
- Row("Estatus") = TextoArreglo(i).Substring(599, 30)
-
- DtAlta.Rows.Add(Row)
-
- ''LLENA PARA ALERT
- 'If i > 1 Then
- ' RespuestaDetalle += vbCrLf
- 'End If
-
- 'RespuestaDetalle += String.Format("{0} | {1} | ", If(TextoArreglo(i).Substring(197, 1) = "M", TextoArreglo(i).Substring(198, 50).Trim, TextoArreglo(i).Substring(268, 60).Trim), (TextoArreglo(i).Substring(599, 30)))
-
-
- 'LEE TRAILER
- ElseIf TextoArreglo(i).Substring(1, 1) = "T" Then
- RespuestaTrailer = TextoArreglo(i).Substring(32, 10)
- RespuestaTrailer += vbCrLf
- RespuestaTrailer += TextoArreglo(i).Substring(42, 10)
- RespuestaTrailer += vbCrLf
- RespuestaTrailer += TextoArreglo(i).Substring(52, 10)
- Exit For
- Else
- ErrorArchivo = True
- Exit For
- End If
- End If
- End If
- Next
- ObjGrales.Dispose()
-
-
- Dim Respuesta As New StringBuilder
- 'LEE ARCHIVO
- If Not ErrorArchivo Then
- 'TRADUCE CODIGO RESPUESTA HEADER
- If RespuestaHeader = "01" Then
- RespuestaHeader = "ACEPTADO TOTAL"
- ElseIf RespuestaHeader = "02" Then
- RespuestaHeader = "ACEPTADO PARCIAL"
- ElseIf RespuestaHeader = "03" Then
- RespuestaHeader = "RECHAZADO"
- End If
-
- 'DIVIDE DETALLE
- Dim Detalle() = RespuestaDetalle.Split(CChar(vbCrLf))
-
- 'DIVIDE TRAILER
- Dim Trailer() = RespuestaTrailer.Split(CChar(vbCrLf))
-
- 'ARMADO DE RESPUESTA
- Respuesta.AppendFormat("
Resumen de respuesta: {0}
", RespuestaHeader)
- Respuesta.AppendFormat("Numero de movimientos: {0}
", DtAlta.Rows.Count)
- Respuesta.Append("------------------------------ Detalle de los movimientos ------------------------------
")
-
- Respuesta.Append("| # | Proveedor | Banco | Tipo Cuenta | Cuenta | Estatus |
")
- 'For i = 0 To Detalle.Length - 1
- ' Respuesta.AppendFormat("| {0} | {1}
", i + 1, Detalle(i).Trim)
- 'Next
- Dim i = 1
- Dim Style = ""
- Dim TotalExitos = 0, TotalFracasos = 0
- For Each dr As DataRow In DtAlta.Rows
-
- If dr("estatus").ToString.Trim.Contiene("OPERACION EXITOSA", "ALTA TERCERO EXITOSO") Then
- Style = ""
- TotalExitos += 1
- Else
- Style = "style=""background-color:#FF5F5F;"" "
- TotalFracasos += 1
- End If
-
- Respuesta.AppendFormat("| {0} | {1} | {2} | {3} | {4} | {5} |
", i, dr("Proveedor"), dr("Banco"), dr("TipoCuenta"), dr("Cuenta"), dr("estatus"), Style)
- i += 1
- Next
-
- Respuesta.Append("
-------------------------------------------------------------------------------------
")
-
- Respuesta.AppendFormat("Total de movimientos exitosos: {0}
", TotalExitos)
- Respuesta.AppendFormat("Total de movimientos NO exitosos: {0}
", TotalFracasos)
-
- 'LEE DESDE EL LAYOUT
- 'Respuesta.AppendFormat("Total de altas rechazadas: {0}
", Trailer(0).ToString.ToEntero)
- 'Respuesta.AppendFormat("Total de bajas rechazadas: {0}
", Trailer(1).ToString.ToEntero)
- 'Respuesta.AppendFormat("Total de cambios rechazados: {0}
", Trailer(2).ToString.ToEntero)
-
- End If
-
- If Not ErrorArchivo Then
-
- If CveCuentasDeposito <> "" Then
- Dim ObjIE As New ClsBancos
- Dim ErrorDB = False
- ObjIE.IniciaTransacSQL()
- Dim ArrayCuentasDeposito() = CveCuentasDeposito.Split(","c)
-
- For index = 0 To ArrayCuentasDeposito.Length - 1
- If Not ObjIE.UpdateCuentaDepositoPagoElectronico(ArrayCuentasDeposito(index).ToEntero) Then
- ErrorDB = True
- End If
- Next
-
- If Not ErrorDB Then
- ObjIE.Commit()
- Respuesta.Append("
NOTA: El archivo se analizo correctamente y se efectuaron todos los cambios en el sistema.")
- 'Respuesta.AppendFormat("
Descargar reporte", NombreArchivo)
- Respuesta.AppendFormat("Descargar Reporte", NombreArchivo)
-
- Alert(Respuesta.ToString, TipoMensaje.MsgInformacion)
- Else
- ObjIE.RollBack()
- Respuesta.Append("
NOTA: El archivo se analizo correctamente pero ocurrio un problema al efectuar los cambios en el sistema. Por favor vuelta a intentar.")
- Alert(Respuesta.ToString, TipoMensaje.MsgError)
- End If
-
- ObjIE.Dispose()
- Else
- Respuesta.AppendFormat("
NOTA: El archivo se analizo correctamente pero ningun movimiento fue exitoso.")
- 'Respuesta.AppendFormat("
Descargar reporte", NombreArchivo)
- Respuesta.AppendFormat("Descargar Reporte", NombreArchivo)
-
- Alert(Respuesta.ToString, TipoMensaje.MsgAdvertencia)
- End If
-
- Else
- Alert("Ocurrio un problema al leer el archivo. Por favor revise que el archivo sea el correcto e intente de nuevo.", TipoMensaje.MsgError)
- End If
-
- 'ELIMINA TXT
- My.Computer.FileSystem.DeleteFile(NombreArchivo)
-
- RecargaDatos()
-
End Sub
+
+
+ 'Protected Sub BtnCargarAlta_Click(sender As Object, e As EventArgs)
+ ' Dim ErrorArchivo = False
+
+ ' If FUTxt.HasFile Then
+ ' If Not GuardaTXT() Then
+ ' Alert("Ocurrio un error al cargar el archivo", TipoMensaje.MsgError)
+ ' Exit Sub
+ ' End If
+ ' Else
+ ' Alert("No tiene ningun archivo", TipoMensaje.MsgAdvertencia)
+ ' Exit Sub
+ ' End If
+
+
+ ' 'LEE TXT
+ ' Dim Texto As String
+
+ ' Dim sr As New System.IO.StreamReader(NombreArchivo)
+ ' Texto = sr.ReadToEnd()
+ ' sr.Close()
+
+ ' Dim TextoArreglo() = Texto.Split(CChar(vbCrLf))
+
+ ' 'Alert(TextoArreglo.Length.ToString)
+
+ ' 'LEE LINEA POR LINEA
+ ' Dim RespuestaHeader = "", RespuestaDetalle = "", RespuestaTrailer = "", CveCuentasDeposito = ""
+ ' CreaDtAlta()
+ ' Dim ObjGrales As New ClsGenerales
+ ' Dim Row As DataRow = Nothing
+ ' Dim TipoCuentaDeposito = ""
+
+ ' For i = 0 To TextoArreglo.Length - 1 Step 1
+ ' 'Valida que el primer renglon sea el HEADER
+ ' If i = 0 Then
+ ' If TextoArreglo(i).Substring(0, 1) <> "H" Then
+ ' ErrorArchivo = True
+ ' Exit For
+ ' Else
+ ' RespuestaHeader = TextoArreglo(i).Substring(50, 2)
+ ' End If
+ ' Else
+ ' 'LEE DETALLE
+ ' If TextoArreglo(i).Length > 1 Then
+ ' If TextoArreglo(i).Substring(1, 1) = "D" Then
+
+ ' 'If i > 1 Then
+ ' ' RespuestaDetalle += vbCrLf
+ ' 'End If
+
+ ' 'RespuestaDetalle += String.Format("{0} | {1} | ", If(TextoArreglo(i).Substring(197, 1) = "M", TextoArreglo(i).Substring(198, 50).Trim, TextoArreglo(i).Substring(268, 60).Trim), (TextoArreglo(i).Substring(599, 30)))
+
+ ' ''Guardo CveCuentaDeposito cuando la operacion salio exitosa para actualizar en la DB
+ ' If TextoArreglo(i).Substring(597, 2) = "00" Or TextoArreglo(i).Substring(597, 2) = "34" Then
+ ' CveCuentasDeposito += If(CveCuentasDeposito <> "", ",", "")
+ ' CveCuentasDeposito += TextoArreglo(i).Substring(3, 30).ToEntero.ToString
+ ' End If
+
+
+ ' ''LLENA DT PARA REPORTE
+ ' Row = DtAlta.NewRow()
+
+ ' Row("Proveedor") = If(TextoArreglo(i).Substring(197, 1) = "M", TextoArreglo(i).Substring(198, 50).Trim, TextoArreglo(i).Substring(268, 60).Trim)
+
+ ' 'BANCO
+ ' If ObjGrales.GetCuentasDepositos(CveCuentaDeposito:=TextoArreglo(i).Substring(3, 30).ToEntero) Then
+ ' If ObjGrales.DtResultados.Rows.Count = 1 Then
+ ' Row("Banco") = ObjGrales.DtResultados.Rows(0)("BancoNombre").ToString
+ ' Else
+ ' ErrorArchivo = True
+ ' Exit For
+ ' End If
+ ' Else
+ ' ErrorArchivo = True
+ ' Exit For
+ ' End If
+
+ ' 'CUENTA
+ ' If TextoArreglo(i).Substring(41, 2).Trim <> "" Then
+ ' Row("Cuenta") = String.Format("{0}", TextoArreglo(i).Substring(43, 35).TrimStart("0"c))
+ ' ElseIf TextoArreglo(i).Substring(81, 2).Trim <> "" Then
+ ' Row("Cuenta") = String.Format("{0}", TextoArreglo(i).Substring(83, 35).TrimStart("0"c))
+ ' Row("TipoCuenta") = "CLABE"
+ ' Else
+ ' ErrorArchivo = True
+ ' Exit For
+ ' End If
+
+ ' 'TIPO CUENTA
+ ' If Row("TipoCuenta").ToString = "" Then
+ ' If String.Format("{0}", TextoArreglo(i).Substring(43, 35).TrimStart("0"c)).Length = 8 Then
+ ' Row("TipoCuenta") = "CIE"
+ ' ElseIf String.Format("{0}", TextoArreglo(i).Substring(43, 35).TrimStart("0"c)).Length = 10 Or String.Format("{0}", TextoArreglo(i).Substring(43, 35).TrimStart("0"c)).Length = 9 Then
+ ' Row("TipoCuenta") = "Cuenta"
+ ' ElseIf String.Format("{0}", TextoArreglo(i).Substring(43, 35).TrimStart("0"c)).Length = 18 Then
+ ' Row("TipoCuenta") = "CLABE"
+ ' End If
+ ' End If
+
+ ' Row("Estatus") = TextoArreglo(i).Substring(599, 30)
+
+ ' DtAlta.Rows.Add(Row)
+
+ ' ''LLENA PARA ALERT
+ ' 'If i > 1 Then
+ ' ' RespuestaDetalle += vbCrLf
+ ' 'End If
+
+ ' 'RespuestaDetalle += String.Format("{0} | {1} | ", If(TextoArreglo(i).Substring(197, 1) = "M", TextoArreglo(i).Substring(198, 50).Trim, TextoArreglo(i).Substring(268, 60).Trim), (TextoArreglo(i).Substring(599, 30)))
+
+
+ ' 'LEE TRAILER
+ ' ElseIf TextoArreglo(i).Substring(1, 1) = "T" Then
+ ' RespuestaTrailer = TextoArreglo(i).Substring(32, 10)
+ ' RespuestaTrailer += vbCrLf
+ ' RespuestaTrailer += TextoArreglo(i).Substring(42, 10)
+ ' RespuestaTrailer += vbCrLf
+ ' RespuestaTrailer += TextoArreglo(i).Substring(52, 10)
+ ' Exit For
+ ' Else
+ ' ErrorArchivo = True
+ ' Exit For
+ ' End If
+ ' End If
+ ' End If
+ ' Next
+ ' ObjGrales.Dispose()
+
+
+ ' Dim Respuesta As New StringBuilder
+ ' 'LEE ARCHIVO
+ ' If Not ErrorArchivo Then
+ ' 'TRADUCE CODIGO RESPUESTA HEADER
+ ' If RespuestaHeader = "01" Then
+ ' RespuestaHeader = "ACEPTADO TOTAL"
+ ' ElseIf RespuestaHeader = "02" Then
+ ' RespuestaHeader = "ACEPTADO PARCIAL"
+ ' ElseIf RespuestaHeader = "03" Then
+ ' RespuestaHeader = "RECHAZADO"
+ ' End If
+
+ ' 'DIVIDE DETALLE
+ ' Dim Detalle() = RespuestaDetalle.Split(CChar(vbCrLf))
+
+ ' 'DIVIDE TRAILER
+ ' Dim Trailer() = RespuestaTrailer.Split(CChar(vbCrLf))
+
+ ' 'ARMADO DE RESPUESTA
+ ' Respuesta.AppendFormat("
Resumen de respuesta: {0}
", RespuestaHeader)
+ ' Respuesta.AppendFormat("Numero de movimientos: {0}
", DtAlta.Rows.Count)
+ ' Respuesta.Append("------------------------------ Detalle de los movimientos ------------------------------
")
+
+ ' Respuesta.Append("| # | Proveedor | Banco | Tipo Cuenta | Cuenta | Estatus |
")
+ ' 'For i = 0 To Detalle.Length - 1
+ ' ' Respuesta.AppendFormat("| {0} | {1}
", i + 1, Detalle(i).Trim)
+ ' 'Next
+ ' Dim i = 1
+ ' Dim Style = ""
+ ' Dim TotalExitos = 0, TotalFracasos = 0
+ ' For Each dr As DataRow In DtAlta.Rows
+
+ ' If dr("estatus").ToString.Trim.Contiene("OPERACION EXITOSA", "ALTA TERCERO EXITOSO") Then
+ ' Style = ""
+ ' TotalExitos += 1
+ ' Else
+ ' Style = "style=""background-color:#FF5F5F;"" "
+ ' TotalFracasos += 1
+ ' End If
+
+ ' Respuesta.AppendFormat("| {0} | {1} | {2} | {3} | {4} | {5} |
", i, dr("Proveedor"), dr("Banco"), dr("TipoCuenta"), dr("Cuenta"), dr("estatus"), Style)
+ ' i += 1
+ ' Next
+
+ ' Respuesta.Append("
-------------------------------------------------------------------------------------
")
+
+ ' Respuesta.AppendFormat("Total de movimientos exitosos: {0}
", TotalExitos)
+ ' Respuesta.AppendFormat("Total de movimientos NO exitosos: {0}
", TotalFracasos)
+
+ ' 'LEE DESDE EL LAYOUT
+ ' 'Respuesta.AppendFormat("Total de altas rechazadas: {0}
", Trailer(0).ToString.ToEntero)
+ ' 'Respuesta.AppendFormat("Total de bajas rechazadas: {0}
", Trailer(1).ToString.ToEntero)
+ ' 'Respuesta.AppendFormat("Total de cambios rechazados: {0}
", Trailer(2).ToString.ToEntero)
+
+ ' End If
+
+ ' If Not ErrorArchivo Then
+
+ ' If CveCuentasDeposito <> "" Then
+ ' Dim ObjIE As New ClsBancos
+ ' Dim ErrorDB = False
+ ' ObjIE.IniciaTransacSQL()
+ ' Dim ArrayCuentasDeposito() = CveCuentasDeposito.Split(","c)
+
+ ' For index = 0 To ArrayCuentasDeposito.Length - 1
+ ' If Not ObjIE.UpdateCuentaDepositoPagoElectronico(ArrayCuentasDeposito(index).ToEntero) Then
+ ' ErrorDB = True
+ ' End If
+ ' Next
+
+ ' If Not ErrorDB Then
+ ' ObjIE.Commit()
+ ' Respuesta.Append("
NOTA: El archivo se analizo correctamente y se efectuaron todos los cambios en el sistema.")
+ ' 'Respuesta.AppendFormat("
Descargar reporte", NombreArchivo)
+ ' Respuesta.AppendFormat("Descargar Reporte", NombreArchivo)
+
+ ' Alert(Respuesta.ToString, TipoMensaje.MsgInformacion)
+ ' Else
+ ' ObjIE.RollBack()
+ ' Respuesta.Append("
NOTA: El archivo se analizo correctamente pero ocurrio un problema al efectuar los cambios en el sistema. Por favor vuelta a intentar.")
+ ' Alert(Respuesta.ToString, TipoMensaje.MsgError)
+ ' End If
+
+ ' ObjIE.Dispose()
+ ' Else
+ ' Respuesta.AppendFormat("
NOTA: El archivo se analizo correctamente pero ningun movimiento fue exitoso.")
+ ' 'Respuesta.AppendFormat("
Descargar reporte", NombreArchivo)
+ ' Respuesta.AppendFormat("Descargar Reporte", NombreArchivo)
+
+ ' Alert(Respuesta.ToString, TipoMensaje.MsgAdvertencia)
+ ' End If
+
+ ' Else
+ ' Alert("Ocurrio un problema al leer el archivo. Por favor revise que el archivo sea el correcto e intente de nuevo.", TipoMensaje.MsgError)
+ ' End If
+
+ ' 'ELIMINA TXT
+ ' My.Computer.FileSystem.DeleteFile(NombreArchivo)
+
+ ' RecargaDatos()
+
+ 'End Sub
#End Region
#Region "CARGA PAGO PROVEEDORES"
@@ -1580,315 +1587,315 @@ Partial Class Bancos_PagoElectronicoGrupos
DtPago.Columns.Add("FechaOperacion", GetType(String))
- End Sub
-
-
- Protected Sub BtnCargarPago_Click(sender As Object, e As System.EventArgs)
- Dim ErrorArchivo = False
- Dim TextoErrorArchivo = "Ocurrió un problema al leer el archivo, por favor revise que el archivo sea el correcto e intente de nuevo."
-
- If FUTxt.HasFile Then
- If Not GuardaTXT() Then
- Alert("Ocurrio un error al cargar el archivo", TipoMensaje.MsgError)
- Exit Sub
- End If
- Else
- Alert("No tiene ningun archivo", TipoMensaje.MsgAdvertencia)
- Exit Sub
- End If
-
-
- 'LEE TXT
- Dim Texto As String
- Dim sr As New System.IO.StreamReader(NombreArchivo)
- Texto = sr.ReadToEnd()
- sr.Close()
- Dim TextoArreglo() = Texto.Split(CChar(vbCrLf))
-
- 'INICIALIZA VARIABLES
- Dim ObjBancos As New ClsBancos
- Dim RespuestaHeader = "", RespuestaDetalle = "", RespuestaTrailer = "", Proveedor = "", CuentaAbono = "", Estatus = "", CveIEs = "", EstatusIEs = "", FechaMovto = "", Correos = ""
- Dim Row As DataRow = Nothing
- Dim Convenio = ""
- CreaDtPago()
-
- 'LEE LINEA POR LINEA
- For i = 0 To TextoArreglo.Length - 1
- 'Valida que el primer renglon sea el HEADER
- If i = 0 Then
- If TextoArreglo(i).Substring(0, 1) <> "H" Then
- ErrorArchivo = True
- Exit For
- Else
- ' Codigo de respuesta | Cuenta cargo
- RespuestaHeader = String.Format("{0}|{1}", TextoArreglo(i).Substring(52, 2), TextoArreglo(i).Substring(77, 35))
- Convenio = TextoArreglo(i).Substring(2, 9)
- End If
- Else
- If TextoArreglo(i).Length > 1 Then
-
- 'LEE DETALLE
- If TextoArreglo(i).Substring(1, 1) = "D" Then
- If i > 1 Then
- RespuestaDetalle += vbCrLf
- End If
-
- 'TRUENA PORQUE AHORA ES LA CVECUENTADEPOSITO
- 'Proveedor = GlobalDTCompProveedores(UsuarioActual.CveEmpresa).FiltraParametros(String.Format("CveProveedor = {0}", TextoArreglo(i).Substring(24, 30).ToEntero)).Rows(0)("RazonSocial").ToString
-
- Correos += If(Correos <> "", "|", "")
-
- If ObjBancos.GetProveedorCuentaDeposito(TextoArreglo(i).Substring(24, 30).ToDouble.ToEntero) Then
- If ObjBancos.DtResultados.Rows.Count > 0 Then
-
- Proveedor = ObjBancos.DtResultados.Rows(0)("RazonSocial").ToString
-
- 'Correos += If(TextoArreglo(i).Substring(477, 50).Trim = "", "-1", TextoArreglo(i).Substring(477, 50).Trim)
- Correos += String.Format("{0};{1}", ObjBancos.DtResultados.Rows(0)("NotificarA").ToString, ObjBancos.DtResultados.Rows(0)("ContactoMailCobranza").ToString)
-
-
- ''SELECCIONA CUENTA ABONO PARA CORREO
- Select Case TextoArreglo(i).Substring(57, 1).ToEntero
- Case 1
- CuentaAbono = "NO APLICA"
- Case 2
- CuentaAbono = If(ObjBancos.DtResultados.Rows(0)("Cuenta").ToString <> "", ObjBancos.DtResultados.Rows(0)("Cuenta").ToString, ObjBancos.DtResultados.Rows(0)("CLABE").ToString)
- Case 3
- CuentaAbono = ObjBancos.DtResultados.Rows(0)("CIE").ToString
- Case 4
- CuentaAbono = ObjBancos.DtResultados.Rows(0)("SWIFT").ToString
- Case 5, 6, 7
- CuentaAbono = ObjBancos.DtResultados.Rows(0)("CLABE").ToString
- End Select
-
- Else
- Proveedor = "PROVEEDOR NO ENCONTRADO"
- End If
- Else
- Proveedor = "PROVEEDOR NO ENCONTRADO"
- End If
-
- Estatus = If(TextoArreglo(i).Substring(1325, 2) = "00", "OPERACION EXITOSA: ", "OPERACION FALLIDA: ")
- ' Proveedor | Importe | Descripcion estatus
- RespuestaDetalle += String.Format("{0} | {1}.{2} | | {5} | {3}{4} | ", Proveedor, TextoArreglo(i).Substring(445, 13).ToDouble.ToEntero, TextoArreglo(i).Substring(458, 2).ToEntero, Estatus, TextoArreglo(i).Substring(1327, 30), TextoArreglo(i).Substring(420, 3))
-
- ''Guardo CveIE cuando la operacion salio exitosa para actualizar en la DB el IE
- 'If TextoArreglo(i).Substring(1325, 2) = "00" Then
- CveIEs += If(CveIEs <> "", ",", "")
- 'VIEJO IE EN CAMPO 9
- 'CveIEs += TextoArreglo(i).Substring(83, 10).Trim
- CveIEs += TextoArreglo(i).Substring(123, 32).Trim
-
- 'SI VIENE SIN RESPUESTA ES ERROR DE ARCHIVO
- If TextoArreglo(i).Substring(1325, 2).Trim = "" Then
- ErrorArchivo = True
- TextoErrorArchivo = "El archivo que se intento procesar no es de respuesta. Por favor verifique cargar el archivo correcto."
- Exit For
- End If
-
- EstatusIEs += If(EstatusIEs <> "", ",", "")
- EstatusIEs += If(TextoArreglo(i).Substring(1325, 2) = "00", "2", "3")
-
- FechaMovto += If(FechaMovto <> "", ",", "")
- FechaMovto += TextoArreglo(i).Substring(540, 10)
-
- 'If Proveedor = "PROVEEDOR NO ENCONTRADO" Or CuentaAbono = "" Then
- ' Continue For
- 'End If
-
-
- ''LLENA DTPAGOS PARA CORREO
- Row = DtPago.NewRow()
- Row("NumeroConvenio") = Convenio
- Row("ClaveProveedor") = TextoArreglo(i).Substring(24, 30)
- Row("Proveedor") = Proveedor
- Row("ReferenciaPago") = TextoArreglo(i).Substring(4, 20)
- Row("Cuenta") = CuentaAbono
-
- Select Case TextoArreglo(i).Substring(57, 1).ToEntero
- Case 1
- Row("TipoPago") = "1 .- ABONO EN VENTANILLA"
- Case 2
- Row("TipoPago") = "2 .- ABONO A CUENTAS BANCOMER"
- Case 3
- Row("TipoPago") = "3 .- ABONO A CONVENIO CIE"
- Case 4
- Row("TipoPago") = "4 .- ABONO A CUENTA INTERNACIONAL VIA SWIFT"
- Case 5
- Row("TipoPago") = "5 .- ABONO A CUENTA INTERBANCARIA DIA SIGUIENTE"
- Case 6
- Row("TipoPago") = "6 .- ABONO A CUENTA INTERBANCARIA MISMO DIA"
- Case 7
- Row("TipoPago") = "7 .- ABONO A CUENTA INTERNACIONAL VIA ACH"
- End Select
-
- Try
- Row("Cuenta") = If(Row("Cuenta").ToString = "", String.Format("******{0}", CuentaAbono.Substring(CuentaAbono.Length - 4, 4)), Row("Cuenta").ToString)
- Catch ex As Exception
- Row("Cuenta") = "******"
- End Try
-
- Row("Importe") = String.Format("{0}.{1}", TextoArreglo(i).Substring(445, 13), TextoArreglo(i).Substring(458, 2)).ToDecimal.ToString
- Row("FechaOperacion") = TextoArreglo(i).Substring(540, 10)
- Row("Observaciones") = TextoArreglo(i).Substring(605, 700).Trim
- DtPago.Rows.Add(Row)
-
- 'End If
-
- 'LEE TRAILER
- ElseIf TextoArreglo(i).Substring(1, 1) = "T" Then
-
- 'PARA BCOM, YA QUE TRUNCA EL STRING CUANDO SOLO ES MXP
- If TextoArreglo(i).Length < 1367 Then
- TextoArreglo(i) = TextoArreglo(i).PadRight(1367)
- End If
-
- RespuestaTrailer += "------------------------------------------------------------ RESUMEN ------------------------------------------------------------"
- RespuestaTrailer += String.Format("| Concepto | Pesos (MXP) | Dolares (USD) |
")
- RespuestaTrailer += String.Format("| Total registros rechazados: | {0} | {1} |
", TextoArreglo(i).Substring(77, 10).ToDouble.ToEntero.ToString, TextoArreglo(i).Substring(327, 10).ToDouble.ToEntero.ToString)
- RespuestaTrailer += String.Format("| Total Importe rechazado: $: | {0}.{1} | {2}.{3} |
", TextoArreglo(i).Substring(87, 13).ToDouble.ToEntero.ToString, TextoArreglo(i).Substring(100, 2).ToDouble.ToEntero.ToString, TextoArreglo(i).Substring(337, 13).ToDouble.ToEntero.ToString, TextoArreglo(i).Substring(350, 2).ToDouble.ToEntero.ToString)
- RespuestaTrailer += String.Format("| Total registros aceptados: | {0} | {1} |
", TextoArreglo(i).Substring(177, 10).ToDouble.ToEntero.ToString, TextoArreglo(i).Substring(302, 10).ToDouble.ToEntero.ToString)
- RespuestaTrailer += String.Format("| Total Importe aceptado $: | {0}.{1} | {2}.{3} |
", TextoArreglo(i).Substring(187, 13).ToDouble.ToEntero.ToString, TextoArreglo(i).Substring(200, 2).ToDouble.ToEntero.ToString, TextoArreglo(i).Substring(312, 13).ToDouble.ToEntero.ToString, TextoArreglo(i).Substring(325, 2).ToDouble.ToEntero.ToString)
-
- 'RespuestaTrailer += String.Format("Total registros rechazados: {1}{0} Total Importe rechazado: $ {2}.{3}{0} Total registros aceptados: {4}{0} Total Importe aceptado: $ {5}.{6}{0}", "
", TextoArreglo(i).Substring(77, 10).ToDouble.ToEntero.ToString, TextoArreglo(i).Substring(87, 13).ToDouble.ToEntero.ToString, TextoArreglo(i).Substring(100, 2).ToDouble.ToEntero.ToString, TextoArreglo(i).Substring(177, 10).ToDouble.ToEntero.ToString, TextoArreglo(i).Substring(187, 13).ToDouble.ToEntero.ToString, TextoArreglo(i).Substring(200, 2).ToEntero.ToString)
- Else
- ErrorArchivo = True
- Exit For
- End If
- End If
- End If
- Next
-
- ObjBancos.Dispose()
-
- Dim Respuesta As New StringBuilder
- If Not ErrorArchivo Then
-
- 'DIVIDE HEADER
- Dim Header() = RespuestaHeader.Split(CChar("|"))
- 'TRADUCE CODIGO RESPUESTA HEADER
- If Header(0) = "01" Then
- RespuestaHeader = "ACEPTADO TOTAL"
- ElseIf Header(0) = "02" Then
- RespuestaHeader = "ACEPTADO PARCIAL"
- ElseIf Header(0) = "03" Then
- RespuestaHeader = "RECHAZADO"
- End If
- RespuestaHeader += String.Format("
Cuenta Cargo: {0}", Header(1))
-
- 'DIVIDE DETALLE
- Dim Detalle() = RespuestaDetalle.Split(CChar(vbCrLf))
-
- 'ARMADO DE RESPUESTA
- Respuesta.AppendFormat("
Resumen de respuesta: {0}
", RespuestaHeader)
- Respuesta.AppendFormat("Numero de movimientos: {0}
", Detalle.Length.ToString)
- Respuesta.Append("----------------------------------------------------- Detalle de los movimientos --------------------------------------------------
")
- Respuesta.Append("| # | Proveedor | Importe($) | | Moneda | Estatus |
")
- For i = 0 To Detalle.Length - 1
- Respuesta.AppendFormat("| {0} | {1}
", i + 1, Detalle(i).Trim)
- Next
- Respuesta.Append("
----------------------------------------------------------------------------------------------------------------------
")
- Respuesta.AppendFormat(RespuestaTrailer)
-
-
- End If
-
- If Not ErrorArchivo Then
- If CveIEs <> "" Then
- Dim ObjIE As New ClsBancos
- Dim ErrorDB = False
- ObjIE.IniciaTransacSQL()
- Dim ArrayCveIEs() = CveIEs.Split(","c)
- Dim ArrayEstatusIEs() = EstatusIEs.Split(","c)
- Dim ArrayFechasMovto() = FechaMovto.Split(","c)
- Dim ArrayCorreos() = Correos.Split("|"c)
-
- Dim ArregloHilos As New Generic.List(Of System.Threading.Thread)
- Dim ArregloParametros As New Generic.List(Of List(Of String))
-
- For index = 0 To ArrayCveIEs.Length - 1
- If ObjIE.UpdatePagoElectronicoCarga(ArrayCveIEs(index).ToEntero, ArrayEstatusIEs(index).ToEntero) Then
-
- 'Cuando salio exitoso actualizamos el IE
- If ArrayEstatusIEs(index).ToEntero = 2 Then
- If ObjIE.UpdateIEPagoElectronico(ArrayCveIEs(index).ToEntero, ArrayFechasMovto(index).ToDate, UsuarioActual.CveEmpresa, UsuarioActual.CveUsuario) Then 'DESPROGRAMA LAS COMPRAS RELACIONADAS EN ESTE PA
-
- 'Cambiamos estatus notificación
- If ObjIE.UpdateBancos_IENotificaciones(2, "-1", "-1", ArrayCveIEs(index).ToEntero) Then
-
- 'Obtenemos los correos del movimiento
- If ArrayCorreos(index) <> "-1" Or ArrayCorreos(index) <> "" Then
-
- 'Dim CorreosMovto() = ArrayCorreos(index).Split(";"c)
- 'For index2 = 0 To CorreosMovto.Length - 1
- ' If CorreosMovto(index2).Length > 5 Then
- ' End If
- 'Next
-
- Dim Param As New List(Of String)
-
- Param.Add(ArrayCorreos(index)) 'Para
- Param.Add("Notificación de Pago") 'Asunto
- Param.Add(GeneraCorreo2(DtPago.Rows(index), ObjIE, ArrayCveIEs(index).ToEntero)) 'Body
-
- Dim Hilo As New Threading.Thread(AddressOf MandaCorreo)
- ArregloHilos.Add(Hilo)
- ArregloParametros.Add(Param)
- End If
- Else
- ErrorDB = True
- End If
-
- Else
- ErrorDB = True
- End If
- Else
-
- 'Cuando salio NO exitoso cancelamos el IE
- If Not ObjIE.CancelarBancos_IE(UsuarioActual.CveUsuario, ArrayCveIEs(index).ToEntero, False, -1, -1) Then
- ErrorDB = True
- End If
- End If
-
- Else
- ErrorDB = True
- End If
- Next
-
- If Not ErrorDB Then
- ObjIE.Commit()
- 'ObjIE.RollBack()
-
- 'EMPIEZA A ENVIAR CORREO POR HILOS
- For index = 0 To ArregloHilos.Count - 1
- ArregloHilos(index).Start(ArregloParametros(index))
- Next
-
- Respuesta.Append("
NOTA: El archivo se analizo correctamente y se efectuaron todos los cambios en el sistema.")
- Alert(Respuesta.ToString, TipoMensaje.MsgInformacion)
-
- CargaDatos()
- Else
- ObjIE.RollBack()
- Respuesta.Append("
NOTA: El archivo se analizo correctamente pero ocurrió un problema al efectuar los cambios en el sistema. Por favor vuelva a intentar.")
- Alert(Respuesta.ToString, TipoMensaje.MsgError)
- End If
-
- ObjIE.Dispose()
- Else
- Respuesta.AppendFormat("
NOTA: El archivo se analizo correctamente pero ningun movimiento fue exitoso.")
- Alert(Respuesta.ToString, TipoMensaje.MsgAdvertencia)
- End If
- Else
- Alert(TextoErrorArchivo, TipoMensaje.MsgError)
- End If
-
- 'ELIMINA TXT
- My.Computer.FileSystem.DeleteFile(NombreArchivo)
-
- RecargaDatos()
-
End Sub
+
+
+ 'Protected Sub BtnCargarPago_Click(sender As Object, e As System.EventArgs)
+ ' Dim ErrorArchivo = False
+ ' Dim TextoErrorArchivo = "Ocurrió un problema al leer el archivo, por favor revise que el archivo sea el correcto e intente de nuevo."
+
+ ' If FUTxt.HasFile Then
+ ' If Not GuardaTXT() Then
+ ' Alert("Ocurrio un error al cargar el archivo", TipoMensaje.MsgError)
+ ' Exit Sub
+ ' End If
+ ' Else
+ ' Alert("No tiene ningun archivo", TipoMensaje.MsgAdvertencia)
+ ' Exit Sub
+ ' End If
+
+
+ ' 'LEE TXT
+ ' Dim Texto As String
+ ' Dim sr As New System.IO.StreamReader(NombreArchivo)
+ ' Texto = sr.ReadToEnd()
+ ' sr.Close()
+ ' Dim TextoArreglo() = Texto.Split(CChar(vbCrLf))
+
+ ' 'INICIALIZA VARIABLES
+ ' Dim ObjBancos As New ClsBancos
+ ' Dim RespuestaHeader = "", RespuestaDetalle = "", RespuestaTrailer = "", Proveedor = "", CuentaAbono = "", Estatus = "", CveIEs = "", EstatusIEs = "", FechaMovto = "", Correos = ""
+ ' Dim Row As DataRow = Nothing
+ ' Dim Convenio = ""
+ ' CreaDtPago()
+
+ ' 'LEE LINEA POR LINEA
+ ' For i = 0 To TextoArreglo.Length - 1
+ ' 'Valida que el primer renglon sea el HEADER
+ ' If i = 0 Then
+ ' If TextoArreglo(i).Substring(0, 1) <> "H" Then
+ ' ErrorArchivo = True
+ ' Exit For
+ ' Else
+ ' ' Codigo de respuesta | Cuenta cargo
+ ' RespuestaHeader = String.Format("{0}|{1}", TextoArreglo(i).Substring(52, 2), TextoArreglo(i).Substring(77, 35))
+ ' Convenio = TextoArreglo(i).Substring(2, 9)
+ ' End If
+ ' Else
+ ' If TextoArreglo(i).Length > 1 Then
+
+ ' 'LEE DETALLE
+ ' If TextoArreglo(i).Substring(1, 1) = "D" Then
+ ' If i > 1 Then
+ ' RespuestaDetalle += vbCrLf
+ ' End If
+
+ ' 'TRUENA PORQUE AHORA ES LA CVECUENTADEPOSITO
+ ' 'Proveedor = GlobalDTCompProveedores(UsuarioActual.CveEmpresa).FiltraParametros(String.Format("CveProveedor = {0}", TextoArreglo(i).Substring(24, 30).ToEntero)).Rows(0)("RazonSocial").ToString
+
+ ' Correos += If(Correos <> "", "|", "")
+
+ ' If ObjBancos.GetProveedorCuentaDeposito(TextoArreglo(i).Substring(24, 30).ToDouble.ToEntero) Then
+ ' If ObjBancos.DtResultados.Rows.Count > 0 Then
+
+ ' Proveedor = ObjBancos.DtResultados.Rows(0)("RazonSocial").ToString
+
+ ' 'Correos += If(TextoArreglo(i).Substring(477, 50).Trim = "", "-1", TextoArreglo(i).Substring(477, 50).Trim)
+ ' Correos += String.Format("{0};{1}", ObjBancos.DtResultados.Rows(0)("NotificarA").ToString, ObjBancos.DtResultados.Rows(0)("ContactoMailCobranza").ToString)
+
+
+ ' ''SELECCIONA CUENTA ABONO PARA CORREO
+ ' Select Case TextoArreglo(i).Substring(57, 1).ToEntero
+ ' Case 1
+ ' CuentaAbono = "NO APLICA"
+ ' Case 2
+ ' CuentaAbono = If(ObjBancos.DtResultados.Rows(0)("Cuenta").ToString <> "", ObjBancos.DtResultados.Rows(0)("Cuenta").ToString, ObjBancos.DtResultados.Rows(0)("CLABE").ToString)
+ ' Case 3
+ ' CuentaAbono = ObjBancos.DtResultados.Rows(0)("CIE").ToString
+ ' Case 4
+ ' CuentaAbono = ObjBancos.DtResultados.Rows(0)("SWIFT").ToString
+ ' Case 5, 6, 7
+ ' CuentaAbono = ObjBancos.DtResultados.Rows(0)("CLABE").ToString
+ ' End Select
+
+ ' Else
+ ' Proveedor = "PROVEEDOR NO ENCONTRADO"
+ ' End If
+ ' Else
+ ' Proveedor = "PROVEEDOR NO ENCONTRADO"
+ ' End If
+
+ ' Estatus = If(TextoArreglo(i).Substring(1325, 2) = "00", "OPERACION EXITOSA: ", "OPERACION FALLIDA: ")
+ ' ' Proveedor | Importe | Descripcion estatus
+ ' RespuestaDetalle += String.Format("{0} | {1}.{2} | | {5} | {3}{4} | ", Proveedor, TextoArreglo(i).Substring(445, 13).ToDouble.ToEntero, TextoArreglo(i).Substring(458, 2).ToEntero, Estatus, TextoArreglo(i).Substring(1327, 30), TextoArreglo(i).Substring(420, 3))
+
+ ' ''Guardo CveIE cuando la operacion salio exitosa para actualizar en la DB el IE
+ ' 'If TextoArreglo(i).Substring(1325, 2) = "00" Then
+ ' CveIEs += If(CveIEs <> "", ",", "")
+ ' 'VIEJO IE EN CAMPO 9
+ ' 'CveIEs += TextoArreglo(i).Substring(83, 10).Trim
+ ' CveIEs += TextoArreglo(i).Substring(123, 32).Trim
+
+ ' 'SI VIENE SIN RESPUESTA ES ERROR DE ARCHIVO
+ ' If TextoArreglo(i).Substring(1325, 2).Trim = "" Then
+ ' ErrorArchivo = True
+ ' TextoErrorArchivo = "El archivo que se intento procesar no es de respuesta. Por favor verifique cargar el archivo correcto."
+ ' Exit For
+ ' End If
+
+ ' EstatusIEs += If(EstatusIEs <> "", ",", "")
+ ' EstatusIEs += If(TextoArreglo(i).Substring(1325, 2) = "00", "2", "3")
+
+ ' FechaMovto += If(FechaMovto <> "", ",", "")
+ ' FechaMovto += TextoArreglo(i).Substring(540, 10)
+
+ ' 'If Proveedor = "PROVEEDOR NO ENCONTRADO" Or CuentaAbono = "" Then
+ ' ' Continue For
+ ' 'End If
+
+
+ ' ''LLENA DTPAGOS PARA CORREO
+ ' Row = DtPago.NewRow()
+ ' Row("NumeroConvenio") = Convenio
+ ' Row("ClaveProveedor") = TextoArreglo(i).Substring(24, 30)
+ ' Row("Proveedor") = Proveedor
+ ' Row("ReferenciaPago") = TextoArreglo(i).Substring(4, 20)
+ ' Row("Cuenta") = CuentaAbono
+
+ ' Select Case TextoArreglo(i).Substring(57, 1).ToEntero
+ ' Case 1
+ ' Row("TipoPago") = "1 .- ABONO EN VENTANILLA"
+ ' Case 2
+ ' Row("TipoPago") = "2 .- ABONO A CUENTAS BANCOMER"
+ ' Case 3
+ ' Row("TipoPago") = "3 .- ABONO A CONVENIO CIE"
+ ' Case 4
+ ' Row("TipoPago") = "4 .- ABONO A CUENTA INTERNACIONAL VIA SWIFT"
+ ' Case 5
+ ' Row("TipoPago") = "5 .- ABONO A CUENTA INTERBANCARIA DIA SIGUIENTE"
+ ' Case 6
+ ' Row("TipoPago") = "6 .- ABONO A CUENTA INTERBANCARIA MISMO DIA"
+ ' Case 7
+ ' Row("TipoPago") = "7 .- ABONO A CUENTA INTERNACIONAL VIA ACH"
+ ' End Select
+
+ ' Try
+ ' Row("Cuenta") = If(Row("Cuenta").ToString = "", String.Format("******{0}", CuentaAbono.Substring(CuentaAbono.Length - 4, 4)), Row("Cuenta").ToString)
+ ' Catch ex As Exception
+ ' Row("Cuenta") = "******"
+ ' End Try
+
+ ' Row("Importe") = String.Format("{0}.{1}", TextoArreglo(i).Substring(445, 13), TextoArreglo(i).Substring(458, 2)).ToDecimal.ToString
+ ' Row("FechaOperacion") = TextoArreglo(i).Substring(540, 10)
+ ' Row("Observaciones") = TextoArreglo(i).Substring(605, 700).Trim
+ ' DtPago.Rows.Add(Row)
+
+ ' 'End If
+
+ ' 'LEE TRAILER
+ ' ElseIf TextoArreglo(i).Substring(1, 1) = "T" Then
+
+ ' 'PARA BCOM, YA QUE TRUNCA EL STRING CUANDO SOLO ES MXP
+ ' If TextoArreglo(i).Length < 1367 Then
+ ' TextoArreglo(i) = TextoArreglo(i).PadRight(1367)
+ ' End If
+
+ ' RespuestaTrailer += "------------------------------------------------------------ RESUMEN ------------------------------------------------------------"
+ ' RespuestaTrailer += String.Format("| Concepto | Pesos (MXP) | Dolares (USD) |
")
+ ' RespuestaTrailer += String.Format("| Total registros rechazados: | {0} | {1} |
", TextoArreglo(i).Substring(77, 10).ToDouble.ToEntero.ToString, TextoArreglo(i).Substring(327, 10).ToDouble.ToEntero.ToString)
+ ' RespuestaTrailer += String.Format("| Total Importe rechazado: $: | {0}.{1} | {2}.{3} |
", TextoArreglo(i).Substring(87, 13).ToDouble.ToEntero.ToString, TextoArreglo(i).Substring(100, 2).ToDouble.ToEntero.ToString, TextoArreglo(i).Substring(337, 13).ToDouble.ToEntero.ToString, TextoArreglo(i).Substring(350, 2).ToDouble.ToEntero.ToString)
+ ' RespuestaTrailer += String.Format("| Total registros aceptados: | {0} | {1} |
", TextoArreglo(i).Substring(177, 10).ToDouble.ToEntero.ToString, TextoArreglo(i).Substring(302, 10).ToDouble.ToEntero.ToString)
+ ' RespuestaTrailer += String.Format("| Total Importe aceptado $: | {0}.{1} | {2}.{3} |
", TextoArreglo(i).Substring(187, 13).ToDouble.ToEntero.ToString, TextoArreglo(i).Substring(200, 2).ToDouble.ToEntero.ToString, TextoArreglo(i).Substring(312, 13).ToDouble.ToEntero.ToString, TextoArreglo(i).Substring(325, 2).ToDouble.ToEntero.ToString)
+
+ ' 'RespuestaTrailer += String.Format("Total registros rechazados: {1}{0} Total Importe rechazado: $ {2}.{3}{0} Total registros aceptados: {4}{0} Total Importe aceptado: $ {5}.{6}{0}", "
", TextoArreglo(i).Substring(77, 10).ToDouble.ToEntero.ToString, TextoArreglo(i).Substring(87, 13).ToDouble.ToEntero.ToString, TextoArreglo(i).Substring(100, 2).ToDouble.ToEntero.ToString, TextoArreglo(i).Substring(177, 10).ToDouble.ToEntero.ToString, TextoArreglo(i).Substring(187, 13).ToDouble.ToEntero.ToString, TextoArreglo(i).Substring(200, 2).ToEntero.ToString)
+ ' Else
+ ' ErrorArchivo = True
+ ' Exit For
+ ' End If
+ ' End If
+ ' End If
+ ' Next
+
+ ' ObjBancos.Dispose()
+
+ ' Dim Respuesta As New StringBuilder
+ ' If Not ErrorArchivo Then
+
+ ' 'DIVIDE HEADER
+ ' Dim Header() = RespuestaHeader.Split(CChar("|"))
+ ' 'TRADUCE CODIGO RESPUESTA HEADER
+ ' If Header(0) = "01" Then
+ ' RespuestaHeader = "ACEPTADO TOTAL"
+ ' ElseIf Header(0) = "02" Then
+ ' RespuestaHeader = "ACEPTADO PARCIAL"
+ ' ElseIf Header(0) = "03" Then
+ ' RespuestaHeader = "RECHAZADO"
+ ' End If
+ ' RespuestaHeader += String.Format("
Cuenta Cargo: {0}", Header(1))
+
+ ' 'DIVIDE DETALLE
+ ' Dim Detalle() = RespuestaDetalle.Split(CChar(vbCrLf))
+
+ ' 'ARMADO DE RESPUESTA
+ ' Respuesta.AppendFormat("
Resumen de respuesta: {0}
", RespuestaHeader)
+ ' Respuesta.AppendFormat("Numero de movimientos: {0}
", Detalle.Length.ToString)
+ ' Respuesta.Append("----------------------------------------------------- Detalle de los movimientos --------------------------------------------------
")
+ ' Respuesta.Append("| # | Proveedor | Importe($) | | Moneda | Estatus |
")
+ ' For i = 0 To Detalle.Length - 1
+ ' Respuesta.AppendFormat("| {0} | {1}
", i + 1, Detalle(i).Trim)
+ ' Next
+ ' Respuesta.Append("
----------------------------------------------------------------------------------------------------------------------
")
+ ' Respuesta.AppendFormat(RespuestaTrailer)
+
+
+ ' End If
+
+ ' If Not ErrorArchivo Then
+ ' If CveIEs <> "" Then
+ ' Dim ObjIE As New ClsBancos
+ ' Dim ErrorDB = False
+ ' ObjIE.IniciaTransacSQL()
+ ' Dim ArrayCveIEs() = CveIEs.Split(","c)
+ ' Dim ArrayEstatusIEs() = EstatusIEs.Split(","c)
+ ' Dim ArrayFechasMovto() = FechaMovto.Split(","c)
+ ' Dim ArrayCorreos() = Correos.Split("|"c)
+
+ ' Dim ArregloHilos As New Generic.List(Of System.Threading.Thread)
+ ' Dim ArregloParametros As New Generic.List(Of List(Of String))
+
+ ' For index = 0 To ArrayCveIEs.Length - 1
+ ' If ObjIE.UpdatePagoElectronicoCarga(ArrayCveIEs(index).ToEntero, ArrayEstatusIEs(index).ToEntero) Then
+
+ ' 'Cuando salio exitoso actualizamos el IE
+ ' If ArrayEstatusIEs(index).ToEntero = 2 Then
+ ' If ObjIE.UpdateIEPagoElectronico(ArrayCveIEs(index).ToEntero, ArrayFechasMovto(index).ToDate, UsuarioActual.CveEmpresa, UsuarioActual.CveUsuario) Then 'DESPROGRAMA LAS COMPRAS RELACIONADAS EN ESTE PA
+
+ ' 'Cambiamos estatus notificación
+ ' If ObjIE.UpdateBancos_IENotificaciones(2, "-1", "-1", ArrayCveIEs(index).ToEntero) Then
+
+ ' 'Obtenemos los correos del movimiento
+ ' If ArrayCorreos(index) <> "-1" Or ArrayCorreos(index) <> "" Then
+
+ ' 'Dim CorreosMovto() = ArrayCorreos(index).Split(";"c)
+ ' 'For index2 = 0 To CorreosMovto.Length - 1
+ ' ' If CorreosMovto(index2).Length > 5 Then
+ ' ' End If
+ ' 'Next
+
+ ' Dim Param As New List(Of String)
+
+ ' Param.Add(ArrayCorreos(index)) 'Para
+ ' Param.Add("Notificación de Pago") 'Asunto
+ ' Param.Add(GeneraCorreo2(DtPago.Rows(index), ObjIE, ArrayCveIEs(index).ToEntero)) 'Body
+
+ ' Dim Hilo As New Threading.Thread(AddressOf MandaCorreo)
+ ' ArregloHilos.Add(Hilo)
+ ' ArregloParametros.Add(Param)
+ ' End If
+ ' Else
+ ' ErrorDB = True
+ ' End If
+
+ ' Else
+ ' ErrorDB = True
+ ' End If
+ ' Else
+
+ ' 'Cuando salio NO exitoso cancelamos el IE
+ ' If Not ObjIE.CancelarBancos_IE(UsuarioActual.CveUsuario, ArrayCveIEs(index).ToEntero, False, -1, -1) Then
+ ' ErrorDB = True
+ ' End If
+ ' End If
+
+ ' Else
+ ' ErrorDB = True
+ ' End If
+ ' Next
+
+ ' If Not ErrorDB Then
+ ' ObjIE.Commit()
+ ' 'ObjIE.RollBack()
+
+ ' 'EMPIEZA A ENVIAR CORREO POR HILOS
+ ' For index = 0 To ArregloHilos.Count - 1
+ ' ArregloHilos(index).Start(ArregloParametros(index))
+ ' Next
+
+ ' Respuesta.Append("
NOTA: El archivo se analizo correctamente y se efectuaron todos los cambios en el sistema.")
+ ' Alert(Respuesta.ToString, TipoMensaje.MsgInformacion)
+
+ ' CargaDatos()
+ ' Else
+ ' ObjIE.RollBack()
+ ' Respuesta.Append("
NOTA: El archivo se analizo correctamente pero ocurrió un problema al efectuar los cambios en el sistema. Por favor vuelva a intentar.")
+ ' Alert(Respuesta.ToString, TipoMensaje.MsgError)
+ ' End If
+
+ ' ObjIE.Dispose()
+ ' Else
+ ' Respuesta.AppendFormat("
NOTA: El archivo se analizo correctamente pero ningun movimiento fue exitoso.")
+ ' Alert(Respuesta.ToString, TipoMensaje.MsgAdvertencia)
+ ' End If
+ ' Else
+ ' Alert(TextoErrorArchivo, TipoMensaje.MsgError)
+ ' End If
+
+ ' 'ELIMINA TXT
+ ' My.Computer.FileSystem.DeleteFile(NombreArchivo)
+
+ ' RecargaDatos()
+
+ 'End Sub
#End Region
@@ -1921,10 +1928,15 @@ Partial Class Bancos_PagoElectronicoGrupos
DtCuentasPendientesTemp.CaseSensitive = False
- Dim DtCuentasPendientesBancomer As DataTable = DtCuentasPendientesTemp.FiltraParametros($" (EstatusPagoElectronicoGrupos IS NULL OR EstatusPagoElectronicoGrupos = False) AND (BancoNombre like '%BBVA%' OR BancoNombre like '%BANCOMER%' ) ", "", {"BancoNombre", "CLABEDestino", "Abreviatura", "RazonSocial", "CvePersonal", "CveBanco", "Cuenta", "BBVAAlias"})
- Dim DtCuentasPendientesInterbancarias As DataTable = DtCuentasPendientesTemp.FiltraParametros($" (EstatusPagoElectronicoGrupos IS NULL OR EstatusPagoElectronicoGrupos = False) AND (BancoNombre not like '%BBVA%' AND BancoNombre not like '%BANCOMER%' ) ", "", {"BancoNombre", "CLABEDestino", "Abreviatura", "RazonSocial", "CvePersonal", "CveBanco", "Cuenta", "BBVAAlias"})
+
+
+
+ Dim DtCuentasPendientesBancomer As DataTable = DtCuentasPendientesTemp.FiltraParametros($" (EstatusPagoElectronicoGrupos IS NULL OR EstatusPagoElectronicoGrupos = False) AND (BancoNombre like '%BBVA%' OR BancoNombre like '%BANCOMER%' ) ", "", {"CveCuentaDeposito", "BancoNombre", "CLABEDestino", "Abreviatura", "RazonSocial", "CvePersonal", "CveBanco", "Cuenta", "BBVAAlias"})
+ Dim DtCuentasPendientesInterbancarias As DataTable = DtCuentasPendientesTemp.FiltraParametros($" (EstatusPagoElectronicoGrupos IS NULL OR EstatusPagoElectronicoGrupos = False) AND (BancoNombre not like '%BBVA%' AND BancoNombre not like '%BANCOMER%' ) ", "", {"CveCuentaDeposito", "BancoNombre", "CLABEDestino", "Abreviatura", "RazonSocial", "CvePersonal", "CveBanco", "Cuenta", "BBVAAlias"})
'CLABEDestino
+ Dim ObjGrales As New ClsGenerales
+
If DtCuentasPendientesBancomer.Rows.Count > 0 Then
For Each dRow As DataRow In DtCuentasPendientesBancomer.Rows
@@ -1974,6 +1986,7 @@ Partial Class Bancos_PagoElectronicoGrupos
If Not ErrorLineaBancomer Then
RegistrosAltaBancomer.Append(SBTmpBancomer.ToString)
+ ObjGrales.UpdateCuentasDepositosEstatusPagoElectronicoGrupos(dRow("CveCuentaDeposito").ToString.ToEntero, True)
Else
SBErroresBancomer.Append("
")
SBErrores.AppendLine(SBErroresBancomer.ToString)
@@ -2057,6 +2070,7 @@ Partial Class Bancos_PagoElectronicoGrupos
If Not ErrorLineaInterbancaria Then
RegistrosAltaInterbancario.Append(SBTmpInterbancarias.ToString)
+ ObjGrales.UpdateCuentasDepositosEstatusPagoElectronicoGrupos(dRow("CveCuentaDeposito").ToString.ToEntero, True)
Else
SBErroresInterBancario.Append("
")
SBErrores.AppendLine(SBErroresInterBancario.ToString)
@@ -2073,6 +2087,7 @@ Partial Class Bancos_PagoElectronicoGrupos
End If
+ ObjGrales.Dispose()
Dim Mensaje As New StringBuilder
@@ -2100,238 +2115,238 @@ Partial Class Bancos_PagoElectronicoGrupos
Alert(Mensaje.ToString, TipoMensaje.MsgInformacion)
End If
-
+ CargaDatos()
End Sub
- Private Sub CargaFyE()
- Dim ObjBancos As New ClsBancos
-
- If ObjBancos.GetLayoutFyE(DdlCuenta.SelectedValue.ToEntero, UsuarioActual.CveEmpresa, PorGrupos:=True) Then
- DTFyE = ObjBancos.DtResultados.FiltraParametros("LEN(RFC) IN (13)")
- Else
- DTFyE = Nothing
- End If
- ObjBancos.Dispose()
-
- If DTFyE.Rows.Count > 0 Then
- GvProveedores.DataSource = DTFyE
- End If
- GvProveedores.DataBind()
-
- UpProveedores.Update()
- End Sub
-
- Private Sub GeneraAltaFyE()
- Dim DtTemp As DataTable = Nothing
-
- 'REINICIA PROPIEDAS
- HeaderTexto = ""
- DetalleTexto = ""
- TrailerTexto = ""
- TotalAcumulado = 0
- CreaDtAlta()
-
- DtTemp = DTFyE
-
- ''VALIDA CUENTAS DEPOSITOS
- Dim ErrorCuenta = False
- Dim FyEError As StringBuilder = New StringBuilder
- FyEError.AppendFormat("| Personal | Cuenta | Error |
")
-
- Dim TotalDetalles As Integer = 0
- Dim EsBancomer = False
- For Each gvr As DataRow In DtTemp.Rows
- If gvr("CvePersonal").ToString <> "" AndAlso gvr("EstatusPagoElectronico").ToString <> "True" AndAlso gvr("AltaCuenta").ToString = "1" Then
- DTPendienteActual = DtTemp.FiltraParametros(String.Format("CveCuentaDeposito = {0}", gvr("CveCuentaDeposito").ToString))
- ErrorCuenta = False
- EsBancomer = False
-
- If DTPendienteActual(0)("BancoNombre").ToString.ToUpper.Contains("BBVA") Or DTPendienteActual(0)("BancoNombre").ToString.ToUpper.Contains("BANCOMER") Or (DTPendienteActual(0)("CLABE").ToString.Length = 18 AndAlso DTPendienteActual(0)("CLABE").ToString.Substring(0, 3) = "012") Then
- EsBancomer = True
- End If
-
- 'CLABE SIEMPRE OBLIGATORIA SI NO ES BANCOMER
- If Not ErrorCuenta Then
- If DTPendienteActual(0)("CLABE").ToString.Trim.Length <> 18 And DTPendienteActual(0)("CLABE").ToString.Trim.Length = 0 And Not EsBancomer Then
- FyEError.AppendFormat("| {0} | {1} | CLABE ES OBLIGATORIA |
", DTPendienteActual(0)("RazonSocial").ToString, DTPendienteActual(0)("BancoNombre").ToString)
- ErrorCuenta = True
- End If
- End If
-
- 'SI CUENTA TIENE ALGO Y BANCO BANCOMER DEBE TENER UNA LOGITUD EXACTA DE 10
- If Not ErrorCuenta Then
- If DTPendienteActual(0)("Cuenta").ToString.Trim.Length <> 0 AndAlso DTPendienteActual(0)("Cuenta").ToString.Trim.Length <> 10 AndAlso EsBancomer Then
- FyEError.AppendFormat("| {0} | {1} | NUMERO DE CUENTA CON FORMATO INCORRECTO |
", DTPendienteActual(0)("RazonSocial").ToString, DTPendienteActual(0)("BancoNombre").ToString)
- ErrorCuenta = True
- End If
- End If
-
- 'SI CLABE TIENE ALGO DEBE TENER UNA LOGITUD EXACTA DE 18
- If Not ErrorCuenta Then
- If DTPendienteActual(0)("CLABE").ToString.Trim.Length <> 0 AndAlso DTPendienteActual(0)("CLABE").ToString.Trim.Length <> 18 Then
- FyEError.AppendFormat("| {0} | {1} | CLABE CON FORMATO INCORRECTO |
", DTPendienteActual(0)("RazonSocial").ToString, DTPendienteActual(0)("BancoNombre").ToString)
- ErrorCuenta = True
- End If
- End If
-
- 'SI CIE TIENE ALGO DEBE TENER REFERENCIA OBLIGATORIA
- If Not ErrorCuenta Then
- If DTPendienteActual(0)("CIE").ToString.Trim.Length <> 0 And DTPendienteActual(0)("Referencia").ToString.Trim.Length < 3 Then
- FyEError.AppendFormat("| {0} | {1} | CIE CON FORMATO INCORRECTO |
", DTPendienteActual(0)("RazonSocial").ToString, DTPendienteActual(0)("BancoNombre").ToString)
- ErrorCuenta = True
- End If
- End If
-
- 'CUANDO SEA "BBVA" O "BANCOMER" DEBE TENER "CIE" O "CUENTA"
- If Not ErrorCuenta Then
- If EsBancomer AndAlso Not (DTPendienteActual(0)("Cuenta").ToString.Trim.Length = 10 Or DTPendienteActual(0)("CIE").ToString.Trim.Length <> 0) Then
- FyEError.AppendFormat("| {0} | {1} | CUENTA BANCOMER SIN CUENTA O CIE |
", DTPendienteActual(0)("RazonSocial").ToString, DTPendienteActual(0)("BancoNombre").ToString)
- ErrorCuenta = True
- End If
- End If
-
- If Not ErrorCuenta Then
- If TotalDetalles > 0 Then
- DetalleTexto &= vbCrLf
- End If
- GeneraAltaDetalleFyE()
- TotalDetalles += 1
- End If
-
- End If
- Next
- FyEError.AppendFormat("
")
-
-
- If TotalDetalles > 0 Then
- FormarTextoAltaFyE(TotalDetalles)
- CreaArchivo(2)
-
- Dim Descargas As New StringBuilder()
- Descargas.AppendFormat("TXT", NombreArchivo)
- 'Descargas.AppendFormat("Reporte", NombreArchivo)
- Descargas.AppendFormat("Descargar Reporte", NombreArchivo)
-
-
- Dim TextoErrorProveedores = ""
- If FyEError.Length > 160 Then TextoErrorProveedores = String.Format("
Proveedores con Error:
------------------------------------------------------------------
{0}
", FyEError.ToString)
-
- Alert(String.Format("
El Layout fue creado satisfactoriamente.{1}
Descargas:", Descargas, TextoErrorProveedores), TipoMensaje.MsgInformacion)
-
- 'NombreArchivo = "LayoutAltaProveedores"
- 'DescargarArchivo()
- Else
- Alert("No hay proveedores que dar de alta", TipoMensaje.MsgInformacion)
- End If
-
-
- End Sub
-
- Private Sub GeneraAltaDetalleFyE()
- Dim Resultado = True
- Dim CuentaDeposito As String = ""
- Dim TipoCuentaDeposito As String = ""
- Dim TipoCuenta As String = ""
-
- ''''' LLENADO DE DETALLE
- 'Campos #1-4 del Detalle
- DetalleTexto &= String.Format("DA{0}N ", DTPendienteActual(0)("CveCuentaDeposito").ToString.ToUpper.PadLeft(30, PadCeros))
-
- 'Banco BBVA
- If DTPendienteActual(0)("BancoNombre").ToString.ToUpper.Contains("BBVA") Or DTPendienteActual(0)("BancoNombre").ToString.ToUpper.Contains("BANCOMER") Then
- 'Llenamos datos de BBVA
- 'Campo #5-7 del detalle
-
- 'Busca que cuenta sera la asignada para el proveedor
- If DTPendienteActual(0)("CIE").ToString <> "" Then
- CuentaDeposito = String.Format("02{0}", DTPendienteActual(0)("CIE").ToString.PadLeft(8, PadCeros))
- TipoCuenta = "50"
- TipoCuentaDeposito = "CIE"
- ElseIf DTPendienteActual(0)("Cuenta").ToString.Length = 10 Then
- CuentaDeposito = DTPendienteActual(0)("Cuenta").ToString
- TipoCuenta = "99"
- TipoCuentaDeposito = "Cuenta"
- ElseIf DTPendienteActual(0)("CLABE").ToString.Length = 18 Then
- CuentaDeposito = DTPendienteActual(0)("CLABE").ToString
- TipoCuenta = "40"
- TipoCuentaDeposito = "CLABE"
- End If
-
-
- DetalleTexto &= String.Format("{0}{1}{2}", DTPendienteActual(0)("Abreviatura").ToString, TipoCuenta, CuentaDeposito.PadLeft(35, PadCeros))
-
- 'Llenamos en blanco datos de otros bancos
- 'Campos 8-17 del detalle --- 64 de otros bancos y 45 para FILLER --- Fecha de Alta
- DetalleTexto &= String.Format("{0}{1}", Vacio.PadLeft(109), DateTime.Now().ToString("yyyy-MM-dd"))
-
-
- 'Otros Bancos NACIONAL!!
- Else
-
- CuentaDeposito = DTPendienteActual(0)("CLABE").ToString
- TipoCuentaDeposito = "CLABE"
-
- 'Llenamos en blanco datos de BBVA
- DetalleTexto &= Vacio.PadRight(40)
-
- 'Llenamos datos de otros bancos
- 'Campos 8- 17 del detalle --- 44 de otros bancos --- 20 de internacional --- 45 Filler -- Fecha de Alta
- DetalleTexto &= String.Format("{0}40{1}{2}{3}{4}{5}", DTPendienteActual(0)("Abreviatura").ToString, DTPendienteActual(0)("CLABE").ToString.PadLeft(35, PadCeros), DTPendienteActual(0)("CLABE").ToString.Substring(0, 3).PadLeft(4, PadCeros), Vacio.PadRight(20), Vacio.PadRight(45), DateTime.Now().ToString("yyyy-MM-dd"))
- End If
-
- 'Llenamos datos de Tipo de Persona - Fisica
- ' nombres Primer apellido Segundo apellido
- DetalleTexto &= String.Format("F{0}{1}{2}{3}", Vacio.PadRight(70), DTPendienteActual(0)("Nombres").ToString.PadRight(20).Substring(0, 20), DTPendienteActual(0)("APaterno").ToString.PadRight(20).Substring(0, 20), DTPendienteActual(0)("AMaterno").ToString.PadRight(20).Substring(0, 20))
-
- 'Campo 25-26 del detalle -- Fecha Nacimiento -- RFC
- DetalleTexto &= String.Format("{0}{1}", DTPendienteActual(0)("FechaNacimiento").ToString.ToDate.ToString("yyyy-MM-dd"), DTPendienteActual(0)("RFC").ToString.ToUpper.PadRight(14))
-
- 'Campos 27-32 --- Fillers --- datos de otros bancos (internacional)
- DetalleTexto &= Vacio.PadLeft(153)
-
- 'Campos 33-36 --- Datos de confirmacion
- DetalleTexto &= String.Format("{0}02{1}", Vacio.PadRight(40), CorreoNotificacionesEmpresa.ToUpper.PadRight(50))
-
- 'If DTPendienteActual(0)("ContactoMail").ToString.Length > 0 Then
- ' 'DetalleTexto &= String.Format("{0}02{1}", Vacio.PadRight(40), DTPendienteActual(0)("ContactoMail").ToString.ToUpper.PadRight(50))
- 'ElseIf DTPendienteActual(0)("ContactoMail").ToString.Length <= 0 Then
- ' DetalleTexto &= String.Format("{0}00{1}", Vacio.PadRight(40), Vacio.PadRight(50))
- 'End If
-
- 'Campos 37-39 -- FILLER
- DetalleTexto &= String.Format("00{0}", Vacio.PadRight(38))
-
-
- ''LLENA DT PARA REPORTE
- Dim Row = DtAlta.NewRow()
- Row("Proveedor") = DTPendienteActual(0)("RazonSocial").ToString
- Row("Banco") = DTPendienteActual(0)("BancoNombre").ToString
- Row("TipoCuenta") = TipoCuentaDeposito
- Row("Cuenta") = String.Format("{0}", CuentaDeposito)
- DtAlta.Rows.Add(Row)
- End Sub
-
- Protected Sub FormarTextoAltaFyE(Registros As Integer)
- '''''' LLENADO HEADER
- Dim convenio As String = DTPendienteActual(0)("ConvenioPagoElectronico").ToString
- 'Campos #1-4 del Header
- HeaderTexto = String.Format("H{0}{1}GRUPO01 ", convenio.PadLeft(9, PadCeros), DateTime.Now().ToString("yyyy-MM-dd"))
- 'Campo #5 del Header
- HeaderTexto &= String.Format("{0}{1}", UsuarioActual.CveUsuario, DateTime.Now().ToString("yyyyMMdd")).PadRight(20)
- 'Campos #6-8 del Header
- HeaderTexto &= String.Format("00").PadRight(586)
- Dim HeaderLength = HeaderTexto.Length
-
- ''''' LLENADO DE TRAILER
- TrailerTexto = String.Format("T{0}{1}{2}", Registros.ToString.PadLeft(10, PadCeros), Vacio.PadRight(50, PadCeros), Vacio.PadRight(575))
-
- ''''' ARMADO DEL TEXTO COMPLETO
- TextoCompleto = String.Format("{1}{0}{2}{0}{3}{0}", vbCrLf, HeaderTexto, DetalleTexto, TrailerTexto)
- 'TxtAltas.Text = TextoCompleto
+ Private Sub CargaFyE()
+ Dim ObjBancos As New ClsBancos
+
+ If ObjBancos.GetLayoutFyE(DdlCuenta.SelectedValue.ToEntero, UsuarioActual.CveEmpresa, PorGrupos:=True) Then
+ DTFyE = ObjBancos.DtResultados.FiltraParametros("LEN(RFC) IN (13)")
+ Else
+ DTFyE = Nothing
+ End If
+ ObjBancos.Dispose()
+
+ If DTFyE.Rows.Count > 0 Then
+ GvProveedores.DataSource = DTFyE
+ End If
+ GvProveedores.DataBind()
+
+ UpProveedores.Update()
End Sub
+ 'Private Sub GeneraAltaFyE()
+ ' Dim DtTemp As DataTable = Nothing
+
+ ' 'REINICIA PROPIEDAS
+ ' HeaderTexto = ""
+ ' DetalleTexto = ""
+ ' TrailerTexto = ""
+ ' TotalAcumulado = 0
+ ' CreaDtAlta()
+
+ ' DtTemp = DTFyE
+
+ ' ''VALIDA CUENTAS DEPOSITOS
+ ' Dim ErrorCuenta = False
+ ' Dim FyEError As StringBuilder = New StringBuilder
+ ' FyEError.AppendFormat("| Personal | Cuenta | Error |
")
+
+ ' Dim TotalDetalles As Integer = 0
+ ' Dim EsBancomer = False
+ ' For Each gvr As DataRow In DtTemp.Rows
+ ' If gvr("CvePersonal").ToString <> "" AndAlso gvr("EstatusPagoElectronico").ToString <> "True" AndAlso gvr("AltaCuenta").ToString = "1" Then
+ ' DTPendienteActual = DtTemp.FiltraParametros(String.Format("CveCuentaDeposito = {0}", gvr("CveCuentaDeposito").ToString))
+ ' ErrorCuenta = False
+ ' EsBancomer = False
+
+ ' If DTPendienteActual(0)("BancoNombre").ToString.ToUpper.Contains("BBVA") Or DTPendienteActual(0)("BancoNombre").ToString.ToUpper.Contains("BANCOMER") Or (DTPendienteActual(0)("CLABE").ToString.Length = 18 AndAlso DTPendienteActual(0)("CLABE").ToString.Substring(0, 3) = "012") Then
+ ' EsBancomer = True
+ ' End If
+
+ ' 'CLABE SIEMPRE OBLIGATORIA SI NO ES BANCOMER
+ ' If Not ErrorCuenta Then
+ ' If DTPendienteActual(0)("CLABE").ToString.Trim.Length <> 18 And DTPendienteActual(0)("CLABE").ToString.Trim.Length = 0 And Not EsBancomer Then
+ ' FyEError.AppendFormat("| {0} | {1} | CLABE ES OBLIGATORIA |
", DTPendienteActual(0)("RazonSocial").ToString, DTPendienteActual(0)("BancoNombre").ToString)
+ ' ErrorCuenta = True
+ ' End If
+ ' End If
+
+ ' 'SI CUENTA TIENE ALGO Y BANCO BANCOMER DEBE TENER UNA LOGITUD EXACTA DE 10
+ ' If Not ErrorCuenta Then
+ ' If DTPendienteActual(0)("Cuenta").ToString.Trim.Length <> 0 AndAlso DTPendienteActual(0)("Cuenta").ToString.Trim.Length <> 10 AndAlso EsBancomer Then
+ ' FyEError.AppendFormat("| {0} | {1} | NUMERO DE CUENTA CON FORMATO INCORRECTO |
", DTPendienteActual(0)("RazonSocial").ToString, DTPendienteActual(0)("BancoNombre").ToString)
+ ' ErrorCuenta = True
+ ' End If
+ ' End If
+
+ ' 'SI CLABE TIENE ALGO DEBE TENER UNA LOGITUD EXACTA DE 18
+ ' If Not ErrorCuenta Then
+ ' If DTPendienteActual(0)("CLABE").ToString.Trim.Length <> 0 AndAlso DTPendienteActual(0)("CLABE").ToString.Trim.Length <> 18 Then
+ ' FyEError.AppendFormat("| {0} | {1} | CLABE CON FORMATO INCORRECTO |
", DTPendienteActual(0)("RazonSocial").ToString, DTPendienteActual(0)("BancoNombre").ToString)
+ ' ErrorCuenta = True
+ ' End If
+ ' End If
+
+ ' 'SI CIE TIENE ALGO DEBE TENER REFERENCIA OBLIGATORIA
+ ' If Not ErrorCuenta Then
+ ' If DTPendienteActual(0)("CIE").ToString.Trim.Length <> 0 And DTPendienteActual(0)("Referencia").ToString.Trim.Length < 3 Then
+ ' FyEError.AppendFormat("| {0} | {1} | CIE CON FORMATO INCORRECTO |
", DTPendienteActual(0)("RazonSocial").ToString, DTPendienteActual(0)("BancoNombre").ToString)
+ ' ErrorCuenta = True
+ ' End If
+ ' End If
+
+ ' 'CUANDO SEA "BBVA" O "BANCOMER" DEBE TENER "CIE" O "CUENTA"
+ ' If Not ErrorCuenta Then
+ ' If EsBancomer AndAlso Not (DTPendienteActual(0)("Cuenta").ToString.Trim.Length = 10 Or DTPendienteActual(0)("CIE").ToString.Trim.Length <> 0) Then
+ ' FyEError.AppendFormat("| {0} | {1} | CUENTA BANCOMER SIN CUENTA O CIE |
", DTPendienteActual(0)("RazonSocial").ToString, DTPendienteActual(0)("BancoNombre").ToString)
+ ' ErrorCuenta = True
+ ' End If
+ ' End If
+
+ ' If Not ErrorCuenta Then
+ ' If TotalDetalles > 0 Then
+ ' DetalleTexto &= vbCrLf
+ ' End If
+ ' GeneraAltaDetalleFyE()
+ ' TotalDetalles += 1
+ ' End If
+
+ ' End If
+ ' Next
+ ' FyEError.AppendFormat("
")
+
+
+ ' If TotalDetalles > 0 Then
+ ' FormarTextoAltaFyE(TotalDetalles)
+ ' CreaArchivo(2)
+
+ ' Dim Descargas As New StringBuilder()
+ ' Descargas.AppendFormat("TXT", NombreArchivo)
+ ' 'Descargas.AppendFormat("Reporte", NombreArchivo)
+ ' Descargas.AppendFormat("Descargar Reporte", NombreArchivo)
+
+
+ ' Dim TextoErrorProveedores = ""
+ ' If FyEError.Length > 160 Then TextoErrorProveedores = String.Format("
Proveedores con Error:
------------------------------------------------------------------
{0}
", FyEError.ToString)
+
+ ' Alert(String.Format("
El Layout fue creado satisfactoriamente.{1}
Descargas:", Descargas, TextoErrorProveedores), TipoMensaje.MsgInformacion)
+
+ ' 'NombreArchivo = "LayoutAltaProveedores"
+ ' 'DescargarArchivo()
+ ' Else
+ ' Alert("No hay proveedores que dar de alta", TipoMensaje.MsgInformacion)
+ ' End If
+
+
+ 'End Sub
+
+ 'Private Sub GeneraAltaDetalleFyE()
+ ' Dim Resultado = True
+ ' Dim CuentaDeposito As String = ""
+ ' Dim TipoCuentaDeposito As String = ""
+ ' Dim TipoCuenta As String = ""
+
+ ' ''''' LLENADO DE DETALLE
+ ' 'Campos #1-4 del Detalle
+ ' DetalleTexto &= String.Format("DA{0}N ", DTPendienteActual(0)("CveCuentaDeposito").ToString.ToUpper.PadLeft(30, PadCeros))
+
+ ' 'Banco BBVA
+ ' If DTPendienteActual(0)("BancoNombre").ToString.ToUpper.Contains("BBVA") Or DTPendienteActual(0)("BancoNombre").ToString.ToUpper.Contains("BANCOMER") Then
+ ' 'Llenamos datos de BBVA
+ ' 'Campo #5-7 del detalle
+
+ ' 'Busca que cuenta sera la asignada para el proveedor
+ ' If DTPendienteActual(0)("CIE").ToString <> "" Then
+ ' CuentaDeposito = String.Format("02{0}", DTPendienteActual(0)("CIE").ToString.PadLeft(8, PadCeros))
+ ' TipoCuenta = "50"
+ ' TipoCuentaDeposito = "CIE"
+ ' ElseIf DTPendienteActual(0)("Cuenta").ToString.Length = 10 Then
+ ' CuentaDeposito = DTPendienteActual(0)("Cuenta").ToString
+ ' TipoCuenta = "99"
+ ' TipoCuentaDeposito = "Cuenta"
+ ' ElseIf DTPendienteActual(0)("CLABE").ToString.Length = 18 Then
+ ' CuentaDeposito = DTPendienteActual(0)("CLABE").ToString
+ ' TipoCuenta = "40"
+ ' TipoCuentaDeposito = "CLABE"
+ ' End If
+
+
+ ' DetalleTexto &= String.Format("{0}{1}{2}", DTPendienteActual(0)("Abreviatura").ToString, TipoCuenta, CuentaDeposito.PadLeft(35, PadCeros))
+
+ ' 'Llenamos en blanco datos de otros bancos
+ ' 'Campos 8-17 del detalle --- 64 de otros bancos y 45 para FILLER --- Fecha de Alta
+ ' DetalleTexto &= String.Format("{0}{1}", Vacio.PadLeft(109), DateTime.Now().ToString("yyyy-MM-dd"))
+
+
+ ' 'Otros Bancos NACIONAL!!
+ ' Else
+
+ ' CuentaDeposito = DTPendienteActual(0)("CLABE").ToString
+ ' TipoCuentaDeposito = "CLABE"
+
+ ' 'Llenamos en blanco datos de BBVA
+ ' DetalleTexto &= Vacio.PadRight(40)
+
+ ' 'Llenamos datos de otros bancos
+ ' 'Campos 8- 17 del detalle --- 44 de otros bancos --- 20 de internacional --- 45 Filler -- Fecha de Alta
+ ' DetalleTexto &= String.Format("{0}40{1}{2}{3}{4}{5}", DTPendienteActual(0)("Abreviatura").ToString, DTPendienteActual(0)("CLABE").ToString.PadLeft(35, PadCeros), DTPendienteActual(0)("CLABE").ToString.Substring(0, 3).PadLeft(4, PadCeros), Vacio.PadRight(20), Vacio.PadRight(45), DateTime.Now().ToString("yyyy-MM-dd"))
+ ' End If
+
+ ' 'Llenamos datos de Tipo de Persona - Fisica
+ ' ' nombres Primer apellido Segundo apellido
+ ' DetalleTexto &= String.Format("F{0}{1}{2}{3}", Vacio.PadRight(70), DTPendienteActual(0)("Nombres").ToString.PadRight(20).Substring(0, 20), DTPendienteActual(0)("APaterno").ToString.PadRight(20).Substring(0, 20), DTPendienteActual(0)("AMaterno").ToString.PadRight(20).Substring(0, 20))
+
+ ' 'Campo 25-26 del detalle -- Fecha Nacimiento -- RFC
+ ' DetalleTexto &= String.Format("{0}{1}", DTPendienteActual(0)("FechaNacimiento").ToString.ToDate.ToString("yyyy-MM-dd"), DTPendienteActual(0)("RFC").ToString.ToUpper.PadRight(14))
+
+ ' 'Campos 27-32 --- Fillers --- datos de otros bancos (internacional)
+ ' DetalleTexto &= Vacio.PadLeft(153)
+
+ ' 'Campos 33-36 --- Datos de confirmacion
+ ' DetalleTexto &= String.Format("{0}02{1}", Vacio.PadRight(40), CorreoNotificacionesEmpresa.ToUpper.PadRight(50))
+
+ ' 'If DTPendienteActual(0)("ContactoMail").ToString.Length > 0 Then
+ ' ' 'DetalleTexto &= String.Format("{0}02{1}", Vacio.PadRight(40), DTPendienteActual(0)("ContactoMail").ToString.ToUpper.PadRight(50))
+ ' 'ElseIf DTPendienteActual(0)("ContactoMail").ToString.Length <= 0 Then
+ ' ' DetalleTexto &= String.Format("{0}00{1}", Vacio.PadRight(40), Vacio.PadRight(50))
+ ' 'End If
+
+ ' 'Campos 37-39 -- FILLER
+ ' DetalleTexto &= String.Format("00{0}", Vacio.PadRight(38))
+
+
+ ' ''LLENA DT PARA REPORTE
+ ' Dim Row = DtAlta.NewRow()
+ ' Row("Proveedor") = DTPendienteActual(0)("RazonSocial").ToString
+ ' Row("Banco") = DTPendienteActual(0)("BancoNombre").ToString
+ ' Row("TipoCuenta") = TipoCuentaDeposito
+ ' Row("Cuenta") = String.Format("{0}", CuentaDeposito)
+ ' DtAlta.Rows.Add(Row)
+ 'End Sub
+
+ 'Protected Sub FormarTextoAltaFyE(Registros As Integer)
+ ' '''''' LLENADO HEADER
+ ' Dim convenio As String = DTPendienteActual(0)("ConvenioPagoElectronico").ToString
+ ' 'Campos #1-4 del Header
+ ' HeaderTexto = String.Format("H{0}{1}GRUPO01 ", convenio.PadLeft(9, PadCeros), DateTime.Now().ToString("yyyy-MM-dd"))
+ ' 'Campo #5 del Header
+ ' HeaderTexto &= String.Format("{0}{1}", UsuarioActual.CveUsuario, DateTime.Now().ToString("yyyyMMdd")).PadRight(20)
+ ' 'Campos #6-8 del Header
+ ' HeaderTexto &= String.Format("00").PadRight(586)
+ ' Dim HeaderLength = HeaderTexto.Length
+
+ ' ''''' LLENADO DE TRAILER
+ ' TrailerTexto = String.Format("T{0}{1}{2}", Registros.ToString.PadLeft(10, PadCeros), Vacio.PadRight(50, PadCeros), Vacio.PadRight(575))
+
+ ' ''''' ARMADO DEL TEXTO COMPLETO
+ ' TextoCompleto = String.Format("{1}{0}{2}{0}{3}{0}", vbCrLf, HeaderTexto, DetalleTexto, TrailerTexto)
+ ' 'TxtAltas.Text = TextoCompleto
+ 'End Sub
+
#End Region