Imports System.Configuration Imports System.Xml Imports System.IO Imports System.Data Imports System.Data.SqlClient Public Class FrmRepInterExt Private EtReporte As String = "" Private EntEmisora As String Private CveOrgRegul As String Private CveEntidad As String Private FolioConsecutivo As String Private DatosSolicitudInfo As String Private FechaRecepSolInfo As String Private EntidadExtrSolic As String Private CvePaisEntExt As String Private CveIDPais As String Private CargoFuncionEntExt As String Private CargoFuncionReceptor As String Private DatosClienteUsuario As String Private DatosTipoPersona As String Private IdTipoPersona As Integer 'Persona Fisica Private DatosClienteUsuarioPF As String 'Etiqueta Private NombrePF As String Private ApePaternoPF As String Private ApeMaternoPF As String Private FechaNacPF As String Private CurpPF As String Private RFCPF As String 'Persona Moral Private DatosClienteUsuarioPM As String 'Etiqueta Private RazonSocialPM As String Private FechaConstitucPF As String Private RFCPM As String 'Fideicomiso Private DatosClienteUsuarioFI As String 'Etiqueta Private RazonSocialFI As String Private NumRefFideFI As String Private RFCFI As String Private DatosOperaciones As String 'Etiqueta Private DatosOperOrigSolic As String Private CveTipOperxEntidad As String Private CveInstruMoneOper As String Private CtaContrOper As String Private MontoOper As String Private MontoOperFormat As Double Private CveMonDivisa As String '3 Digitos Private CveMoneda As Integer Private FechaHoraOper As Double 'aaaammddhhmmss Private CopiaInfoInterc As String Private NomArchivoAnexoB As String Private NumeroReferencia As String 'NombreEtiquetas ------------------------------------------------------------------ Private ET_EntEmisora As String Private ET_CveOrgRegul As String Private ET_CveEntidad As String Private ET_FolioConsecutivo As String Private ET_DatosSolicitudInfo As String Private ET_FechaRecepSolInfo As String Private ET_EntidadExtrSolic As String Private ET_CvePaisEntExt As String Private ET_CargoFuncionEntExt As String Private ET_CargoFuncionReceptor As String Private ET_DatosClienteUsuario As String Private ET_DatosTipoPersona As String 'Persona Fisica Private ET_DatosClienteUsuarioPF As String 'Etiqueta Private ET_NombrePF As String Private ET_ApePaternoPF As String Private ET_ApeMaternoPF As String Private ET_FechaNacPF As String Private ET_CurpPF As String Private ET_RFCPF As String 'Persona Moral Private ET_DatosClienteUsuarioPM As String 'Etiqueta Private ET_RazonSocialPM As String Private ET_FechaConstitucPF As String Private ET_RFCPM As String 'Fideicomiso Private ET_DatosClienteUsuarioFI As String 'Etiqueta Private ET_RazonSocialFI As String Private ET_NumRefFideFI As String Private ET_RFCFI As String Private ET_DatosOperaciones As String 'Etiqueta Private ET_DatosOperOrigSolic As String Private ET_CveTipOperxEntidad As String Private ET_CveInstruMoneOper As String Private ET_CtaContrOper As String Private ET_MontoOper As String Private ET_CveMonDivisa As String '3 Digitos Private ET_FechaHoraOper As String 'aaaammddhhmmss Private ET_CopiaInfoInterc As String Private ET_NomArchivoAnexoA As String Private NomArchivoAnexoA As String Private IdCte As Long Private Sub Button2_Click(sender As System.Object, e As System.EventArgs) Handles Button2.Click Me.Close() End Sub Private Sub BTGenerar_Click(sender As System.Object, e As System.EventArgs) Handles BTGenerar.Click Dim PosUltDiag As Integer Dim CadPath As String = "" 'Dim Anio As String Dim Consecutivo As Integer Dim SigFolio As String Dim DsPersonas As New DataSet Dim fileSave As New SaveFileDialog Dim File As String = Nothing Dim NomArchXML As String Dim Dia As String Dim Mes As String Dim Anio As String Dim Nic As String = "" If TxtFolio.Text.Trim = "" Then CmdGuardar_Click(Nothing, Nothing) End If Dia = dtpFechaRecepcion.Value.Day Mes = dtpFechaRecepcion.Value.Month Anio = dtpFechaRecepcion.Value.Year Dia = Dia.PadLeft(2, "0") Mes = Mes.PadLeft(2, "0") If Not IsNothing(DGVClientes.CurrentRow) Then Nic = IIf(IsDBNull(DGVClientes.Rows(DGVClientes.CurrentRow.Index).Cells("NIC").Value()), "", DGVClientes.Rows(DGVClientes.CurrentRow.Index).Cells("NIC").Value()) End If 'NomArchXML = dtpFechaRecepcion.Value.Day & dtpFechaRecepcion.Value.Month & dtpFechaRecepcion.Value.Year & "-" & Mid(TxtFolio.Text, 6, 15) & ".fii" NomArchXML = Dia & Mes & Anio & "-" & Nic.Trim & ".fii" Anio = dtpFechaRecepcion.Value.Year Consecutivo = SiguienteFolio(Anio) SigFolio = Anio & "-" & Consecutivo.ToString 'TxtFolio.Text = SigFolio If VALIDACIONES() = False Then Exit Sub End If fileSave.FileName = NomArchXML fileSave.Filter = "Archivos fii | *.fii" File = fileSave.ShowDialog() If File <> 1 Then MsgBox("Proceso cancelado por el usuario", MsgBoxStyle.Exclamation) Exit Sub End If PosUltDiag = fileSave.FileName.Trim.Length - InStr(StrReverse(fileSave.FileName.Trim), "\", CompareMethod.Text) CadPath = Mid(fileSave.FileName.Trim, 1, PosUltDiag + 1) TxtRutaRaiz.Text = CadPath Dim FechaRecepSolInfoDate As Date Dim FechaContitucionDate As Date 'Llenando las variables EtReporte = "xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance xmlns=http://www.uif.shcp.gob.mx/recepcion/fii" EntEmisora = CboEntidad.SelectedValue CveOrgRegul = CboOrgRegulador.SelectedValue CveEntidad = CboEntidad.SelectedValue FolioConsecutivo = TxtFolio.Text 'DatosSolicitudInfo = "6" FechaRecepSolInfoDate = dtpFechaRecepcion.Value FechaRecepSolInfo = FechaRecepSolInfoDate.ToString("yyyyMMdd") EntidadExtrSolic = TxtNomEntExt.Text CvePaisEntExt = CmbPais.SelectedValue CveIDPais = RegresaDato("CAT_PAIS", "IDPAIS", "ISO", CvePaisEntExt) CargoFuncionEntExt = TxtCargoFuncExtra.Text CargoFuncionReceptor = TxtCargoFuncVaDirigido.Text 'PERSONA FISICA If CboTipoPersona.Text = "PERSONA FISICA" Then 'Persona Fisica NombrePF = IIf(IsDBNull(DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("NOMBRE").Value()), "", DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("NOMBRE").Value()) ApePaternoPF = IIf(IsDBNull(DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("APELLIDOPATERNO").Value()), "", DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("APELLIDOPATERNO").Value()) ApeMaternoPF = IIf(IsDBNull(DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("APELLIDOMATERNO").Value()), "", DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("APELLIDOMATERNO").Value()) CurpPF = IIf(IsDBNull(DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("CURP").Value()), "", DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("CURP").Value()) RFCPF = IIf(IsDBNull(DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("RFC").Value()), "", DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("RFC").Value()) 'NombrePF,ApePaternoPF,ApeMaternoPF,FechaNacPF,CurpPF,RFCPF} End If 'PERSONA MORAL If CboTipoPersona.Text = "PERSONA MORAL" Then If DGVOperaciones.Rows.Count > 0 Then 'RazonSocialPM = IIf(IsDBNull(DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("NOMBREORAZONS1").Value()), "", DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("NOMBREORAZONS1").Value()) 'FechaConstitucPF = dtpFechaConstit.Value.ToString("ddMMyyyy") 'RFCPM = IIf(IsDBNull(DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("RFC").Value()), "", DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("RFC").Value()) RazonSocialPM = IIf(IsDBNull(DGVOperaciones.Rows(0).Cells("NOMBREORAZONS1").Value()), "", DGVOperaciones.Rows(0).Cells("NOMBREORAZONS1").Value()) RazonSocialPM = ReemplazaCaracNoValidos(RazonSocialPM, 1) FechaConstitucPF = dtpFechaConstit.Value.ToString("yyyyMMdd") RFCPM = IIf(IsDBNull(DGVOperaciones.Rows(0).Cells("RFC").Value()), "", DGVOperaciones.Rows(0).Cells("RFC").Value()) End If End If 'FIDEICOMISO If CboTipoPersona.Text = "FIDEICOMISO" Then 'RazonSocialFI,NumRefFideFI,RFCFI RazonSocialFI = IIf(IsDBNull(DGVOperaciones.Rows(0).Cells("NOMBREORAZONS1").Value()), "", DGVOperaciones.Rows(0).Cells("NOMBREORAZONS1").Value()) RazonSocialFI = ReemplazaCaracNoValidos(RazonSocialFI, 1) NumRefFideFI = IIf(IsDBNull(DGVOperaciones.Rows(0).Cells("NUMEROREFERENCIA").Value()), "", DGVOperaciones.Rows(0).Cells("NUMEROREFERENCIA").Value()) RFCFI = IIf(IsDBNull(DGVOperaciones.Rows(0).Cells("RFC").Value()), "", DGVOperaciones.Rows(0).Cells("RFC").Value()) End If '--------------------------nombre del Archivo-------------------------------- NomArchivoAnexoB = TxtFolio.Text.Trim & ".fii" ET_EntEmisora = "entidad_emisora" ET_CveOrgRegul = "clave_organismo_regulador" ET_CveEntidad = "clave_entidad" ET_FolioConsecutivo = "folio_consecutivo" ET_DatosSolicitudInfo = "datos_solicitud" ET_FechaRecepSolInfo = "fecha_recepcion_solicitud" ET_EntidadExtrSolic = "nombre_entidad_solicitante" ET_CvePaisEntExt = "pais_entidad_solicitante" ET_CargoFuncionEntExt = "cargo_funcionario_solicitante" ET_CargoFuncionReceptor = "cargo_funcionario_receptor" ET_DatosClienteUsuario = "persona_entidad" ET_DatosTipoPersona = "tipo_persona" 'Persona Fisica If CboTipoPersona.Text = "PERSONA FISICA" Then ET_DatosClienteUsuarioPF = "persona_fisica" 'Etiqueta ET_NombrePF = "nombre" ET_ApePaternoPF = "apellido_paterno" ET_ApeMaternoPF = "apellido_materno" ET_FechaNacPF = "fecha_nacimiento" ET_CurpPF = "curp" ET_RFCPF = "rfc" End If 'Persona Moral If CboTipoPersona.Text = "PERSONA MORAL" Then ET_DatosClienteUsuarioPM = "persona_moral" 'Etiqueta ET_RazonSocialPM = "denominacion_razon" ET_FechaConstitucPF = "fecha_constitucion" ET_RFCPM = "rfc" End If 'Fideicomiso If CboTipoPersona.Text = "FIDEICOMISO" Then ET_DatosClienteUsuarioFI = "fideicomiso" 'Etiqueta--------------------------- ET_RazonSocialFI = "denominacion_razon_fiduciario" ET_NumRefFideFI = "numero_referencia" ET_RFCFI = "rfc_fideicomiso" End If ET_DatosOperaciones = "operaciones" 'Etiqueta------------------------------- ET_DatosOperOrigSolic = "operacion" ET_CveTipOperxEntidad = "tipo_operacion" ET_CveInstruMoneOper = "instrumento_monetario" ET_CtaContrOper = "cuenta_contrato" ET_MontoOper = "monto_operacion" ET_CveMonDivisa = "moneda" '3 Digitos ET_FechaHoraOper = "fecha_hora" 'aaaammddhhmmss ET_CopiaInfoInterc = "copia_informacion" ET_NomArchivoAnexoA = "nombre_archivo" NomArchivoAnexoA = TxtArchivoAnexo.Text.Trim AddData(CadPath, NomArchXML) 'AddData(NomArchivoAnexoB) 'MsgBox("Reporte Generado con exito", MsgBoxStyle.Information, "Mensaje") End Sub Private Sub AddData(RutaArchivo As String, NombreArchivo As String) 'Private Sub AddData(NombreArchivo As String) Dim NomArchivoXml As String Dim i As Integer = 0 NomArchivoXml = RutaArchivo & NombreArchivo 'NomArchivoXml = NombreArchivo Dim myXmlTextWriter As New XmlTextWriter(NomArchivoXml, System.Text.Encoding.UTF8) myXmlTextWriter.Formatting = System.Xml.Formatting.Indented myXmlTextWriter.WriteStartDocument() 'Elemento Principal ------------------------------------------------------------------------- myXmlTextWriter.WriteStartElement("reporte") myXmlTextWriter.WriteAttributeString("xmlns", "xsi", Nothing, "http://www.w3.org/2001/XMLSchema-instance") myXmlTextWriter.WriteAttributeString("xmlns", "http://www.uif.shcp.gob.mx/recepcion/fii") myXmlTextWriter.WriteAttributeString("xsi", "schemaLocation", Nothing, "http://www.uif.shcp.gob.mx/recepcion/fii fii.xsd") 'Entidad Emisora myXmlTextWriter.WriteStartElement(ET_EntEmisora) 'myXmlTextWriter.WriteString(EntEmisora) 'Clave Reguladora myXmlTextWriter.WriteStartElement(ET_CveOrgRegul) myXmlTextWriter.WriteString(CveOrgRegul) myXmlTextWriter.WriteEndElement() 'Clave Entidad myXmlTextWriter.WriteStartElement(ET_CveEntidad) myXmlTextWriter.WriteString(CveEntidad) myXmlTextWriter.WriteEndElement() 'Folio Consecutivo myXmlTextWriter.WriteStartElement(ET_FolioConsecutivo) myXmlTextWriter.WriteString(FolioConsecutivo) myXmlTextWriter.WriteEndElement() myXmlTextWriter.WriteEndElement() 'CIERRA ENT EMISORA 'Datos Solicitud Informacion myXmlTextWriter.WriteStartElement(ET_DatosSolicitudInfo) myXmlTextWriter.WriteString(DatosSolicitudInfo) 'Fecha Recepcion Solicita Informacion myXmlTextWriter.WriteStartElement(ET_FechaRecepSolInfo) myXmlTextWriter.WriteString(FechaRecepSolInfo) myXmlTextWriter.WriteEndElement() 'Entidad Extranjera Solicita myXmlTextWriter.WriteStartElement(ET_EntidadExtrSolic) myXmlTextWriter.WriteString(EntidadExtrSolic) myXmlTextWriter.WriteEndElement() 'Clave Pais Entidad Extranjera myXmlTextWriter.WriteStartElement(ET_CvePaisEntExt) myXmlTextWriter.WriteString(CveIDPais) myXmlTextWriter.WriteEndElement() 'Cargo Funcion Entidad Extranjera myXmlTextWriter.WriteStartElement(ET_CargoFuncionEntExt) myXmlTextWriter.WriteString(CargoFuncionEntExt) myXmlTextWriter.WriteEndElement() 'Cargo Funcion Receptor myXmlTextWriter.WriteStartElement(ET_CargoFuncionReceptor) myXmlTextWriter.WriteString(CargoFuncionReceptor) myXmlTextWriter.WriteEndElement() myXmlTextWriter.WriteEndElement() 'CIERRA DATOS SOLICITUD 'Datos Cliente Usuario (Persona_Entidad) myXmlTextWriter.WriteStartElement(ET_DatosClienteUsuario) myXmlTextWriter.WriteString(DatosClienteUsuario) 'Datos Tipo Persona myXmlTextWriter.WriteStartElement(ET_DatosTipoPersona) 'myXmlTextWriter.WriteString(DatosTipoPersona) If CboTipoPersona.Text = "PERSONA FISICA" Then 'Datos Cliente o Usuario--------------------------------- myXmlTextWriter.WriteStartElement(ET_DatosClienteUsuarioPF) myXmlTextWriter.WriteString(DatosClienteUsuarioPF) 'Nombre myXmlTextWriter.WriteStartElement(ET_NombrePF) myXmlTextWriter.WriteString(NombrePF) myXmlTextWriter.WriteEndElement() 'Apellido Paterno myXmlTextWriter.WriteStartElement(ET_ApePaternoPF) myXmlTextWriter.WriteString(ApePaternoPF) myXmlTextWriter.WriteEndElement() 'Apellido Materno myXmlTextWriter.WriteStartElement(ET_ApeMaternoPF) myXmlTextWriter.WriteString(ApeMaternoPF) myXmlTextWriter.WriteEndElement() 'Fecha Nacimiento PF myXmlTextWriter.WriteStartElement(ET_FechaNacPF) myXmlTextWriter.WriteString(FechaNacPF) myXmlTextWriter.WriteEndElement() 'ET_CurpPF myXmlTextWriter.WriteStartElement(ET_CurpPF) myXmlTextWriter.WriteString(CurpPF) myXmlTextWriter.WriteEndElement() 'ET_RFCPF myXmlTextWriter.WriteStartElement(ET_RFCPF) myXmlTextWriter.WriteString(RFCPF) myXmlTextWriter.WriteEndElement() myXmlTextWriter.WriteEndElement() 'CIERRA PERSONA FISICA End If 'Datos Cliente Usuario Persona Moral----------------------------- If CboTipoPersona.Text = "PERSONA MORAL" Then 'PERSONA MORAL myXmlTextWriter.WriteStartElement(ET_DatosClienteUsuarioPM) 'ET_RazonSocialPM myXmlTextWriter.WriteStartElement(ET_RazonSocialPM) myXmlTextWriter.WriteString(RazonSocialPM.Trim) myXmlTextWriter.WriteEndElement() 'Entidad Emisora ET_FechaConstitucPF myXmlTextWriter.WriteStartElement(ET_FechaConstitucPF) myXmlTextWriter.WriteString(FechaConstitucPF) myXmlTextWriter.WriteEndElement() 'ET_RFCPM myXmlTextWriter.WriteStartElement(ET_RFCPM) myXmlTextWriter.WriteString(RFCPM.Trim) myXmlTextWriter.WriteEndElement() myXmlTextWriter.WriteEndElement() 'CIERRA PERSONA MORAL End If 'ET_DatosClienteUsuario FIDEICOMISO -------------------------------------- If CboTipoPersona.Text = "FIDEICOMISO" Then 'FIDEICOMISO myXmlTextWriter.WriteStartElement(ET_DatosClienteUsuarioFI) myXmlTextWriter.WriteString(DatosClienteUsuarioFI) 'ET_RazonSocialFI myXmlTextWriter.WriteStartElement(ET_RazonSocialFI) myXmlTextWriter.WriteString(RazonSocialFI.Trim) myXmlTextWriter.WriteEndElement() 'ET_NumRefFideFI myXmlTextWriter.WriteStartElement(ET_NumRefFideFI) myXmlTextWriter.WriteString(NumRefFideFI) myXmlTextWriter.WriteEndElement() 'ET_RFCFI ES OPCIONAL NO PONER 'myXmlTextWriter.WriteStartElement(ET_RFCFI) 'myXmlTextWriter.WriteString(RFCFI) 'myXmlTextWriter.WriteEndElement() myXmlTextWriter.WriteEndElement() 'CIERRA 'FIDEICOMISO End If myXmlTextWriter.WriteEndElement() 'CIERRA Tipo Persona myXmlTextWriter.WriteEndElement() 'Cierra Persona_Entidad 'ET_DatosOperaciones ---------------------------------------------- Dim FechaHoraOperDate As Date 'ET_DatosOperaciones ETIQUETA OPERACIONES myXmlTextWriter.WriteStartElement(ET_DatosOperaciones) myXmlTextWriter.WriteString(DatosOperaciones) For i = 0 To DGVDatosReporte.RowCount - 1 CveTipOperxEntidad = IIf(IsDBNull(DGVOperaciones.Rows(i).Cells("IDTIPOOPERACION").Value()), 0, DGVOperaciones.Rows(i).Cells("IDTIPOOPERACION").Value()) CveInstruMoneOper = IIf(IsDBNull(DGVOperaciones.Rows(i).Cells("IDINSTRUMENTOMONETARIO").Value()), 0, DGVOperaciones.Rows(i).Cells("IDINSTRUMENTOMONETARIO").Value()) CtaContrOper = IIf(IsDBNull(DGVOperaciones.Rows(i).Cells("CUENTA").Value()), 0, DGVOperaciones.Rows(i).Cells("CUENTA").Value()) MontoOperFormat = IIf(IsDBNull(DGVOperaciones.Rows(i).Cells("MONTO").Value()), 0, DGVOperaciones.Rows(i).Cells("MONTO").Value()) MontoOper = MontoOperFormat.ToString("0.00") CveMoneda = IIf(IsDBNull(DGVOperaciones.Rows(i).Cells("IDMONEDA").Value()), 0, DGVOperaciones.Rows(i).Cells("IDMONEDA").Value()) CveMonDivisa = RegresaDato("CAT_MONEDA", "IDMONEDA", "NOMBRE", CveMoneda) FechaHoraOperDate = IIf(IsDBNull(DGVOperaciones.Rows(i).Cells("FECHA").Value()), "01/01/1900", DGVOperaciones.Rows(i).Cells("FECHA").Value()) 'aaaammddhhmmss FechaHoraOper = FechaHoraOperDate.ToString("yyyyMMddhhmmss") 'ET_DatosOperOrigSolic ETIQUETA OPERACION myXmlTextWriter.WriteStartElement(ET_DatosOperOrigSolic) myXmlTextWriter.WriteString(DatosOperOrigSolic) 'ET_CveTipOperxEntidad myXmlTextWriter.WriteStartElement(ET_CveTipOperxEntidad) myXmlTextWriter.WriteString(CveTipOperxEntidad) myXmlTextWriter.WriteEndElement() 'ET_CveInstruMoneOper myXmlTextWriter.WriteStartElement(ET_CveInstruMoneOper) myXmlTextWriter.WriteString(CveInstruMoneOper) myXmlTextWriter.WriteEndElement() 'ET_CtaContrOper myXmlTextWriter.WriteStartElement(ET_CtaContrOper) myXmlTextWriter.WriteString(CtaContrOper) myXmlTextWriter.WriteEndElement() 'ET_MontoOper myXmlTextWriter.WriteStartElement(ET_MontoOper) myXmlTextWriter.WriteString(MontoOper) myXmlTextWriter.WriteEndElement() 'ET_CveMonDivisa myXmlTextWriter.WriteStartElement(ET_CveMonDivisa) myXmlTextWriter.WriteString(CveMonDivisa) myXmlTextWriter.WriteEndElement() 'ET_FechaHoraOper myXmlTextWriter.WriteStartElement(ET_FechaHoraOper) myXmlTextWriter.WriteString(FechaHoraOper) myXmlTextWriter.WriteEndElement() myXmlTextWriter.WriteEndElement() 'CIERRA OPERACION Next i myXmlTextWriter.WriteEndElement() 'CIERRA OPERACIONES 'ET_CopiaInfoInterc myXmlTextWriter.WriteStartElement(ET_CopiaInfoInterc) myXmlTextWriter.WriteString(CopiaInfoInterc) 'ET_NomArchivoAnexoA myXmlTextWriter.WriteStartElement(ET_NomArchivoAnexoA) myXmlTextWriter.WriteString(NomArchivoAnexoA) myXmlTextWriter.WriteEndElement() 'CIERRA NOMBRE ARCHIVO myXmlTextWriter.WriteEndElement() 'CIERRA COPIA 'Cierra elemento Principal ------------------------------------------------------------------------- myXmlTextWriter.WriteEndElement() 'CIERRA REPORTE myXmlTextWriter.Flush() myXmlTextWriter.Close() MsgBox("El Archivo: " & NombreArchivo & " se ha creado correctamente ", MsgBoxStyle.Information) End Sub Private Function SaveXML(xmlDoc As System.Xml.XmlDocument, ByVal strIdentifier As String) 'As System.Xml.XmlDocument xmlDoc.Save(strIdentifier) End Function Private Sub FrmRepInterExt_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load Dim clcmp As New clsComplejo Dim clcmpEnt As New clsComplejo Dim clcmpPais As New clsComplejo clcmp.sbLlenaCombo("SELECT CLAVE, CLAVE + ' ' + NOMBRE NOMBRE FROM IEF_CATORGANISMOS", CboOrgRegulador) clcmpEnt.sbLlenaCombo("SELECT CLAVE, CLAVE + ' ' + NOMBRE NOMBRE FROM IEF_CATENTFIN", CboEntidad) clcmpPais.sbLlenaCombo("SELECT PAIS as NOMBRE,IDPAIS CLAVE FROM CAT_PAIS WHERE ACTIVO = 1 AND LEN(ISO) = 2", CmbPais) 'CboTipoPersona.Items.Insert(0, New ListViewItem(0,"PERSONA MORAL") LblReporte.Visible = False TxtAccion.Text = "ALTA" 'clcmp.sbLlenaCombo("SELECT PAIS as NOMBRE,IDPAIS CLAVE FROM CAT_PAIS WHERE ACTIVO = 1", CmbPais) End Sub Private Sub CboTipoPersona_SelectedIndexChanged(sender As System.Object, e As System.EventArgs) Handles CboTipoPersona.SelectedIndexChanged Try If CboTipoPersona.Text = "PERSONA MORAL" Then LblFeConst.Visible = True dtpFechaConstit.Visible = True Else LblFeConst.Visible = False dtpFechaConstit.Visible = False End If Llenagrid() 'DGVClientes.DataSource = Nothing DGVOperaciones.DataSource = Nothing DGVDatosReporte.Rows.Clear() Catch Err As Exception MsgBox(Err.Message, MsgBoxStyle.Critical) End Try End Sub Private Function SiguienteFolio(Anio As Integer) As String Dim DsFolio As New DataSet Dim Sql As String = "" Dim ClsCom As New clsComplejo Dim SigFolio As Integer Sql = "SELECT ISNULL(MAX(CONSECUTIVO),0) + 1 FROM IEF_REPORTE_ENT_EXT " & _ "WHERE ANIO = " & Anio & "" DsFolio = ClsCom.fdtDataSetTabla(Sql) SigFolio = DsFolio.Tables(0).Rows(0).Item(0) Return SigFolio End Function Private Sub CmdGuardar_Click(sender As System.Object, e As System.EventArgs) Handles CmdGuardar.Click Dim Sql As String = "" Dim Consecutivo As Integer Dim Anio As String = "" Dim SigFolio As String Dim cLScPL As New clsComplejo Dim Status As String Dim i As Integer = 0 Try If VALIDACIONES() = False Then Exit Sub End If If TxtAccion.Text = "ALTA" Then IdCte = IIf(TxtIdCliente.Text.Trim = "", 0, CInt(TxtIdCliente.Text)) Anio = dtpFechaRecepcion.Value.Year Consecutivo = SiguienteFolio(Anio) SigFolio = Anio & "-" & Consecutivo.ToString TxtFolio.Text = SigFolio Status = "GUARDADO" CvePaisEntExt = CmbPais.SelectedValue CveIDPais = RegresaDato("CAT_PAIS", "IDPAIS", "ISO", CvePaisEntExt) If CboTipoPersona.Text = "PERSONA FISICA" Then IdTipoPersona = 1 ElseIf CboTipoPersona.Text = "PERSONA MORAL" Then IdTipoPersona = 2 ElseIf CboTipoPersona.Text = "FIDEICOMISO" Then IdTipoPersona = 3 End If 'Fideicomiso 'RazonSocialFI,NumRefFideFI,RFCFI 'Sql = "INSERT INTO IEF_REPORTE_ENT_EXT (ANIO,CONSECUTIVO, ID_ORG_REGULADOR," & _ '"ID_ENTIDAD_EMISORA,FOLIO,FECHA_RECEP_SOLIC,ENTIDAD_EXTRAN_SOLIC," & _ '"ID_PAIS_ENT_EXTRAN,CARGO_FUNC_ENT_EXT,CARGO_FUNC_RECEP,NOMBRE_ARCHIVO,STATUS,IDTIPOPERSONA,IDCLIENTE) VALUES(" & _ '"" & Anio & "," & Consecutivo & ",'" & CboOrgRegulador.SelectedValue & "'," & _ '"'" & CboEntidad.SelectedValue & "','" & TxtFolio.Text & "','" & dtpFechaRecepcion.Value.ToString("dd/MM/yyyy") & "', '" & TxtNomEntExt.Text.Replace("'", "''") & "'," & _ '"'" & CveIDPais & "','" & TxtCargoFuncExtra.Text.Replace("'", "''") & "','" & TxtCargoFuncVaDirigido.Text.Replace("'", "''") & "','" & TxtArchivoAnexo.Text & "','" & Status & "'," & IdTipoPersona & "," & IdCte & ")" Sql = "INSERT INTO IEF_REPORTE_ENT_EXT (ANIO,CONSECUTIVO, ID_ORG_REGULADOR," & "ID_ENTIDAD_EMISORA,FOLIO,FECHA_RECEP_SOLIC,ENTIDAD_EXTRAN_SOLIC," & "ID_PAIS_ENT_EXTRAN,CARGO_FUNC_ENT_EXT,CARGO_FUNC_RECEP,NOMBRE_ARCHIVO,STATUS,IDTIPOPERSONA,IDCLIENTE) VALUES(" & "" & Anio & "," & Consecutivo & ",'" & CboOrgRegulador.SelectedValue & "'," & "'" & CboEntidad.SelectedValue & "','" & TxtFolio.Text & "',CONVERT(DATETIME,'" & dtpFechaRecepcion.Value.ToString("dd/MM/yyyy") & "', 103)" & " , '" & TxtNomEntExt.Text.Replace("'", "''") & "'," & "'" & CveIDPais & "','" & TxtCargoFuncExtra.Text.Replace("'", "''") & "','" & TxtCargoFuncVaDirigido.Text.Replace("'", "''") & "','" & TxtArchivoAnexo.Text & "','" & Status & "'," & IdTipoPersona & "," & IdCte & ")" Try cLScPL.sbModifica2(Sql) Catch Err As Exception Exit Sub End Try 'PERSONA FISICA If CboTipoPersona.Text = "PERSONA FISICA" Then 'Persona Fisica NombrePF = IIf(IsDBNull(DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("NOMBRE").Value()), "", DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("NOMBRE").Value()) ApePaternoPF = IIf(IsDBNull(DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("APELLIDOPATERNO").Value()), "", DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("APELLIDOPATERNO").Value()) ApeMaternoPF = IIf(IsDBNull(DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("APELLIDOMATERNO").Value()), "", DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("APELLIDOMATERNO").Value()) CurpPF = IIf(IsDBNull(DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("CURP").Value()), "", DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("CURP").Value()) RFCPF = IIf(IsDBNull(DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("RFC").Value()), "", DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("RFC").Value()) 'NombrePF,ApePaternoPF,ApeMaternoPF,FechaNacPF,CurpPF,RFCPF} Sql = "INSERT INTO IEF_DATOS_PERSONA (ANIO,CONSECUTIVO," & _ "NOMBRE,APE_PATERNO,APE_MATERNO,FECHA_NAC," & _ "CURP,RFC_PF,RAZON_SOC_PM,FECHA_CONSTITUCION," & _ "RFC_PM,RAZON_SOC_FI,NUM_REFERENCIA_FI,RFC_FI) VALUES (" & _ "" & Anio & "," & Consecutivo & "," & _ "'" & NombrePF & "','" & ApePaternoPF & "','" & ApeMaternoPF & "', '" & FechaNacPF & "'" & _ "'" & CurpPF & "','" & RFCPF & "')" cLScPL.sbModifica2(Sql) End If 'PERSONA MORAL If CboTipoPersona.Text = "PERSONA MORAL" Then RazonSocialPM = IIf(IsDBNull(DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("NOMBREORAZONS1").Value()), "", DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("NOMBREORAZONS1").Value()) FechaConstitucPF = dtpFechaConstit.Value.ToString("yyyyMMdd") RFCPM = IIf(IsDBNull(DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("RFC").Value()), "", DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("RFC").Value()) Sql = "INSERT INTO IEF_DATOS_PERSONA (ANIO,CONSECUTIVO," & "RAZON_SOC_PM,FECHA_CONSTITUCION,RFC_PM) VALUES (" & "" & Anio & "," & Consecutivo & "," & "'" & RazonSocialPM.Trim & "', CONVERT(DATETIME,'" & FechaConstitucPF & "', 103),'" & RFCPM & "')" cLScPL.sbModifica2(Sql) End If 'FIDEICOMISO If CboTipoPersona.Text = "FIDEICOMISO" Then 'RazonSocialFI,NumRefFideFI,RFCFI RazonSocialFI = IIf(IsDBNull(DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("NOMBREORAZONS1").Value()), "", DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("NOMBREORAZONS1").Value()) NumRefFideFI = IIf(IsDBNull(DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("NUMEROREFERENCIA").Value()), "", DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("NUMEROREFERENCIA").Value()) RFCFI = IIf(IsDBNull(DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("RFC").Value()), "", DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("RFC").Value()) Sql = "INSERT INTO IEF_DATOS_PERSONA (ANIO,CONSECUTIVO," & _ "RAZON_SOC_FI, NUM_REFERENCIA_FI,RFC_FI) VALUES (" & _ "" & Anio & "," & Consecutivo & "," & _ "'" & RazonSocialFI & "','" & NumRefFideFI & "','" & RFCFI & "')" cLScPL.sbModifica2(Sql) End If 'Guardar Datos de las Operaciones Dim FechaHoraOperDate As Date For i = 0 To DGVDatosReporte.RowCount - 1 'DatosOperOrigSolic = "30" CveTipOperxEntidad = IIf(IsDBNull(DGVOperaciones.Rows(i).Cells("IDTIPOOPERACION").Value()), 0, DGVOperaciones.Rows(i).Cells("IDTIPOOPERACION").Value()) CveInstruMoneOper = IIf(IsDBNull(DGVOperaciones.Rows(i).Cells("IDINSTRUMENTOMONETARIO").Value()), 0, DGVOperaciones.Rows(i).Cells("IDINSTRUMENTOMONETARIO").Value()) CtaContrOper = IIf(IsDBNull(DGVOperaciones.Rows(i).Cells("CUENTA").Value()), 0, DGVOperaciones.Rows(i).Cells("CUENTA").Value()) MontoOper = IIf(IsDBNull(DGVOperaciones.Rows(i).Cells("MONTO").Value()), 0, DGVOperaciones.Rows(i).Cells("MONTO").Value()) CveMoneda = IIf(IsDBNull(DGVOperaciones.Rows(i).Cells("IDMONEDA").Value()), 0, DGVOperaciones.Rows(i).Cells("IDMONEDA").Value()) CveMonDivisa = RegresaDato("CAT_MONEDA", "IDMONEDA", "TIF", CveMoneda) FechaHoraOperDate = IIf(IsDBNull(DGVOperaciones.Rows(i).Cells("FECHA").Value()), "01/01/1900", DGVOperaciones.Rows(i).Cells("FECHA").Value()) NumeroReferencia = IIf(IsDBNull(DGVOperaciones.Rows(i).Cells("NUMEROREFERENCIA").Value()), "", DGVOperaciones.Rows(i).Cells("NUMEROREFERENCIA").Value()) 'aaaammddhhmmss FechaHoraOper = FechaHoraOperDate.ToString("yyyyMMddhhmmss") 'FechaHoraOper = FechaHoraOperDate.ToString("dd/MM/YYYY") 'CopiaInfoInterc = "37" 'ETIQUETA Sql = "" Sql = "INSERT INTO IEF_REPORTE_OPERACIONES (ANIO,CONSECUTIVO,ID_TIPO_OPERACION,ID_INSTR_MONETARIO," & _ "NUM_CTA_CONTRATO,MONTO_OPERACIONES,ID_MONEDA_DIVISA,FECHA_HORA_OPERACIONES,NUMEROREFERENCIA) VALUES (" & _ "" & Anio & "," & Consecutivo & "," & CveTipOperxEntidad & "," & CveInstruMoneOper & "," & _ "'" & CtaContrOper & "','" & MontoOper & "','" & CveMonDivisa & "','" & FechaHoraOper & "','" & NumeroReferencia & "')" cLScPL.sbModifica2(Sql) Next i ElseIf TxtAccion.Text = "CAMBIO" Then Actualiza() End If If TxtAccion.Text = "ALTA" Then MsgBox("La información ha sido guardada exitosamente", MsgBoxStyle.Information) Catch Err As Exception MsgBox(Err.Message) End Try End Sub Private Sub Actualiza() Dim Sql As String = "" Dim Consecutivo As Integer Dim Anio As String = "" Dim SigFolio As String Dim cLScPL As New clsComplejo Dim Status As String Dim i As Integer = 0 Try IdCte = IIf(TxtIdCliente.Text.Trim = "", 0, CInt(TxtIdCliente.Text)) Anio = Mid(TxtFolio.Text, 1, 4) 'dtpFechaRecepcion.Value.Year 'Consecutivo = SiguienteFolio(Anio) Consecutivo = Mid(TxtFolio.Text, 6, 10) 'SigFolio = Anio & "-" & Consecutivo.ToString 'TxtFolio.Text = SigFolio Status = "GUARDADO" CvePaisEntExt = CmbPais.SelectedValue CveIDPais = RegresaDato("CAT_PAIS", "IDPAIS", "ISO", CvePaisEntExt) If CboTipoPersona.Text = "PERSONA FISICA" Then IdTipoPersona = 1 ElseIf CboTipoPersona.Text = "PERSONA MORAL" Then IdTipoPersona = 2 ElseIf CboTipoPersona.Text = "FIDEICOMISO" Then IdTipoPersona = 3 End If 'Fideicomiso 'RazonSocialFI,NumRefFideFI,RFCFI Sql = "UPDATE IEF_REPORTE_ENT_EXT SET " & _ "ID_ORG_REGULADOR = '" & CboOrgRegulador.SelectedValue & "',ID_ENTIDAD_EMISORA='" & CboEntidad.SelectedValue & "'," & _ "FECHA_RECEP_SOLIC='" & dtpFechaRecepcion.Value.ToString("dd/MM/yyyy") & "'," & _ "ENTIDAD_EXTRAN_SOLIC='" & TxtNomEntExt.Text & "',ID_PAIS_ENT_EXTRAN='" & CveIDPais & "'," & _ "CARGO_FUNC_ENT_EXT='" & TxtCargoFuncExtra.Text & "',CARGO_FUNC_RECEP='" & TxtCargoFuncVaDirigido.Text & "'," & _ "NOMBRE_ARCHIVO='" & TxtArchivoAnexo.Text & "',STATUS='" & Status & "'," & _ "IDTIPOPERSONA=" & IdTipoPersona & ",IDCLIENTE=" & IdCte & " " & _ "WHERE ANIO=" & Anio & " AND CONSECUTIVO=" & Consecutivo & "" cLScPL.sbModifica2(Sql) 'PERSONA FISICA If CboTipoPersona.Text = "PERSONA FISICA" Then 'Persona Fisica NombrePF = IIf(IsDBNull(DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("NOMBRE").Value()), "", DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("NOMBRE").Value()) ApePaternoPF = IIf(IsDBNull(DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("APELLIDOPATERNO").Value()), "", DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("APELLIDOPATERNO").Value()) ApeMaternoPF = IIf(IsDBNull(DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("APELLIDOMATERNO").Value()), "", DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("APELLIDOMATERNO").Value()) CurpPF = IIf(IsDBNull(DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("CURP").Value()), "", DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("CURP").Value()) RFCPF = IIf(IsDBNull(DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("RFC").Value()), "", DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("RFC").Value()) 'NombrePF,ApePaternoPF,ApeMaternoPF,FechaNacPF,CurpPF,RFCPF} Sql = "UPDATE IEF_DATOS_PERSONA SET " & _ "NOMBRE='" & NombrePF & "',APE_PATERNO='" & ApePaternoPF & "',APE_MATERNO,FECHA_NAC='" & ApeMaternoPF & "'," & _ "CURP='" & CurpPF & "',RFC_PF='" & RFCPF & "',RAZON_SOC_PM=,FECHA_CONSTITUCION," & _ "RFC_PM,RAZON_SOC_FI,NUM_REFERENCIA_FI,RFC_FI" & _ "WHERE ANIO=" & Anio & " AND CONSECUTIVO=" & Consecutivo & "" cLScPL.sbModifica2(Sql) End If 'PERSONA MORAL If CboTipoPersona.Text = "PERSONA MORAL" Then RazonSocialPM = IIf(IsDBNull(DGVOperaciones.Rows(0).Cells("NOMBREORAZONS1").Value()), "", DGVOperaciones.Rows(0).Cells("NOMBREORAZONS1").Value()) FechaConstitucPF = dtpFechaConstit.Value.ToString("dd/MM/yyyy") RFCPM = IIf(IsDBNull(DGVOperaciones.Rows(0).Cells("RFC").Value()), "", DGVOperaciones.Rows(0).Cells("RFC").Value()) Sql = "UPDATE IEF_DATOS_PERSONA SET " & _ "RAZON_SOC_PM='" & RazonSocialPM.Trim & "',FECHA_CONSTITUCION='" & FechaConstitucPF & "'," & _ "RFC_PM='" & RFCPM.Trim & "' " & _ "WHERE ANIO=" & Anio & " AND CONSECUTIVO=" & Consecutivo & "" cLScPL.sbModifica2(Sql) End If 'FIDEICOMISO If CboTipoPersona.Text = "FIDEICOMISO" Then 'RazonSocialFI,NumRefFideFI,RFCFI RazonSocialFI = IIf(IsDBNull(DGVOperaciones.Rows(0).Cells("NOMBREORAZONS1").Value()), "", DGVOperaciones.Rows(0).Cells("NOMBREORAZONS1").Value()) NumRefFideFI = IIf(IsDBNull(DGVOperaciones.Rows(0).Cells("NUMEROREFERENCIA").Value()), "", DGVOperaciones.Rows(0).Cells("NUMEROREFERENCIA").Value()) RFCFI = IIf(IsDBNull(DGVOperaciones.Rows(0).Cells("RFC").Value()), "", DGVOperaciones.Rows(0).Cells("RFC").Value()) Sql = "UPDATE IEF_DATOS_PERSONA SET " & _ "RAZON_SOC_FI='" & RazonSocialFI & "', NUM_REFERENCIA_FI='" & NumRefFideFI & "',RFC_FI='" & RFCFI & "' " & _ "WHERE ANIO=" & Anio & " AND CONSECUTIVO=" & Consecutivo & "" cLScPL.sbModifica2(Sql) End If 'Guardar Datos de las Operaciones Dim FechaHoraOperDate As Date Sql = "DELETE FROM IEF_REPORTE_OPERACIONES WHERE ANIO=" & Anio & " AND CONSECUTIVO=" & Consecutivo & "" cLScPL.sbModifica2(Sql) For i = 0 To DGVDatosReporte.RowCount - 1 'DatosOperOrigSolic = "30" CveTipOperxEntidad = IIf(IsDBNull(DGVOperaciones.Rows(i).Cells("IDTIPOOPERACION").Value()), 0, DGVOperaciones.Rows(i).Cells("IDTIPOOPERACION").Value()) CveInstruMoneOper = IIf(IsDBNull(DGVOperaciones.Rows(i).Cells("IDINSTRUMENTOMONETARIO").Value()), 0, DGVOperaciones.Rows(i).Cells("IDINSTRUMENTOMONETARIO").Value()) CtaContrOper = IIf(IsDBNull(DGVOperaciones.Rows(i).Cells("CUENTA").Value()), 0, DGVOperaciones.Rows(i).Cells("CUENTA").Value()) MontoOper = IIf(IsDBNull(DGVOperaciones.Rows(i).Cells("MONTO").Value()), 0, DGVOperaciones.Rows(i).Cells("MONTO").Value()) CveMoneda = IIf(IsDBNull(DGVOperaciones.Rows(i).Cells("IDMONEDA").Value()), 0, DGVOperaciones.Rows(i).Cells("IDMONEDA").Value()) CveMonDivisa = RegresaDato("CAT_MONEDA", "IDMONEDA", "ALIASID", CveMoneda) FechaHoraOperDate = IIf(IsDBNull(DGVOperaciones.Rows(i).Cells("FECHA").Value()), "01/01/1900", DGVOperaciones.Rows(i).Cells("FECHA").Value()) NumeroReferencia = IIf(IsDBNull(DGVOperaciones.Rows(i).Cells("NUMEROREFERENCIA").Value()), "", DGVOperaciones.Rows(i).Cells("NUMEROREFERENCIA").Value()) 'aaaaMMddhhmmss FechaHoraOper = FechaHoraOperDate.ToString("yyyyMMddhhmmss") 'CopiaInfoInterc = "37" 'ETIQUETA 'Sql = "" 'Sql = "UPDATE IEF_REPORTE_OPERACIONES SET ID_TIPO_OPERACION=" & CveTipOperxEntidad & "," & _ '"ID_INSTR_MONETARIO=" & CveInstruMoneOper & ",NUM_CTA_CONTRATO='" & CtaContrOper & "'," & _ '"MONTO_OPERACIONES='" & MontoOper & "',ID_MONEDA_DIVISA='" & CveMonDivisa & "'," & _ '"FECHA_HORA_OPERACIONES='" & FechaHoraOper & "' " & _ '"WHERE ANIO=" & Anio & " AND CONSECUTIVO=" & Consecutivo & "" Sql = "INSERT INTO IEF_REPORTE_OPERACIONES (ANIO,CONSECUTIVO,ID_TIPO_OPERACION,ID_INSTR_MONETARIO," & _ "NUM_CTA_CONTRATO,MONTO_OPERACIONES,ID_MONEDA_DIVISA,FECHA_HORA_OPERACIONES,NUMEROREFERENCIA) VALUES (" & _ "" & Anio & "," & Consecutivo & "," & CveTipOperxEntidad & "," & CveInstruMoneOper & "," & _ "'" & CtaContrOper & "','" & MontoOper & "','" & CveMonDivisa & "','" & FechaHoraOper & "','" & NumeroReferencia & "')" cLScPL.sbModifica2(Sql) Next i MsgBox("La información ha sido guardada exitosamente", MsgBoxStyle.Information) Catch Err As Exception MsgBox(Err.Message) End Try End Sub Private Function RegresaDato(Tabla As String, DatoABuscar As String, DatoTraer As String, ValorDatoBuscar As String) As String Dim Sql As String = "" Dim DsBusq As New DataSet Dim ClsBus As New clsComplejo Dim Resultado As String = "" If IsNumeric(ValorDatoBuscar) Then Sql = "SELECT " & DatoTraer & " FROM " & Tabla & " WHERE " & DatoABuscar & " = " & ValorDatoBuscar & " " Else Sql = "SELECT " & DatoTraer & " FROM " & Tabla & " WHERE " & DatoABuscar & " = '" & ValorDatoBuscar & "' " End If DsBusq = ClsBus.fdtDataSet(Sql) If DsBusq.Tables(0).Rows.Count > 0 Then Resultado = DsBusq.Tables(0).Rows(0).Item(0) Else Resultado = "" End If Return Resultado End Function Private Sub Llenagrid() Dim Classcom As New clsComplejo Dim ClassCatalogos As New ClassCatalogos Dim SQL As String Dim FILA As DataRow Dim DsDias As New DataSet Try 'LLENA GRID SQL = "SELECT IDCLIENTE,NIC, NOMBREORAZONS FROM CLIENTE " 'PERSONA FISICA TIPOPERSONA = 1 BRANCH = '01' If CboTipoPersona.Text = "PERSONA FISICA" Then SQL = SQL & "WHERE IDTIPOPERSONA = 2" AgregaColumnasOperaciones("PERSONA FISICA") End If 'PERSONA MORAL TIPOPERSONA = 2 BRANCH = '01' If CboTipoPersona.Text = "PERSONA MORAL" Then SQL = SQL & "WHERE IDTIPOPERSONA = 1" AgregaColumnasOperaciones("PERSONA MORAL") End If 'FIDEICOMISO TIPOPERSONA = 2 BRANCH = ISNULL If CboTipoPersona.Text = "FIDEICOMISO" Then SQL = SQL & "WHERE IDTIPOPERSONA = 7" ' AgregaColumnasOperaciones("FIDEICOMISO") End If DsDias = Classcom.fdtDataSet(SQL) DGVClientes.DataSource = DsDias.Tables(0) DGVClientes.Columns("IDCLIENTE").Visible = False DGVClientes.Columns("NOMBREORAZONS").Width = 500 DGVClientes.Columns("NIC").Width = 60 Catch ex As Exception MessageBox.Show("Error al cargar llenar Grid" & ex.Message, "Minds", MessageBoxButtons.OK, MessageBoxIcon.Warning) End Try End Sub Private Sub LlenaOperaciones(IdCliente As Integer, Origen As String) Dim DsOper As New DataSet Dim ClsCom As New clsComplejo Dim Sql As String Try If CboTipoPersona.SelectedIndex = -1 Then MessageBox.Show("Seleccione tipo de persona", "Minds", MessageBoxButtons.OK, MessageBoxIcon.Information) CboTipoPersona.Focus() Exit Sub End If If CboTipoPersona.Text = "PERSONA FISICA" Or CboTipoPersona.Text = "PERSONA MORAL" Then Sql = "SELECT CL.IDCLIENTE,CL.NOMBREORAZONS,CL.APATERNO,CL.AMATERNO,CL.CURP,CL.RFC,CL.NOMBREORAZONS,CL.NIC,'' FECHAACTA, IDCUENTA,CUENTA,IDINSTRUMENTOMONETARIO, IDTIPOOPERACION, MONTO, " & _ "IDMONEDA,FECHA,NUMEROREFERENCIA FROM (SELECT IDCLIENTE,CUENTA.IDCUENTA,CUENTA.NOCUENTA CUENTA,IDINSTRUMENTOMONETARIO, IDTIPOOPERACION, MERCADODECAPITALES.MONTO, " & _ "MERCADODECAPITALES.IDMONEDA,NUMEROREFERENCIA ,FECHA FROM MERCADODECAPITALES INNER JOIN CUENTA ON MERCADODECAPITALES.IDCUENTA = CUENTA.IDCUENTA " & _ "UNION SELECT IDCLIENTE,CUENTA.IDCUENTA,CUENTA.NOCUENTA CUENTA, IDINSTRUMENTOMONETARIO, IDTIPOOPERACION, BANCAINTERNACIONAL.MONTO, BANCAINTERNACIONAL.IDMONEDA, NUMEROREFERENCIA ,FECHA " & _ "FROM BANCAINTERNACIONAL INNER JOIN CUENTA ON BANCAINTERNACIONAL.IDCUENTA = CUENTA.IDCUENTA UNION SELECT IDCLIENTE,CUENTA.IDCUENTA,CUENTA.NOCUENTA CUENTA, IDINSTRUMENTOMONETARIO, IDTIPOOPERACION, CREDITO.MONTO, CREDITO.IDMONEDA, NUMEROREFERENCIA ,FECHA " & _ "FROM CREDITO INNER JOIN CUENTA ON CREDITO.IDCUENTA = CUENTA.IDCUENTA UNION SELECT IDCLIENTE, CUENTA.IDCUENTA,CUENTA.NOCUENTA CUENTA, IDINSTRUMENTOMONETARIO, IDTIPOOPERACION, " & _ "DIVISAS.MONTO, DIVISAS.IDMONEDA, NUMEROREFERENCIA ,FECHA FROM DIVISAS INNER JOIN CUENTA ON DIVISAS.IDCUENTA = CUENTA.IDCUENTA " & _ "UNION SELECT IDCLIENTE, CUENTA.IDCUENTA,CUENTA.NOCUENTA CUENTA,IDINSTRUMENTOMONETARIO, IDTIPOOPERACION, BANCATRADICIONAL.MONTO, BANCATRADICIONAL.IDMONEDA, NUMEROREFERENCIA ,FECHA " & _ "FROM BANCATRADICIONAL INNER JOIN CUENTA ON BANCATRADICIONAL.IDCUENTA = CUENTA.IDCUENTA) TR INNER JOIN CLIENTE CL ON CL.IDCLIENTE = TR.IDCLIENTE WHERE CL.IDCLIENTE = " & IdCliente & " " If Origen = "CLIENTES" Then Sql = Sql & " And TR.FECHA BETWEEN CONVERT(DATETIME,'" & ClsCom.ObtenFecha(DTOperFeInicio.Value.Date, "DD/MM/YYYY") & "', 103) AND CONVERT(DATETIME,'" & ClsCom.ObtenFecha(DTOperFeFin.Value.Date, "DD/MM/YYYY") & "', 103) " End If '"WHERE CL.IDCLIENTE = " & IdCliente & " " 'WHERE FECHA_RECEP_SOLIC BETWEEN TO_DATE('" & DTPFeRecInicio.Value.ToString("dd/MM/yyyy") & "','dd/MM/yyyy') AND TO_DATE('" & DTPFeRecFin.Value.ToString("dd/MM/yyyy") & "','dd/MM/yyyy') " End If If CboTipoPersona.Text = "FIDEICOMISO" Then Sql = "SELECT CL.IDCLIENTE,CL.NOMBREORAZONS,CL.APATERNO,CL.AMATERNO,CL.CURP,CL.RFC,CL.NOMBREORAZONS,CL.NIC,'' FECHAACTA, IDCUENTA,CUENTA,IDINSTRUMENTOMONETARIO, IDTIPOOPERACION, MONTO," & _ "IDMONEDA,FECHA,NUMEROREFERENCIA FROM (SELECT IDCLIENTE,CUENTA.IDCUENTA,CUENTA.NOCUENTA CUENTA,IDINSTRUMENTOMONETARIO, IDTIPOOPERACION, MERCADODECAPITALES.MONTO, " & _ "MERCADODECAPITALES.IDMONEDA,NUMEROREFERENCIA ,FECHA FROM MERCADODECAPITALES INNER JOIN CUENTA ON MERCADODECAPITALES.IDCUENTA = CUENTA.IDCUENTA " & _ "UNION SELECT IDCLIENTE,CUENTA.IDCUENTA,CUENTA.NOCUENTA CUENTA, IDINSTRUMENTOMONETARIO, IDTIPOOPERACION, BANCAINTERNACIONAL.MONTO, BANCAINTERNACIONAL.IDMONEDA, NUMEROREFERENCIA ,FECHA " & _ "FROM BANCAINTERNACIONAL INNER JOIN CUENTA ON BANCAINTERNACIONAL.IDCUENTA = CUENTA.IDCUENTA UNION SELECT IDCLIENTE,CUENTA.IDCUENTA,CUENTA.NOCUENTA CUENTA, IDINSTRUMENTOMONETARIO, IDTIPOOPERACION, CREDITO.MONTO, CREDITO.IDMONEDA, NUMEROREFERENCIA ,FECHA " & _ "FROM CREDITO INNER JOIN CUENTA ON CREDITO.IDCUENTA = CUENTA.IDCUENTA UNION SELECT IDCLIENTE, CUENTA.IDCUENTA,CUENTA.NOCUENTA CUENTA, IDINSTRUMENTOMONETARIO, IDTIPOOPERACION, " & _ "DIVISAS.MONTO, DIVISAS.IDMONEDA, NUMEROREFERENCIA ,FECHA FROM DIVISAS INNER JOIN CUENTA ON DIVISAS.IDCUENTA = CUENTA.IDCUENTA " & _ "UNION SELECT IDCLIENTE, CUENTA.IDCUENTA,CUENTA.NOCUENTA CUENTA,IDINSTRUMENTOMONETARIO, IDTIPOOPERACION, BANCATRADICIONAL.MONTO, BANCATRADICIONAL.IDMONEDA, NUMEROREFERENCIA ,FECHA " & _ "FROM BANCATRADICIONAL INNER JOIN CUENTA ON BANCATRADICIONAL.IDCUENTA = CUENTA.IDCUENTA) TR INNER JOIN CLIENTE CL ON CL.IDCLIENTE = TR.IDCLIENTE " & _ "WHERE CL.idTipoPersona = 7 " If Origen = "CLIENTES" Then Sql = Sql & " And TR.FECHA BETWEEN CONVERT(DATETIME,'" & ClsCom.ObtenFecha(DTOperFeInicio.Value.Date, "DD/MM/YYYY") & "', 103) AND CONVERT(DATETIME,'" & ClsCom.ObtenFecha(DTOperFeFin.Value.Date, "DD/MM/YYYY") & "', 103) " End If '"WHERE CL.IDCLIENTE = " & IdCliente & " " End If 'DGVOperaciones DsOper = ClsCom.fdtDataSet(Sql) If DsOper.Tables(0).Rows.Count = 0 Then MsgBox("No existen Operaciones para el cliente y rango de fechas seleccionado", MsgBoxStyle.Exclamation, "Operaciones Cliente") End If DGVOperaciones.DataSource = DsOper.Tables(0) 'If CboTipoPersona.Text = "PERSONA FISICA" Or CboTipoPersona.Text = "PERSONA MORAL" Then DGVOperaciones.Columns("IDCLIENTE").Visible = False DGVOperaciones.Columns("NOMBREORAZONS").Visible = False DGVOperaciones.Columns("APATERNO").Visible = False DGVOperaciones.Columns("AMATERNO").Visible = False DGVOperaciones.Columns("CURP").Visible = False DGVOperaciones.Columns("RFC").Visible = False DGVOperaciones.Columns("NOMBREORAZONS").Visible = False DGVOperaciones.Columns("NIC").Visible = False DGVOperaciones.Columns("FECHAACTA").Visible = False DGVOperaciones.Columns("IDCUENTA").Visible = False DGVOperaciones.Columns("IDINSTRUMENTOMONETARIO").Visible = False DGVOperaciones.Columns("IDMONEDA").Visible = False DGVOperaciones.Columns("FECHA").Visible = True DGVOperaciones.Columns("FECHA").Width = 70 DGVOperaciones.Columns("IDTIPOOPERACION").Visible = False DGVOperaciones.Columns("CUENTA").Width = 60 DGVOperaciones.Columns("MONTO").Width = 60 DGVOperaciones.Columns("NUMEROREFERENCIA").HeaderText = "No.REF." DGVOperaciones.Columns("NUMEROREFERENCIA").Width = 80 'End If 'If CboTipoPersona.Text = "PERSONA FISICA" Or CboTipoPersona.Text = "PERSONA MORAL" Then ' DGVOperaciones.Columns("IDCLIENTE").Visible = False ' DGVOperaciones.Columns("NOMBRE").Visible = False ' DGVOperaciones.Columns("APELLIDOPATERNO").Visible = False ' DGVOperaciones.Columns("APELLIDOMATERNO").Visible = False ' DGVOperaciones.Columns("CURP").Visible = False ' DGVOperaciones.Columns("RFC").Visible = False ' DGVOperaciones.Columns("RAZONSOCIAL").Visible = False ' DGVOperaciones.Columns("NIC").Visible = False ' DGVOperaciones.Columns("FECHAACTA").Visible = False ' DGVOperaciones.Columns("IDCUENTA").Visible = False ' DGVOperaciones.Columns("IDINSTRUMENTOMONETARIO").Visible = False ' DGVOperaciones.Columns("IDMONEDA").Visible = False ' DGVOperaciones.Columns("FECHA").Visible = False 'End If Catch err As Exception MsgBox(err.Message, MsgBoxStyle.Critical, "Operaciones Cliente") Finally 'DsOper.Dispose() End Try End Sub Private Sub DGVClientes_CellDoubleClick(sender As Object, e As System.Windows.Forms.DataGridViewCellEventArgs) Handles DGVClientes.CellDoubleClick Try DGVOperaciones.DataSource = Nothing DGVDatosReporte.Rows.Clear() IdCte = DGVClientes.Rows(DGVClientes.CurrentRow.Index).Cells("IDCLIENTE").Value() TxtIdCliente.Text = IdCte.ToString LlenaOperaciones(IdCte, "CLIENTES") Catch err As Exception MsgBox(err.Message, MsgBoxStyle.Exclamation, "Operaciones Cliente") Finally End Try End Sub Private Sub DGVOperaciones_CellDoubleClick(sender As Object, e As System.Windows.Forms.DataGridViewCellEventArgs) Handles DGVOperaciones.CellDoubleClick 'Datos del Cliente Dim Nombre As String Dim ApePat As String Dim ApeMat As String Dim Curp As String Dim RFC As String Dim RazonSocial As String Dim FeConstitucion As String Dim NumReferencia As String ''Datos de las Operaciones Dim TipoOperacion As String Dim Cuenta As String Dim InstrMonet As String Dim Monto As Double Dim IdMoneda As String Dim Moneda As String Dim Fecha As String Dim NumRef As String Dim NumRefReporte As String Dim CuentaReporte As String Dim i As Integer = 0 If CboTipoPersona.Text = "PERSONA FISICA" Then Nombre = IIf(IsDBNull(DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("NOMBRE").Value()), "", DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("NOMBRE").Value()) ApePat = IIf(IsDBNull(DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("APELLIDOPATERNO").Value()), "", DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("APELLIDOPATERNO").Value()) ApeMat = IIf(IsDBNull(DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("APELLIDOMATERNO").Value()), "", DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("APELLIDOMATERNO").Value()) Curp = IIf(IsDBNull(DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("CURP").Value()), "", DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("CURP").Value()) RFC = IIf(IsDBNull(DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("RFC").Value()), "", DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("RFC").Value()) TipoOperacion = IIf(IsDBNull(DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("IDTIPOOPERACION").Value()), "", DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("IDTIPOOPERACION").Value()) Cuenta = IIf(IsDBNull(DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("CUENTA").Value()), "", DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("CUENTA").Value()) InstrMonet = IIf(IsDBNull(DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("IDINSTRUMENTOMONETARIO").Value()), "", DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("IDINSTRUMENTOMONETARIO").Value()) Monto = IIf(IsDBNull(DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("MONTO").Value()), "", DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("MONTO").Value()) Moneda = IIf(IsDBNull(DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("IDMONEDA").Value()), "", DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("IDMONEDA").Value()) Fecha = IIf(IsDBNull(DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("FECHA").Value()), "", DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("FECHA").Value()) AgregaRenglonPF(Nombre, ApePat, ApeMat, Curp, RFC, TipoOperacion, InstrMonet, Cuenta, Monto, Moneda, Fecha) End If 'PERSONA MORAL TIPOPERSONA = 2 BRANCH = '01' If CboTipoPersona.Text = "PERSONA MORAL" Then RazonSocial = IIf(IsDBNull(DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("NOMBREORAZONS1").Value()), "", DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("NOMBREORAZONS1").Value()) RazonSocial = ReemplazaCaracNoValidos(RazonSocial, 1) FeConstitucion = IIf(IsDBNull(DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("FECHAACTA").Value()), "", DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("FECHAACTA").Value()) RFC = IIf(IsDBNull(DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("RFC").Value()), "", DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("RFC").Value()) TipoOperacion = IIf(IsDBNull(DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("IDTIPOOPERACION").Value()), "", DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("IDTIPOOPERACION").Value()) Cuenta = IIf(IsDBNull(DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("CUENTA").Value()), "", DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("CUENTA").Value()) InstrMonet = IIf(IsDBNull(DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("IDINSTRUMENTOMONETARIO").Value()), "", DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("IDINSTRUMENTOMONETARIO").Value()) Monto = IIf(IsDBNull(DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("MONTO").Value()), "", DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("MONTO").Value()) Moneda = IIf(IsDBNull(DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("IDMONEDA").Value()), "", DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("IDMONEDA").Value()) Fecha = IIf(IsDBNull(DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("FECHA").Value()), "", DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("FECHA").Value()) NumRef = IIf(IsDBNull(DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("NUMEROREFERENCIA").Value()), "", DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("NUMEROREFERENCIA").Value()) 'vALIDAR POR CUENTA Y MONTO QUE NO EXISTA EN EL GRID DE DATOS A ENVIAR For i = 0 To DGVDatosReporte.Rows.Count - 1 NumRefReporte = IIf(IsDBNull(DGVDatosReporte.Rows(i).Cells("NumReferencia").Value()), "", DGVDatosReporte.Rows(i).Cells("NumReferencia").Value()) CuentaReporte = IIf(IsDBNull(DGVDatosReporte.Rows(i).Cells("CUENTA").Value()), "", DGVDatosReporte.Rows(i).Cells("CUENTA").Value()) If NumRefReporte.Trim = NumRef.Trim And CuentaReporte = Cuenta Then MsgBox("Esta operación ya ha sido seleccionada, verifique por favor", MsgBoxStyle.Critical) Exit Sub End If Next AgregaRenglonPM(RazonSocial, FeConstitucion, RFC, TipoOperacion, InstrMonet, Cuenta, Monto, Moneda, Fecha, NumRef) End If 'FIDEICOMISO TIPOPERSONA = 2 BRANCH = ISNULL If CboTipoPersona.Text = "FIDEICOMISO" Then RazonSocial = IIf(IsDBNull(DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("NOMBREORAZONS1").Value()), "", DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("NOMBREORAZONS1").Value()) NumReferencia = IIf(IsDBNull(DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("NUMEROREFERENCIA").Value()), "", DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("NUMEROREFERENCIA").Value()) RFC = IIf(IsDBNull(DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("RFC").Value()), "", DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("RFC").Value()) TipoOperacion = IIf(IsDBNull(DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("IDTIPOOPERACION").Value()), "", DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("IDTIPOOPERACION").Value()) Cuenta = IIf(IsDBNull(DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("CUENTA").Value()), "", DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("CUENTA").Value()) InstrMonet = IIf(IsDBNull(DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("IDINSTRUMENTOMONETARIO").Value()), "", DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("IDINSTRUMENTOMONETARIO").Value()) Monto = IIf(IsDBNull(DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("MONTO").Value()), "", DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("MONTO").Value()) Moneda = IIf(IsDBNull(DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("IDMONEDA").Value()), "", DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("IDMONEDA").Value()) Fecha = IIf(IsDBNull(DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("FECHA").Value()), "", DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("FECHA").Value()) NumRef = IIf(IsDBNull(DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("NUMEROREFERENCIA").Value()), "", DGVOperaciones.Rows(DGVOperaciones.CurrentRow.Index).Cells("NUMEROREFERENCIA").Value()) For i = 0 To DGVDatosReporte.Rows.Count - 1 NumRefReporte = IIf(IsDBNull(DGVDatosReporte.Rows(i).Cells("NumReferencia").Value()), "", DGVDatosReporte.Rows(i).Cells("NumReferencia").Value()) CuentaReporte = IIf(IsDBNull(DGVDatosReporte.Rows(i).Cells("CUENTA").Value()), "", DGVDatosReporte.Rows(i).Cells("CUENTA").Value()) If NumRefReporte.Trim = NumRef.Trim And CuentaReporte = Cuenta Then MsgBox("Esta operacion ya ha sido seleccionada, verifique por favor", MsgBoxStyle.Critical) Exit Sub End If Next AgregaRenglonFI(RazonSocial, NumReferencia, RFC, TipoOperacion, InstrMonet, Cuenta, Monto, Moneda, Fecha, NumRef) End If DGVOperaciones.Columns("FECHA").Visible = False DGVOperaciones.Columns("IDMONEDA").Visible = False End Sub Private Sub AgregaColumnasOperaciones(TipoPersona As String) If DGVDatosReporte.Columns.Count > 0 Then Exit Sub If TipoPersona = "PERSONA FISICA" Then For i As Integer = 0 To 5 Dim Col As New DataGridViewTextBoxColumn If i = 0 Then Col.HeaderText = "Nombre" Col.Name = "Nombre" End If If i = 1 Then Col.HeaderText = "Ap.Paterno" Col.Name = "ApPaterno" End If If i = 2 Then Col.HeaderText = "Ap.Materno" Col.Name = "ApPaterno" End If If i = 3 Then Col.HeaderText = "Curp" Col.Name = "Curp" End If If i = 4 Then Col.HeaderText = "Rfc" Col.Name = "Rfc" End If If i = 5 Then Col.HeaderText = "No.Referencia" Col.Name = "NumReferencia" End If DGVDatosReporte.Columns.Add(Col) Next End If If TipoPersona = "PERSONA MORAL" Then For i As Integer = 0 To 2 Dim Col As New DataGridViewTextBoxColumn If i = 0 Then Col.HeaderText = "Razon Social" Col.Name = "RazonSocial" End If If i = 1 Then Col.HeaderText = "Fe.Const." Col.Name = "FeConstit" End If If i = 2 Then Col.HeaderText = "RFC" Col.Name = "RFC" End If DGVDatosReporte.Columns.Add(Col) Next End If If TipoPersona = "FIDEICOMISO" Then For i As Integer = 0 To 2 Dim Col As New DataGridViewTextBoxColumn If i = 0 Then Col.HeaderText = "Razón Social" Col.Name = "RazonSocial" End If If i = 1 Then Col.HeaderText = "Num.Ref." Col.Name = "NumRef" End If If i = 2 Then Col.HeaderText = "RFC" Col.Name = "RFC" End If DGVDatosReporte.Columns.Add(Col) Next End If For i As Integer = 0 To 6 Dim Col As New DataGridViewTextBoxColumn If i = 0 Then Col.HeaderText = "Tipo Operación" Col.Name = "TipoOpera" End If If i = 1 Then Col.HeaderText = "Instr.Monetario" Col.Name = "InstrMonet" End If If i = 2 Then Col.HeaderText = "Cuenta" Col.Name = "Cuenta" End If If i = 3 Then Col.HeaderText = "Monto" Col.Name = "Monto" End If If i = 4 Then Col.HeaderText = "Moneda" Col.Name = "Moneda" End If If i = 5 Then Col.HeaderText = "Fecha" Col.Name = "FECHA" End If If i = 6 Then Col.HeaderText = "No.Referencia" Col.Name = "NumReferencia" End If DGVDatosReporte.Columns.Add(Col) Next If TipoPersona = "PERSONA MORAL" Then DGVDatosReporte.Columns("FeConstit").Visible = False End If End Sub Private Sub AgregaRenglonPF(PNombre As String, PApePat As String, PApMat As String, PCurp As String, PRFC As String, TipoOperacion As String, InstrMonet As String, Cuenta As String, Monto As String, Moneda As String, Fecha As String) Dim UltRen As Integer Dim DT As New DataGridViewRow Try DGVBuscaDatos.Columns.Clear() UltRen = DGVDatosReporte.Rows.Count DT.CreateCells(DGVDatosReporte) DT.Cells(0).Value = PNombre 'Nombre DT.Cells(1).Value = PApePat 'Apellido Paterno DT.Cells(2).Value = PApMat 'Apellido Materno DT.Cells(3).Value = PCurp 'Curp DT.Cells(4).Value = PRFC 'RFC DT.Cells(5).Value = TipoOperacion ' DT.Cells(6).Value = InstrMonet ' DT.Cells(7).Value = Cuenta ' DT.Cells(8).Value = Monto ' DT.Cells(9).Value = Moneda ' DT.Cells(10).Value = Fecha ' DGVDatosReporte.Rows.Insert(UltRen, DT) DGVDatosReporte.CurrentRow.Cells(0).ReadOnly = False DGVDatosReporte.CurrentRow.Cells(1).ReadOnly = False DGVDatosReporte.CurrentRow.Cells(2).ReadOnly = False DGVDatosReporte.CurrentRow.Cells(3).ReadOnly = False DGVDatosReporte.CurrentRow.Cells(4).ReadOnly = False Catch Err As Exception MsgBox(Err.Message) End Try End Sub Private Sub AgregaRenglonPM(PRazonSoc As String, PFechaConst As String, PRFC As String, TipoOperacion As String, InstrMonet As String, Cuenta As String, Monto As String, Moneda As String, Fecha As String, NumReferencia As String) Dim UltRen As Integer Dim DT As New DataGridViewRow Try DGVBuscaDatos.Columns.Clear() UltRen = DGVDatosReporte.Rows.Count DT.CreateCells(DGVDatosReporte) DT.Cells(0).Value = PRazonSoc 'Nombre DT.Cells(1).Value = PFechaConst 'Apellido Paterno DT.Cells(2).Value = PRFC 'RFC DT.Cells(3).Value = TipoOperacion ' DT.Cells(4).Value = InstrMonet ' DT.Cells(5).Value = Cuenta ' DT.Cells(6).Value = Monto ' DT.Cells(7).Value = Moneda ' DT.Cells(8).Value = Fecha ' DT.Cells(9).Value = NumReferencia ' DGVDatosReporte.Rows.Insert(UltRen, DT) DGVDatosReporte.CurrentRow.Cells(0).ReadOnly = False DGVDatosReporte.CurrentRow.Cells(1).ReadOnly = False DGVDatosReporte.CurrentRow.Cells(2).ReadOnly = False Catch Err As Exception MsgBox(Err.Message) End Try End Sub Private Sub AgregaRenglonFI(PRazonSoc As String, NumRef As String, PRFC As String, TipoOperacion As String, InstrMonet As String, Cuenta As String, Monto As String, Moneda As String, Fecha As String, NumReferencia As String) Dim UltRen As Integer Dim DT As New DataGridViewRow Try DGVBuscaDatos.Columns.Clear() UltRen = DGVDatosReporte.Rows.Count DT.CreateCells(DGVDatosReporte) DT.Cells(0).Value = PRazonSoc 'Nombre DT.Cells(1).Value = NumRef 'Apellido Paterno DT.Cells(2).Value = PRFC 'RFC DT.Cells(3).Value = TipoOperacion ' DT.Cells(4).Value = InstrMonet ' DT.Cells(5).Value = Cuenta ' DT.Cells(6).Value = Monto ' DT.Cells(7).Value = Moneda ' DT.Cells(8).Value = Fecha ' DT.Cells(9).Value = NumReferencia ' DGVDatosReporte.Rows.Insert(UltRen, DT) DGVDatosReporte.CurrentRow.Cells(0).ReadOnly = False DGVDatosReporte.CurrentRow.Cells(1).ReadOnly = False DGVDatosReporte.CurrentRow.Cells(2).ReadOnly = False Catch Err As Exception MsgBox(Err.Message) End Try End Sub Private Sub DGVOperaciones_CellContentClick(sender As System.Object, e As System.Windows.Forms.DataGridViewCellEventArgs) Handles DGVOperaciones.CellContentClick 'IdCte = DGVClientes.Rows(DGVClientes.CurrentRow.Index).Cells("IDCLIENTE").Value() End Sub Private Sub DGVBuscaDatos_CellDoubleClick(sender As Object, e As System.Windows.Forms.DataGridViewCellEventArgs) Handles DGVBuscaDatos.CellDoubleClick Dim Sql As String = "" Dim DsReporte As New DataSet Dim DsCliente As New DataSet Dim DsOperaciones As New DataSet Dim ClsCom As New clsComplejo Dim i As Integer = 0 Dim IdPais As Integer = 0 Dim IdTipoPersonaBusc As Integer Dim Anio As String = "" Dim Consecutivo As String = "" Dim Nombre As String Dim ApePat As String Dim ApeMat As String Dim Curp As String Dim RFC As String Dim RazonSocial As String Dim FeConstitucion As String Dim NumReferencia As String ''Datos de las Operaciones Dim TipoOperacion As String Dim Cuenta As String Dim InstrMonet As String Dim Monto As Double Dim IdMoneda As String Dim Moneda As String Dim Fecha As String Dim NumRef As String Dim Status As String = "" Dim IdClien As Integer = 0 DGVDatosReporte.Columns.Clear() TxtFolioBusca.Text = DGVBuscaDatos.Rows(DGVBuscaDatos.CurrentRow.Index).Cells("FOLIO").Value() Sql = "SELECT ANIO,CONSECUTIVO,ID_ORG_REGULADOR,ID_ENTIDAD_EMISORA,FOLIO," & _ "FECHA_RECEP_SOLIC,ENTIDAD_EXTRAN_SOLIC,ID_PAIS_ENT_EXTRAN,CARGO_FUNC_ENT_EXT," & _ "CARGO_FUNC_RECEP,NOMBRE_ARCHIVO,STATUS,IDTIPOPERSONA,IDCLIENTE FROM IEF_REPORTE_ENT_EXT " & _ "WHERE FOLIO = '" & TxtFolioBusca.Text.Trim & "'" DsReporte = ClsCom.fdtDataSet(Sql) 'Datos Generales del Reporte If DsReporte.Tables(0).Rows.Count > 0 Then TxtFolio.Text = DsReporte.Tables(0).Rows(0).Item("FOLIO") CboOrgRegulador.SelectedValue = DsReporte.Tables(0).Rows(0).Item("ID_ORG_REGULADOR") CboEntidad.SelectedValue = DsReporte.Tables(0).Rows(0).Item("ID_ENTIDAD_EMISORA") dtpFechaRecepcion.Value = CDate(DsReporte.Tables(0).Rows(0).Item("FECHA_RECEP_SOLIC")) TxtNomEntExt.Text = DsReporte.Tables(0).Rows(0).Item("ENTIDAD_EXTRAN_SOLIC") IdPais = RegresaDato("CAT_PAIS", "ISO", "IDPAIS", DsReporte.Tables(0).Rows(0).Item("ID_PAIS_ENT_EXTRAN")) CmbPais.SelectedValue = IdPais TxtCargoFuncExtra.Text = DsReporte.Tables(0).Rows(0).Item("CARGO_FUNC_ENT_EXT") TxtCargoFuncVaDirigido.Text = DsReporte.Tables(0).Rows(0).Item("CARGO_FUNC_RECEP") TxtArchivoAnexo.Text = DsReporte.Tables(0).Rows(0).Item("NOMBRE_ARCHIVO") Anio = DsReporte.Tables(0).Rows(0).Item("ANIO") Consecutivo = DsReporte.Tables(0).Rows(0).Item("CONSECUTIVO") IdTipoPersonaBusc = DsReporte.Tables(0).Rows(0).Item("IDTIPOPERSONA") Status = DsReporte.Tables(0).Rows(0).Item("STATUS") If Status = "ENVIADO" Then GroupBox1.Enabled = False CmdGuardar.Enabled = False BTGenerar.Enabled = False LblReporte.Visible = True Else GroupBox1.Enabled = True GroupBox1.Enabled = True CmdGuardar.Enabled = True BTGenerar.Enabled = True LblReporte.Visible = False End If GroupBox2.Enabled = True If IdTipoPersonaBusc = 1 Then 'PERSONA FISICA CboTipoPersona.Text = "PERSONA FISICA" ElseIf IdTipoPersonaBusc = 2 Then 'PERSONA MORAL Try CboTipoPersona.Text = "PERSONA MORAL" Catch err As Exception End Try ElseIf IdTipoPersonaBusc = 3 Then 'FIDEICOMISO Try CboTipoPersona.Text = "FIDEICOMISO" Catch err As Exception End Try End If TxtIdCliente.Text = DsReporte.Tables(0).Rows(0).Item("IDCLIENTE") IdClien = DsReporte.Tables(0).Rows(0).Item("IDCLIENTE") End If 'Llena los datos del cliente (Grid Cliente) DGVClientes.Visible = False Llenagrid() For i = 0 To DGVClientes.Rows.Count - 1 DGVClientes.CurrentCell = DGVClientes.Rows(i).Cells(1) DGVClientes.Refresh() If DGVClientes.Rows(DGVClientes.CurrentRow.Index).Cells("IDCLIENTE").Value() = IdClien Then Exit For End If Next DGVClientes.Visible = True 'Llenar Operaciones LlenaOperaciones(IdClien, "GRIDBUSCA") 'Llenar ENIVIADOS Sql = "SELECT NOMBRE,APE_PATERNO,APE_MATERNO,CURP,RFC_PF," & _ "RAZON_SOC_PM,FECHA_CONSTITUCION FECHAACTA,RFC_PM, " & _ "RAZON_SOC_FI,NUMEROREFERENCIA as NUM_REFERENCIA_FI,RFC_FI, " & _ "RO.ANIO, RO.CONSECUTIVO, ID_TIPO_OPERACION, ID_INSTR_MONETARIO, " & _ "NUM_CTA_CONTRATO,MONTO_OPERACIONES,ID_MONEDA_DIVISA,FECHA_HORA_OPERACIONES,NUMEROREFERENCIA " & _ "FROM IEF_REPORTE_OPERACIONES RO INNER JOIN IEF_DATOS_PERSONA DP " & _ "ON RO.ANIO = DP.ANIO AND RO.CONSECUTIVO = DP.CONSECUTIVO " & _ "WHERE RO.ANIO = " & Anio & " AND RO.CONSECUTIVO = " & Consecutivo & "" DsOperaciones = ClsCom.fdtDataSet(Sql) If DsOperaciones.Tables(0).Rows.Count > 0 Then TxtFolio.Text = DsOperaciones.Tables(0).Rows(0).Item("ANIO") & "-" & DsOperaciones.Tables(0).Rows(0).Item("CONSECUTIVO") For i = 0 To DsOperaciones.Tables(0).Rows.Count - 1 Nombre = IIf(IsDBNull(DsOperaciones.Tables(0).Rows(i).Item("NOMBRE")), "", DsOperaciones.Tables(0).Rows(i).Item("NOMBRE")) ApePat = IIf(IsDBNull(DsOperaciones.Tables(0).Rows(i).Item("APE_PATERNO")), "", DsOperaciones.Tables(0).Rows(i).Item("APE_PATERNO")) ApeMat = IIf(IsDBNull(DsOperaciones.Tables(0).Rows(i).Item("APE_MATERNO")), "", DsOperaciones.Tables(0).Rows(i).Item("APE_MATERNO")) Curp = IIf(IsDBNull(DsOperaciones.Tables(0).Rows(i).Item("CURP")), "", DsOperaciones.Tables(0).Rows(i).Item("CURP")) If CboTipoPersona.Text = "PERSONA FISICA" Then RFC = IIf(IsDBNull(DsOperaciones.Tables(0).Rows(i).Item("RFC_PF")), "", DsOperaciones.Tables(0).Rows(i).Item("RFC_PF")) RazonSocial = IIf(IsDBNull(DsOperaciones.Tables(0).Rows(i).Item("RAZON_SOC_FI")), "", DsOperaciones.Tables(0).Rows(i).Item("RAZON_SOC_FI")) End If If CboTipoPersona.Text = "PERSONA MORAL" Then RFC = IIf(IsDBNull(DsOperaciones.Tables(0).Rows(i).Item("RFC_PM")), "", DsOperaciones.Tables(0).Rows(i).Item("RFC_PM")) RazonSocial = IIf(IsDBNull(DsOperaciones.Tables(0).Rows(i).Item("RAZON_SOC_PM")), "", DsOperaciones.Tables(0).Rows(i).Item("RAZON_SOC_PM")) End If If CboTipoPersona.Text = "FIDEICOMISO" Then RFC = IIf(IsDBNull(DsOperaciones.Tables(0).Rows(i).Item("RFC_FI")), "", DsOperaciones.Tables(0).Rows(i).Item("RFC_FI")) RazonSocial = IIf(IsDBNull(DsOperaciones.Tables(0).Rows(i).Item("RAZON_SOC_FI")), "", DsOperaciones.Tables(0).Rows(i).Item("RAZON_SOC_FI")) End If TipoOperacion = IIf(IsDBNull(DsOperaciones.Tables(0).Rows(i).Item("ID_TIPO_OPERACION")), "", DsOperaciones.Tables(0).Rows(i).Item("ID_TIPO_OPERACION")) InstrMonet = IIf(IsDBNull(DsOperaciones.Tables(0).Rows(i).Item("ID_INSTR_MONETARIO")), "", DsOperaciones.Tables(0).Rows(i).Item("ID_INSTR_MONETARIO")) Cuenta = IIf(IsDBNull(DsOperaciones.Tables(0).Rows(i).Item("NUM_CTA_CONTRATO")), "", DsOperaciones.Tables(0).Rows(i).Item("NUM_CTA_CONTRATO")) Monto = IIf(IsDBNull(DsOperaciones.Tables(0).Rows(i).Item("MONTO_OPERACIONES")), "", DsOperaciones.Tables(0).Rows(i).Item("MONTO_OPERACIONES")) Moneda = IIf(IsDBNull(DsOperaciones.Tables(0).Rows(i).Item("ID_MONEDA_DIVISA")), 0, DsOperaciones.Tables(0).Rows(i).Item("ID_MONEDA_DIVISA")) Fecha = IIf(IsDBNull(DsOperaciones.Tables(0).Rows(i).Item("FECHA_HORA_OPERACIONES")), "", DsOperaciones.Tables(0).Rows(i).Item("FECHA_HORA_OPERACIONES")) NumRef = IIf(IsDBNull(DsOperaciones.Tables(0).Rows(i).Item("NUMEROREFERENCIA")), "", DsOperaciones.Tables(0).Rows(i).Item("NUMEROREFERENCIA")) FeConstitucion = IIf(IsDBNull(DsOperaciones.Tables(0).Rows(i).Item("FECHAACTA")), "1900/01/01", DsOperaciones.Tables(0).Rows(i).Item("FECHAACTA")) NumReferencia = NumRef If CboTipoPersona.Text = "PERSONA FISICA" Then AgregaRenglonPF(Nombre, ApePat, ApeMat, Curp, RFC, TipoOperacion, InstrMonet, Cuenta, Monto, Moneda, Fecha) End If If CboTipoPersona.Text = "PERSONA MORAL" Then AgregaRenglonPM(RazonSocial, FeConstitucion, RFC, TipoOperacion, InstrMonet, Cuenta, Monto, Moneda, Fecha, NumRef) End If If CboTipoPersona.Text = "FIDEICOMISO" Then AgregaRenglonFI(RazonSocial, NumReferencia, RFC, TipoOperacion, InstrMonet, Cuenta, Monto, Moneda, Fecha, NumRef) End If Next i End If DGVDatosReporte.Columns("FECHA").Visible = False DGVDatosReporte.Columns("MONEDA").Visible = False TxtAccion.Text = "CAMBIO" End Sub Private Sub CmdNuevo_Click(sender As System.Object, e As System.EventArgs) Handles CmdNuevo.Click LimpiarControles() TxtAccion.Text = "ALTA" GroupBox1.Enabled = True CmdGuardar.Enabled = True BTGenerar.Enabled = True LblReporte.Visible = False End Sub Private Sub LimpiarControles() TxtFolio.Text = "" CboOrgRegulador.SelectedIndex = 0 CboEntidad.SelectedIndex = 0 dtpFechaRecepcion.Value = Now TxtNomEntExt.Text = "" CmbPais.SelectedIndex = 0 TxtCargoFuncExtra.Text = "" TxtCargoFuncVaDirigido.Text = "" TxtArchivoAnexo.Text = "" 'CboTipoPersona.SelectedIndex = 0 DGVClientes.DataSource = Nothing DGVOperaciones.DataSource = Nothing DGVDatosReporte.Rows.Clear() DGVDatosReporte.Columns.Clear() DGVBuscaDatos.DataSource = Nothing TxtIdCliente.Text = "" TxtFolioBusca.Text = "" End Sub Private Sub TxtBuscaCliente_TextChanged(sender As System.Object, e As System.EventArgs) Handles TxtBuscaCliente.TextChanged If TxtBuscaCliente.Text.Trim().Length > 0 Then If CboTipoPersona.SelectedIndex = -1 Then MsgBox("Seleccione un tipo de persona", MsgBoxStyle.Critical) TxtBuscaCliente.Text = "" Exit Sub End If LlenagridBCliente(TxtBuscaCliente.Text) Else If CboTipoPersona.SelectedIndex > -1 Then Llenagrid() End If End If End Sub Private Sub LlenagridBCliente(Cadena As String) Dim Classcom As New clsComplejo Dim ClassCatalogos As New ClassCatalogos Dim SQL As String Dim FILA As DataRow Dim DsDias As New DataSet Try 'LLENA GRID SQL = "SELECT IDCLIENTE,NIC, NOMBREORAZONS FROM CLIENTE " 'PERSONA FISICA TIPOPERSONA = 1 BRANCH = '01' If CboTipoPersona.Text = "PERSONA FISICA" Then SQL = SQL & "WHERE IDTIPOPERSONA = 1 AND NOMBREORAZONS LIKE '" & Cadena & " %'" AgregaColumnasOperaciones("PERSONA FISICA") End If 'PERSONA MORAL TIPOPERSONA = 2 BRANCH = '01' If CboTipoPersona.Text = "PERSONA MORAL" Then SQL = SQL & "WHERE IDTIPOPERSONA = 2 AND NOMBREORAZONS LIKE '" & Cadena & "%'" AgregaColumnasOperaciones("PERSONA MORAL") End If 'FIDEICOMISO TIPOPERSONA = 2 BRANCH = ISNULL If CboTipoPersona.Text = "FIDEICOMISO" Then SQL = SQL & "WHERE NOMBREORAZONS LIKE '" & Cadena & "%'" AgregaColumnasOperaciones("FIDEICOMISO") End If DsDias = Classcom.fdtDataSet(SQL) DGVClientes.DataSource = DsDias.Tables(0) DGVClientes.Columns("IDCLIENTE").Visible = False DGVClientes.Columns("NOMBREORAZONS").Width = 500 DGVClientes.Columns("NIC").Width = 60 Catch ex As Exception MessageBox.Show("Error al cargar llenar Grid" & ex.Message, "Minds", MessageBoxButtons.OK, MessageBoxIcon.Warning) End Try End Sub Private Sub LlenagridBNic(Cadena As String) Dim Classcom As New clsComplejo Dim ClassCatalogos As New ClassCatalogos Dim SQL As String Dim FILA As DataRow Dim DsDias As New DataSet Try 'LLENA GRID SQL = "SELECT IDCLIENTE,NIC, NOMBREORAZONS FROM CLIENTE " 'PERSONA FISICA TIPOPERSONA = 1 BRANCH = '01' If CboTipoPersona.Text = "PERSONA FISICA" Then SQL = SQL & "WHERE IDTIPOPERSONA = 2 AND NIC LIKE '" & Cadena & "%'" AgregaColumnasOperaciones("PERSONA FISICA") End If 'PERSONA MORAL TIPOPERSONA = 2 BRANCH = '01' If CboTipoPersona.Text = "PERSONA MORAL" Then SQL = SQL & "WHERE IDTIPOPERSONA = 1 AND NIC LIKE '" & Cadena & "%'" AgregaColumnasOperaciones("PERSONA MORAL") End If 'FIDEICOMISO TIPOPERSONA = 2 BRANCH = ISNULL If CboTipoPersona.Text = "FIDEICOMISO" Then SQL = SQL & "WHERE NIC LIKE '" & Cadena & "%'" AgregaColumnasOperaciones("FIDEICOMISO") End If DsDias = Classcom.fdtDataSet(SQL) DGVClientes.DataSource = DsDias.Tables(0) DGVClientes.Columns("IDCLIENTE").Visible = False DGVClientes.Columns("NOMBREORAZONS").Width = 500 DGVClientes.Columns("NIC").Width = 60 Catch ex As Exception MessageBox.Show("Error al cargar llenar Grid" & ex.Message, "Minds", MessageBoxButtons.OK, MessageBoxIcon.Warning) End Try End Sub Private Sub TxtNic_TextChanged(sender As System.Object, e As System.EventArgs) Handles TxtNic.TextChanged If TxtNic.Text.Trim().Length > 0 Then If CboTipoPersona.SelectedIndex = -1 Then MsgBox("Seleccione un tipo de persona", MsgBoxStyle.Critical) TxtNic.Text = "" Exit Sub End If LlenagridBNic(TxtNic.Text) Else If CboTipoPersona.SelectedIndex > -1 Then Llenagrid() End If End If End Sub Private Sub LlenagridBFechas(Cadena As String) Dim Classcom As New clsComplejo Dim ClassCatalogos As New ClassCatalogos Dim SQL As String Dim FILA As DataRow Dim DsDias As New DataSet Try If DTOperFeInicio.Value > DTOperFeFin.Value Then MsgBox("La fecha inicio no puede ser mayor a la fecha Final", MsgBoxStyle.Critical) Exit Sub End If 'LLENA GRID SQL = "SELECT IDCLIENTE,NIC, RAZONSOCIAL FROM CLIENTE " 'PERSONA FISICA TIPOPERSONA = 1 BRANCH = '01' If CboTipoPersona.Text = "PERSONA FISICA" Then SQL = SQL & "WHERE IDTIPOPERSONA = 1 AND BRANCH_ID IS NOT NULL AND NIC LIKE '" & Cadena & " %'" AgregaColumnasOperaciones("PERSONA FISICA") End If 'PERSONA MORAL TIPOPERSONA = 2 BRANCH = '01' If CboTipoPersona.Text = "PERSONA MORAL" Then SQL = SQL & "WHERE IDTIPOPERSONA = 2 AND BRANCH_ID IS NOT NULL AND NIC LIKE '" & Cadena & "%'" AgregaColumnasOperaciones("PERSONA MORAL") End If 'FIDEICOMISO TIPOPERSONA = 2 BRANCH = ISNULL If CboTipoPersona.Text = "FIDEICOMISO" Then SQL = SQL & "WHERE BRANCH_ID IS NULL AND NIC LIKE '" & Cadena & "%'" AgregaColumnasOperaciones("FIDEICOMISO") End If DsDias = Classcom.fdtDataSet(SQL) DGVClientes.DataSource = DsDias.Tables(0) DGVClientes.Columns("IDCLIENTE").Visible = False DGVClientes.Columns("RAZONSOCIAL").Width = 500 DGVClientes.Columns("NIC").Width = 60 Catch ex As Exception MessageBox.Show("Error al cargar llenar Grid" & ex.Message, "Minds", MessageBoxButtons.OK, MessageBoxIcon.Warning) End Try End Sub Private Sub CmdBuscarFechas_Click(sender As System.Object, e As System.EventArgs) Handles CmdBuscarFechas.Click Dim Sql As String = "" Dim DsBusca As New DataSet Dim ClsCom As New clsComplejo TxtFolioBusca.Text = "" If DTPFeRecInicio.Value.ToString("yyyyMMdd") > DTPFeRecFin.Value.ToString("yyyyMMdd") Then MsgBox("La fecha inicio no puede ser mayor a la fecha Final", MsgBoxStyle.Critical) Exit Sub End If 'DGVDatosReporte.Columns.Clear() Sql = "SELECT ANIO,CONSECUTIVO,FOLIO,ENTIDAD_EXTRAN_SOLIC,FECHA_RECEP_SOLIC " & "FROM IEF_REPORTE_ENT_EXT WHERE FECHA_RECEP_SOLIC BETWEEN CONVERT(DATETIME,'" & DTPFeRecInicio.Value.Date & "', 103) AND CONVERT(DATETIME,'" & DTPFeRecFin.Value.Date & "', 103) " DsBusca = ClsCom.fdtDataSet(Sql) DGVBuscaDatos.DataSource = DsBusca.Tables(0) DGVBuscaDatos.Columns("ANIO").Visible = False DGVBuscaDatos.Columns("CONSECUTIVO").Visible = False DGVBuscaDatos.Columns("FOLIO").Width = 80 DGVBuscaDatos.Columns("ENTIDAD_EXTRAN_SOLIC").Width = 300 DGVBuscaDatos.Columns("FECHA_RECEP_SOLIC").Width = 100 End Sub Private Sub DGVDatosReporte_CellDoubleClick(sender As Object, e As System.Windows.Forms.DataGridViewCellEventArgs) Handles DGVDatosReporte.CellDoubleClick Dim RenAct As Integer Dim Respuesta As String Respuesta = MsgBox("¿ Desea eliminar el registro seleccionado ?", MsgBoxStyle.YesNo + MsgBoxStyle.Question) If Respuesta = vbNo Then Exit Sub 'DGVOperaciones.CurrentRow.Index RenAct = DGVDatosReporte.CurrentRow.Index DGVDatosReporte.Rows.RemoveAt(RenAct) DGVDatosReporte.Refresh() End Sub Private Function ValidarExpresion(Cadena As String, Expresion As String) As Boolean Dim Resultado As Boolean 'Dim ER As New System.Text.RegularExpressions.Regex("[AB]([0-9]{9})") Dim ER As New System.Text.RegularExpressions.Regex(Expresion) Resultado = ER.IsMatch(Cadena) Return Resultado End Function 'Private Sub TxtArchivoAnexo_LostFocus(sender As Object, e As System.EventArgs) Handles TxtArchivoAnexo.LostFocus ' '[A-Z\d_]{1,90} ' 'If ValidarExpresion(TxtArchivoAnexo.Text, "^([\w-]+\.)*?[\w-]+@[\w-]+\.([\w-]+\.)*?[\w]+$") = False Then ' If ValidarExpresion(TxtArchivoAnexo.Text, "[A-Z\d_]{1,90}") = False Then ' MsgBox("Se ha detectado un caracter invalido, verifique por favor") ' End If 'End Sub Private Sub TxtNomEntExt_KeyPress(sender As Object, e As System.Windows.Forms.KeyPressEventArgs) Handles TxtNomEntExt.KeyPress ' Lista con los caracteres que deseo permitir. Dim caracteresPermitidos As String = "0123456789 ABCDEFGHIJKLMNÑOPQRSTUVWXYZ#-.,&_@'" & Convert.ToChar(8) ' Carácter presionado. Dim c As Char = UCase(e.KeyChar) ' Si la tecla presionada no se encuentra en la matriz de caracteres permitidos, anulamos la tecla pulsada. If (Not (caracteresPermitidos.Contains(c))) And Asc(e.KeyChar) <> 24 And Asc(e.KeyChar) <> 22 And Asc(e.KeyChar) <> 3 Then MessageBox.Show("Carácter Invalido, Solo esta permitido los siguientes caracteres: 0123456789ABCDEFGHIJKLMNÑOPQRSTUVWXYZ#-.,&_@'", "ERROR de escritura", _ MessageBoxButtons.OK, MessageBoxIcon.Exclamation) ' Deshechamos el carácter e.Handled = True End If End Sub Private Sub TxtCargoFuncExtra_KeyPress(sender As Object, e As System.Windows.Forms.KeyPressEventArgs) Handles TxtCargoFuncExtra.KeyPress ' Lista con los caracteres que deseo permitir. Dim caracteresPermitidos As String = "ABCDEFGHIJKLMNÑOPQRSTUVWXYZ '." & Convert.ToChar(8) ' Carácter presionado. Dim c As Char = UCase(e.KeyChar) ' Si la tecla presionada no se encuentra en la matriz de caracteres permitidos, anulamos la tecla pulsada. If (Not (caracteresPermitidos.Contains(c))) And Asc(e.KeyChar) <> 24 And Asc(e.KeyChar) <> 22 And Asc(e.KeyChar) <> 3 Then MessageBox.Show("Carácter Invalido, Solo esta permitido los siguientes caracteres: ABCDEFGHIJKLMNÑOPQRSTUVWXYZ '.", "ERROR de escritura", _ MessageBoxButtons.OK, MessageBoxIcon.Exclamation) ' Deshechamos el carácter e.Handled = True End If End Sub Private Sub TxtCargoFuncVaDirigido_KeyPress(sender As Object, e As System.Windows.Forms.KeyPressEventArgs) Handles TxtCargoFuncVaDirigido.KeyPress ' Lista con los caracteres que deseo permitir. Dim caracteresPermitidos As String = "ABCDEFGHIJKLMNÑOPQRSTUVWXYZ '." & Convert.ToChar(8) ' Carácter presionado. Dim c As Char = UCase(e.KeyChar) ' Si la tecla presionada no se encuentra en la matriz de caracteres permitidos, anulamos la tecla pulsada. If (Not (caracteresPermitidos.Contains(c))) And Asc(e.KeyChar) <> 24 And Asc(e.KeyChar) <> 22 And Asc(e.KeyChar) <> 3 Then MessageBox.Show("Carácter Invalido, Solo esta permitido los siguientes caracteres: ABCDEFGHIJKLMNÑOPQRSTUVWXYZ '.", "ERROR de escritura", _ MessageBoxButtons.OK, MessageBoxIcon.Exclamation) ' Deshechamos el carácter e.Handled = True End If End Sub Private Sub TxtArchivoAnexo_KeyPress(sender As Object, e As System.Windows.Forms.KeyPressEventArgs) Handles TxtArchivoAnexo.KeyPress ' Lista con los caracteres que deseo permitir. Dim caracteresPermitidos As String = "0123456789ABCDEFGHIJKLMNÑOPQRSTUVWXYZ_" & Convert.ToChar(8) ' Carácter presionado. Dim c As Char = UCase(e.KeyChar) ' Si la tecla presionada no se encuentra en la matriz de caracteres permitidos, anulamos la tecla pulsada. ' ctrl-x ctrl-v ctrl-c If (Not (caracteresPermitidos.Contains(c))) And Asc(e.KeyChar) <> 24 And Asc(e.KeyChar) <> 22 And Asc(e.KeyChar) <> 3 Then MessageBox.Show("Carácter Invalido, Solo esta permitido los siguientes caracteres: 0123456789ABCDEFGHIJKLMNÑOPQRSTUVWXYZ_", "ERROR de escritura", _ MessageBoxButtons.OK, MessageBoxIcon.Exclamation) ' Deshechamos el carácter e.Handled = True End If End Sub Private Function CaracteresNoValidos(Cadena As String, TipoCarctPermitidos As Integer) As Boolean Dim caracteresPermitidos As String Dim Resultado As Boolean = False Dim C As String = "" Dim i As Integer Select Case TipoCarctPermitidos Case 1 caracteresPermitidos = "0123456789 ABCDEFGHIJKLMNÑOPQRSTUVWXYZ#-.,&_@'" & Convert.ToChar(8) Case 2 caracteresPermitidos = "0123456789ABCDEFGHIJKLMNÑOPQRSTUVWXYZ_" & Convert.ToChar(8) Case 3 caracteresPermitidos = "ABCDEFGHIJKLMNÑOPQRSTUVWXYZ '." & Convert.ToChar(8) End Select For i = 1 To Cadena.Length C = Mid(Cadena, i, 1) If (Not (caracteresPermitidos.Contains(C))) Then Resultado = True Exit For End If Next Return Resultado End Function Private Function ReemplazaCaracNoValidos(Cadena As String, TipoCarctPermitidos As Integer) As String Dim caracteresPermitidos As String Dim Auxiliar As String Dim Resultado As String Dim C As String = "" Dim i As Integer Auxiliar = Cadena.Trim Select Case TipoCarctPermitidos Case 1 caracteresPermitidos = "0123456789 ABCDEFGHIJKLMNÑOPQRSTUVWXYZ#-.,&_@'" & Convert.ToChar(8) Case 2 caracteresPermitidos = "0123456789ABCDEFGHIJKLMNÑOPQRSTUVWXYZ_" & Convert.ToChar(8) Case 3 caracteresPermitidos = "ABCDEFGHIJKLMNÑOPQRSTUVWXYZ '." & Convert.ToChar(8) End Select For i = 1 To Cadena.Length C = Mid(Cadena, i, 1) If (Not (caracteresPermitidos.Contains(C))) Then Auxiliar = Replace(Auxiliar, C, "") End If Next Return Auxiliar End Function Private Function VALIDACIONES() As Boolean Dim retval As Boolean = False Dim Mensajes As String = Nothing '--------------------------------- ERRORES -------------------------------- If CboEntidad.Text = "Seleccionar Entidad" Then Mensajes = Mensajes & "Es necesario seleccionar la entidad" & Chr(13) End If 'If TxtFolio.Text = "" Then ' Mensajes = Mensajes & "Hace Falta el Número de Folio" & Chr(13) 'End If If TxtNomEntExt.Text = "" Then Mensajes = Mensajes & "Es necesario capturar el nombre de la entidad extranjera" & Chr(13) End If If CaracteresNoValidos(TxtNomEntExt.Text, 1) = True Then Mensajes = Mensajes & "Caracter invalido en el nombre de la entidad extranjera" & Chr(13) End If If CmbPais.Text = "Seleccionar Pais" Then Mensajes = Mensajes & "Es necesario seleccionar el país de la entidad extranjera" & Chr(13) End If If CmbPais.Text = "Ninguno" Then Mensajes = Mensajes & "Es necesario seleccionar el país de la entidad extranjera" & Chr(13) End If If TxtCargoFuncExtra.Text = "" Then Mensajes = Mensajes & "Es necesario capturar el cargo del funcionario extranjero" & Chr(13) End If If CaracteresNoValidos(TxtCargoFuncExtra.Text, 3) = True Then Mensajes = Mensajes & "Caracter invalido en el cargo del funcionario extranjero" & Chr(13) End If If TxtCargoFuncVaDirigido.Text = "" Then Mensajes = Mensajes & "Es necesario capturar el cargo del funcionario a quien va dirigido" & Chr(13) End If If CaracteresNoValidos(TxtCargoFuncVaDirigido.Text, 3) = True Then Mensajes = Mensajes & "Carácter invalido en el cargo del funcionario a quien va dirigido" & Chr(13) End If If TxtArchivoAnexo.Text = "" Then Mensajes = Mensajes & "Es necesario capturar el nombre del archivo anexo A" & Chr(13) End If If CaracteresNoValidos(TxtArchivoAnexo.Text, 2) = True Then Mensajes = Mensajes & "Caracter invalido en el nombre del archivo anexo A" & Chr(13) End If ' If CboTipoPersona.Text = "Seleccionar Tipo de Persona" Then Mensajes = Mensajes & "Es necesario seleccionar el tipo de persona" & Chr(13) End If 'DGVOperaciones If DGVOperaciones.Rows.Count = 0 Then Mensajes = Mensajes & "Es necesario seleccionar algún cliente dando doble click en la lista clientes" & Chr(13) End If 'DGVDatosReporte If DGVDatosReporte.Rows.Count = 0 Then Mensajes = Mensajes & "Es necesario seleccionar alguna operación dando doble click en la lista operaciones" & Chr(13) End If '--------------------------------------------------- If Mensajes IsNot Nothing Then MsgBox(Mensajes, MsgBoxStyle.Exclamation, "Mensaje") Else retval = True End If Return retval End Function Private Sub dtpFechaRecepcion_ValueChanged(sender As System.Object, e As System.EventArgs) Handles dtpFechaRecepcion.ValueChanged Dim FechaHoy As Date Dim FechaRecepcion As Date FechaHoy = Now FechaRecepcion = dtpFechaRecepcion.Value If FechaRecepcion > FechaHoy Then MsgBox("La fecha de recepción no puede ser mayor a la fecha de hoy", MsgBoxStyle.Critical) Exit Sub End If End Sub Private Sub CboTipoPersona_SelectionChangeCommitted(sender As Object, e As System.EventArgs) Handles CboTipoPersona.SelectionChangeCommitted 'Try ' If CboTipoPersona.Text = "PERSONA MORAL" Then ' LblFeConst.Visible = True ' dtpFechaConstit.Visible = True ' Else ' LblFeConst.Visible = False ' dtpFechaConstit.Visible = False ' End If ' Llenagrid() ' 'DGVClientes.DataSource = Nothing ' DGVOperaciones.DataSource = Nothing ' DGVDatosReporte.Rows.Clear() 'Catch Err As Exception ' MsgBox(Err.Message, MsgBoxStyle.Critical) 'End Try End Sub Private Sub TxtNomEntExt_TextChanged(sender As System.Object, e As System.EventArgs) Handles TxtNomEntExt.TextChanged If CaracteresNoValidos(TxtNomEntExt.Text, 1) = True Then MsgBox("Existen caracteres invalidos, verifique por favor", MsgBoxStyle.Exclamation) TxtNomEntExt.Text = "" End If End Sub Private Sub TxtCargoFuncExtra_TextChanged(sender As System.Object, e As System.EventArgs) Handles TxtCargoFuncExtra.TextChanged If CaracteresNoValidos(TxtCargoFuncExtra.Text, 3) = True Then MsgBox("Existen caracteres invalidos, verifique por favor", MsgBoxStyle.Exclamation) TxtCargoFuncExtra.Text = "" End If End Sub Private Sub TxtCargoFuncVaDirigido_TextChanged(sender As System.Object, e As System.EventArgs) Handles TxtCargoFuncVaDirigido.TextChanged If CaracteresNoValidos(TxtCargoFuncVaDirigido.Text, 3) = True Then MsgBox("Existen caracteres invalidos, verifique por favor", MsgBoxStyle.Exclamation) TxtCargoFuncVaDirigido.Text = "" End If End Sub Private Sub TxtArchivoAnexo_TextChanged(sender As System.Object, e As System.EventArgs) Handles TxtArchivoAnexo.TextChanged If CaracteresNoValidos(TxtArchivoAnexo.Text, 2) = True Then MsgBox("Existen caracteres invalidos, verifique por favor", MsgBoxStyle.Exclamation) TxtArchivoAnexo.Text = "" End If End Sub Private Sub CmdEnviados_Click(sender As System.Object, e As System.EventArgs) Handles CmdEnviados.Click Dim cLScPL As New clsComplejo Dim Respuesta As String Dim Sql As String = "" Try If TxtFolio.Text.Trim = "" Then MsgBox("Seleccione un registro por favor", MsgBoxStyle.Exclamation) Exit Sub End If Respuesta = MsgBox("¿ Desea marcar el registro como enviado ?", MsgBoxStyle.YesNo + MsgBoxStyle.Question) If Respuesta = vbNo Then Exit Sub Sql = "UPDATE IEF_REPORTE_ENT_EXT SET STATUS = 'ENVIADO' WHERE FOLIO = '" & TxtFolio.Text & "' " cLScPL.sbModifica2(Sql) LblReporte.Visible = False MsgBox("El registro se actualizo como enviado", MsgBoxStyle.Exclamation) Catch Err As Exception MsgBox(Err.Message, MsgBoxStyle.Critical) End Try End Sub Private Sub CmdBuscar_Click(sender As System.Object, e As System.EventArgs) Handles CmdBuscar.Click Dim Sql As String = "" Dim DsBusca As New DataSet Dim ClsCom As New clsComplejo 'DGVDatosReporte.Columns.Clear() Sql = "SELECT ANIO,CONSECUTIVO,FOLIO,ENTIDAD_EXTRAN_SOLIC,FECHA_RECEP_SOLIC " & _ "FROM IEF_REPORTE_ENT_EXT WHERE FOLIO = '" & TxtFolioBusca.Text.Trim & "'" DsBusca = ClsCom.fdtDataSet(Sql) DGVBuscaDatos.DataSource = DsBusca.Tables(0) DGVBuscaDatos.Columns("ANIO").Visible = False DGVBuscaDatos.Columns("CONSECUTIVO").Visible = False DGVBuscaDatos.Columns("FOLIO").Width = 80 DGVBuscaDatos.Columns("ENTIDAD_EXTRAN_SOLIC").Width = 300 DGVBuscaDatos.Columns("FECHA_RECEP_SOLIC").Width = 100 End Sub Private Sub DGVBuscaDatos_CellContentClick(sender As System.Object, e As System.Windows.Forms.DataGridViewCellEventArgs) Handles DGVBuscaDatos.CellContentClick End Sub End Class