public static RNOrdenRemision GenerarRemision(string cvedoc, RNOrdenRecepcion recpecion, int folio, int numEmpresa, List <RNPartidasRecepcion> pRecpcion, List <RNRecepcion.Lotes> lotes, out List <RNPartidasRemision> partidas) { partidas = new List <RNPartidasRemision>(); RNOrdenRemision remision = new RNOrdenRemision(); bool bpartidas; if (InsertarRemision(cvedoc, recpecion, folio, numEmpresa, pRecpcion, lotes, out bpartidas) && bpartidas) { remision = ObtenerRemision(cvedoc, numEmpresa); partidas = RNPartidasRemision.ObtenerPartidasRemision(cvedoc, numEmpresa); } return(remision); }
public static bool InsertarRemision(string cvedoc, RNOrdenRecepcion recpecion, int folio, int numEmpresa, List <RNPartidasRecepcion> pRecpcion, List <RNRecepcion.Lotes> lotes, out bool bpartidas) { bpartidas = false; try { RNConexion conexion = new RNConexion(numEmpresa); //obtenerelclienterecepecion RNCliente cliente = RNLbInventory.ObtenerClienteRemicion(numEmpresa); int cve_bita = RNLbInventory.ObtenerBita(cliente.CLAVE, cvedoc, " 3", recpecion.IMPORTE, numEmpresa); conexion.baseDatos.AbrirConexion(); conexion.baseDatos.LimpiarParametros(); conexion.baseDatos.AgregarParametro("@TIP_DOC", "R"); conexion.baseDatos.AgregarParametro("@CVE_DOC", cvedoc); conexion.baseDatos.AgregarParametro("@CVE_CLPV", cliente.CLAVE); conexion.baseDatos.AgregarParametro("@STATUS", "E"); conexion.baseDatos.AgregarParametro("@DAT_MOSTR", 0); conexion.baseDatos.AgregarParametro("@CVE_VEND", ""); conexion.baseDatos.AgregarParametro("@CVE_PEDI", ""); conexion.baseDatos.AgregarParametro("@FECHA_DOC", DateTime.Today); conexion.baseDatos.AgregarParametro("@FECHA_ENT", DateTime.Today); conexion.baseDatos.AgregarParametro("@FECHA_VEN", DateTime.Today); conexion.baseDatos.AgregarParametro("@CAN_TOT", recpecion.CAN_TOT); conexion.baseDatos.AgregarParametro("@IMP_TOT1", 0.00M); conexion.baseDatos.AgregarParametro("@IMP_TOT2", 0.00M); conexion.baseDatos.AgregarParametro("@IMP_TOT3", 0.00M); conexion.baseDatos.AgregarParametro("@IMP_TOT4", 0.00M); conexion.baseDatos.AgregarParametro("@DES_TOT", 0.00M); conexion.baseDatos.AgregarParametro("@DES_FIN", 0.00M); conexion.baseDatos.AgregarParametro("@COM_TOT", 0); conexion.baseDatos.AgregarParametro("@CONDICION", ""); conexion.baseDatos.AgregarParametro("@CVE_OBS", 0); conexion.baseDatos.AgregarParametro("@NUM_ALMA", recpecion.NUM_ALMA); conexion.baseDatos.AgregarParametro("@ACT_CXC", "S"); conexion.baseDatos.AgregarParametro("@ACT_COI", "N"); conexion.baseDatos.AgregarParametro("@ENLAZADO", "O"); conexion.baseDatos.AgregarParametro("@TIP_DOC_E", "O"); conexion.baseDatos.AgregarParametro("@NUM_MONED", recpecion.NUM_MONED); conexion.baseDatos.AgregarParametro("@TIPCAMB", recpecion.TIPCAMB); conexion.baseDatos.AgregarParametro("@NUM_PAGOS", recpecion.NUM_PAGOS); conexion.baseDatos.AgregarParametro("@FECHAELAB", DateTime.Today); conexion.baseDatos.AgregarParametro("@PRIMERPAGO", 0.00); conexion.baseDatos.AgregarParametro("@RFC", cliente.RFC); conexion.baseDatos.AgregarParametro("@CTLPOL", 0); conexion.baseDatos.AgregarParametro("@ESCFD", "N"); conexion.baseDatos.AgregarParametro("@AUTORIZA", 0); conexion.baseDatos.AgregarParametro("@SERIE", ""); conexion.baseDatos.AgregarParametro("@FOLIO", folio); conexion.baseDatos.AgregarParametro("@AUTOANIO", ""); conexion.baseDatos.AgregarParametro("@DAT_ENVIO", 0); conexion.baseDatos.AgregarParametro("@CONTADO", "N"); conexion.baseDatos.AgregarParametro("@CVE_BITA", cve_bita); conexion.baseDatos.AgregarParametro("@BLOQ", "N"); conexion.baseDatos.AgregarParametro("@FORMAENVIO", ""); conexion.baseDatos.AgregarParametro("@DES_FIN_PORC", 0.000); conexion.baseDatos.AgregarParametro("@DES_TOT_PORC", 0.000); conexion.baseDatos.AgregarParametro("@IMPORTE", 0.00M); conexion.baseDatos.AgregarParametro("@COM_TOT_PORC", 0.00); conexion.baseDatos.AgregarParametro("@METODODEPAGO", null); conexion.baseDatos.AgregarParametro("@NUMCTAPAGO", null); conexion.baseDatos.AgregarParametro("@TIP_DOC_ANT", ""); conexion.baseDatos.AgregarParametro("@DOC_ANT", ""); conexion.baseDatos.AgregarParametro("@TIP_DOC_SIG", null); conexion.baseDatos.AgregarParametro("@DOC_SIG", null); conexion.baseDatos.AgregarParametro("@UUID", null);//obtener el uuid conexion.baseDatos.AgregarParametro("@VERSION_SINC", DateTime.Today); conexion.baseDatos.AgregarParametro("@FORMADEPAGOSAT", null); conexion.baseDatos.AgregarParametro("@USO_CFDI", null); var result = conexion.baseDatos.EjecutarSinConsulta(" INSERT INTO FACTR{0} (TIP_DOC,CVE_DOC,CVE_CLPV,STATUS,DAT_MOSTR,CVE_VEND,CVE_PEDI,FECHA_DOC,FECHA_ENT,FECHA_VEN,CAN_TOT,IMP_TOT1,IMP_TOT2,IMP_TOT3,IMP_TOT4,DES_TOT,DES_FIN,COM_TOT,CONDICION,CVE_OBS,NUM_ALMA,ACT_CXC,ACT_COI,ENLAZADO,TIP_DOC_E,NUM_MONED,TIPCAMB,NUM_PAGOS,FECHAELAB,PRIMERPAGO,RFC,CTLPOL,ESCFD,AUTORIZA,SERIE,FOLIO,AUTOANIO,DAT_ENVIO,CONTADO,CVE_BITA,BLOQ,FORMAENVIO,DES_FIN_PORC,DES_TOT_PORC,IMPORTE,COM_TOT_PORC,METODODEPAGO,NUMCTAPAGO,TIP_DOC_ANT,DOC_ANT,TIP_DOC_SIG,DOC_SIG,UUID,VERSION_SINC,FORMADEPAGOSAT,USO_CFDI) " + "VALUES (@TIP_DOC,@CVE_DOC,@CVE_CLPV,@STATUS,@DAT_MOSTR,@CVE_VEND,@CVE_PEDI,@FECHA_DOC,@FECHA_ENT,@FECHA_VEN,@CAN_TOT,@IMP_TOT1,@IMP_TOT2,@IMP_TOT3,@IMP_TOT4,@DES_TOT,@DES_FIN,@COM_TOT,@CONDICION,@CVE_OBS,@NUM_ALMA,@ACT_CXC,@ACT_COI,@ENLAZADO,@TIP_DOC_E,@NUM_MONED,@TIPCAMB,@NUM_PAGOS,@FECHAELAB,@PRIMERPAGO,@RFC,@CTLPOL,@ESCFD,@AUTORIZA,@SERIE,@FOLIO,@AUTOANIO,@DAT_ENVIO,@CONTADO,@CVE_BITA,@BLOQ,@FORMAENVIO,@DES_FIN_PORC,@DES_TOT_PORC,@IMPORTE,@COM_TOT_PORC,@METODODEPAGO,@NUMCTAPAGO,@TIP_DOC_ANT,@DOC_ANT,@TIP_DOC_SIG,@DOC_SIG,@UUID,@VERSION_SINC,@FORMADEPAGOSAT,@USO_CFDI)", CommandType.Text) > 0; // agregar los campos libres conexion.baseDatos.LimpiarParametros(); conexion.baseDatos.AgregarParametro("@CVE_DOC", cvedoc); var resultcl = conexion.baseDatos.EjecutarSinConsulta(" insert into FACTR_CLIB{0}(CLAVE_DOC) values(@CVE_DOC); ", CommandType.Text) > 0; //agregar las partidas decimal cant_total, imp1, imp2, imp3, imp4, total, desc, descind, desfin; bpartidas = RNPartidasRemision.GenerarPartidas(ObtenerRemision(cvedoc, numEmpresa), cvedoc, folio, numEmpresa, pRecpcion, lotes, out cant_total, out imp1, out imp2, out imp3, out imp4, out total, out desc, out descind, out desfin); conexion.baseDatos.LimpiarParametros(); conexion.baseDatos.AgregarParametro("@IMP_TOT1", imp1); conexion.baseDatos.AgregarParametro("@IMP_TOT2", imp2); conexion.baseDatos.AgregarParametro("@IMP_TOT3", imp3); conexion.baseDatos.AgregarParametro("@IMP_TOT4", imp4); conexion.baseDatos.AgregarParametro("@IMPORTE", total); conexion.baseDatos.AgregarParametro("@CVE_DOC", cvedoc); conexion.baseDatos.AgregarParametro("@CAN_TOT", cant_total); result = conexion.baseDatos.EjecutarSinConsulta("update FACTR{0} set IMP_TOT1=@IMP_TOT1 ,IMP_TOT2=@IMP_TOT2,IMP_TOT3=@IMP_TOT3,IMP_TOT4=@IMP_TOT4,IMPORTE=@IMPORTE, CAN_TOT=@CAN_TOT " + "where CVE_DOC = @CVE_DOC", CommandType.Text) > 0; return(result); } catch (Exception e) { return(false); } }