public BE_VTA_GUIAS TraerRegistro(int n_IdRegistro) { int n_row = 0; BE_VTA_GUIAS entGuias = new BE_VTA_GUIAS(); DataTable dtResult = new DataTable(); DataTable dtDatos = new DataTable(); CD_vta_guias miFun = new CD_vta_guias(); Helper.Comunes.Funciones ofun = new Helper.Comunes.Funciones(); miFun.mysConec = mysConec; entGuias = miFun.TraerRegistro(n_IdRegistro); LstDetalle = miFun.LstDetalle; dtResult = miFun.dtGuiasDoc; dtDatos = miFun.dtGuiasDatos; if (miFun.IntErrorNumber == 0) { for (n_row = 0; n_row <= dtResult.Rows.Count - 1; n_row++) { BE_VTA_GUIASDOC entguidoc = new BE_VTA_GUIASDOC(); entguidoc.n_idgui = Convert.ToInt32(dtResult.Rows[n_row]["n_idgui"]); entguidoc.n_idtipdoc = Convert.ToInt32(dtResult.Rows[n_row]["n_idtipdoc"]); entguidoc.c_numdoc = dtResult.Rows[n_row]["c_numdoc"].ToString(); entguidoc.n_iddoc = Convert.ToInt32(dtResult.Rows[n_row]["n_iddoc"]); LstGuiasDoc.Add(entguidoc); } if (dtDatos.Rows.Count != 0) { e_GuiaDatos = new BE_VTA_GUIASDATOS(); e_GuiaDatos.n_idgui = Convert.ToInt32(ofun.NulosN(dtDatos.Rows[0]["n_idgui"])); e_GuiaDatos.n_idtipdoc = Convert.ToInt32(ofun.NulosN(dtDatos.Rows[0]["n_idtipdoc"])); e_GuiaDatos._c_facnumser = ofun.NulosC(dtDatos.Rows[0]["c_facnumser"]).ToString(); e_GuiaDatos.c_facnumdoc = ofun.NulosC(dtDatos.Rows[0]["c_facnumdoc"]).ToString(); } else { e_GuiaDatos = null; } } else { booOcurrioError = miFun.booOcurrioError; StrErrorMensaje = miFun.StrErrorMensaje; IntErrorNumber = miFun.IntErrorNumber; } return(entGuias); }
private void CmdGen_Click(object sender, EventArgs e) { if (Convert.ToInt32(CboPunPar.SelectedValue) == 0) { MessageBox.Show("¡ No ha especificado el punto de partida de las guias !", "", MessageBoxButtons.OK, MessageBoxIcon.Information, MessageBoxDefaultButton.Button1); return; } BE_VTA_GUIAS eGuiaCab = new BE_VTA_GUIAS(); List <BE_VTA_GUIASDET> lGuiaDet = new List <BE_VTA_GUIASDET>(); List <BE_VTA_GUIASDOC> lstGuiasDoc = new List <BE_VTA_GUIASDOC>(); CN_vta_guias miFunGui = new CN_vta_guias(); DataTable dtItem = new DataTable(); // AQUI CARGAMOS LOS ITEMS DE LOS PEDIDOS objTipDoc.mysConec = mysConec; miFunGui.mysConec = mysConec; objPedCEN.mysConec = mysConec; int n_row = 0; string c_dato = ""; string c_cadin = ""; int n_numdoc = 0; for (n_row = 2; n_row <= FgItems.Rows.Count - 1; n_row++) { if (funFunciones.NulosC(FgItems.GetData(n_row, 9)) == "True") { c_dato = FgItems.GetData(n_row, 1).ToString(); if (funFunciones.NulosC(FgItems.GetData(n_row, 4)) == "") { MessageBox.Show("¡ No ha indicado el punto de venta, para el pedido Nº: " + c_dato + ", vaya a la opcion punto de venta del cliente y asigene este nuevo punto de venta !", "", MessageBoxButtons.OK, MessageBoxIcon.Information, MessageBoxDefaultButton.Button1); return; } if (funFunciones.NulosC(FgItems.GetData(n_row, 5)) == "") { MessageBox.Show("¡ No ha indicado el punto de entrega, para el pedido Nº: " + c_dato + " !", "", MessageBoxButtons.OK, MessageBoxIcon.Information, MessageBoxDefaultButton.Button1); return; } if (funFunciones.NulosC(FgItems.GetData(n_row, 6)) == "") { MessageBox.Show("¡ No ha indicado el nombre del chofer, para el pedido Nº: " + c_dato + " !", "", MessageBoxButtons.OK, MessageBoxIcon.Information, MessageBoxDefaultButton.Button1); return; } if (funFunciones.NulosC(FgItems.GetData(n_row, 7)) == "") { MessageBox.Show("¡ No ha indicado la unidad de transporte, para el pedido Nº: " + c_dato + " !", "", MessageBoxButtons.OK, MessageBoxIcon.Information, MessageBoxDefaultButton.Button1); return; } } } // PREPARAMOS LA CADNA IN PARA TRAER LOS ITEMS DE LOS PEDIDOS c_cadin = ""; n_numdoc = 0; for (n_row = 2; n_row <= FgItems.Rows.Count - 1; n_row++) { if (funFunciones.NulosC(FgItems.GetData(n_row, 9)) == "True") { n_numdoc = n_numdoc + 1; if (n_numdoc == 1) { c_cadin = c_cadin + FgItems.GetData(n_row, 10).ToString(); } else { c_cadin = c_cadin + ", " + FgItems.GetData(n_row, 10).ToString(); } } } objPedCEN.mysConec = mysConec; objPedCEN.TraerDetallePedidos(STU_SISTEMA.EMPRESAID, c_cadin); dtItem = objPedCEN.dtLista; for (n_row = 0; n_row <= dtItem.Rows.Count - 1; n_row++) { if (Convert.ToInt32(funFunciones.NulosN(dtItem.Rows[n_row]["n_iditem"])) == 0) { MessageBox.Show("¡ El item con el codigo Nº " + dtItem.Rows[n_row]["c_coditecen"].ToString() + " del pedido Nº: " + c_dato + " no esta vinculado a un item del sistema, vaya a la opcion maestro productos CEN en el menu ventas y asignele un item del sistema !", "", MessageBoxButtons.OK, MessageBoxIcon.Information, MessageBoxDefaultButton.Button1); return; } } int n_idcliente = 0; int n_idpunvencli = 0; string c_despunlle = ""; string c_numdoc = ""; int n_idchofer = 0; int n_idemptra = 0; int n_idvehiculo = 0; string c_punpar = ""; int n_idpedido = 0; string c_numpedido = ""; string c_fchPed = ""; string c_FchEnt = ""; int n_idpunpar = 0; int n_idpunlle = 0; for (n_row = 2; n_row <= FgItems.Rows.Count - 1; n_row++) { if (funFunciones.NulosC(FgItems.GetData(n_row, 9)) == "True") { n_idcliente = Convert.ToInt32(FgItems.GetData(n_row, 11).ToString()); c_dato = FgItems.GetData(n_row, 4).ToString(); c_dato = funDatos.DataTableBuscar(dtPunVen, "c_des", "n_id", c_dato, "C").ToString(); n_idpunvencli = Convert.ToInt32(c_dato); c_numdoc = objTipDoc.UltimoNumero(STU_SISTEMA.EMPRESAID, 10, "0001"); c_dato = FgItems.GetData(n_row, 7).ToString(); c_dato = funDatos.DataTableBuscar(dtCho, "c_nomcho", "n_id", c_dato, "C").ToString(); n_idchofer = Convert.ToInt32(c_dato); c_dato = FgItems.GetData(n_row, 6).ToString(); c_dato = funDatos.DataTableBuscar(dtEmpTra, "c_nombre", "n_id", c_dato, "C").ToString(); n_idemptra = Convert.ToInt32(c_dato); c_dato = FgItems.GetData(n_row, 8).ToString(); c_dato = funDatos.DataTableBuscar(dtVeh, "c_numpla", "n_id", c_dato, "C").ToString(); n_idvehiculo = Convert.ToInt32(c_dato); c_dato = FgItems.GetData(n_row, 10).ToString(); n_idpedido = Convert.ToInt32(c_dato); c_numpedido = FgItems.GetData(n_row, 1).ToString(); c_fchPed = FgItems.GetData(n_row, 2).ToString(); c_FchEnt = FgItems.GetData(n_row, 3).ToString(); n_idpunpar = Convert.ToInt32(CboPunPar.SelectedValue); c_dato = funDatos.DataTableBuscar(dtPunPar, "n_id", "c_dir", n_idpunpar.ToString(), "N").ToString(); c_punpar = c_dato; c_dato = FgItems.GetData(n_row, 5).ToString(); c_dato = funDatos.DataTableBuscar(dtPunVen, "c_des", "n_id", c_dato, "C").ToString(); n_idpunlle = Convert.ToInt32(c_dato); c_dato = funDatos.DataTableBuscar(dtPunVen, "n_id", "c_dir", n_idpunlle.ToString(), "C").ToString(); c_despunlle = c_dato; eGuiaCab.n_idemp = STU_SISTEMA.EMPRESAID; eGuiaCab.n_id = 0; eGuiaCab.n_idtipdoc = 10; eGuiaCab.n_idcli = n_idcliente; eGuiaCab.n_idpunvencli = n_idpunvencli; eGuiaCab.c_dirpunlle = c_despunlle; eGuiaCab.c_numser = "0001"; eGuiaCab.c_numdoc = c_numdoc; eGuiaCab.d_fchdoc = DateTime.Now; eGuiaCab.n_idmottra = 1; eGuiaCab.n_idcho = n_idchofer; eGuiaCab.n_idemptra = n_idemptra; eGuiaCab.n_idvehtra = n_idvehiculo; eGuiaCab.c_dirpunpar = c_punpar; eGuiaCab.n_idtipdocref = 79; // LE INDICAMOS QUE EL TIPO DE DOCUMENTO DE REFERENCIA EL EL PEDIDO CEN DE CLIENTE eGuiaCab.n_iddocref = n_idpedido; eGuiaCab.c_numdocref = c_numpedido; eGuiaCab.d_fchpeddocref = Convert.ToDateTime(c_fchPed); eGuiaCab.d_fchentdocref = Convert.ToDateTime(c_FchEnt); eGuiaCab.n_anulado = 1; eGuiaCab.c_numordcom = c_numpedido; eGuiaCab.n_tipgui = 3; eGuiaCab.n_idpunpar = n_idpunpar; eGuiaCab.n_idpunlle = n_idpunlle; eGuiaCab.n_idmes = STU_SISTEMA.MESTRABAJO; eGuiaCab.n_idano = STU_SISTEMA.ANOTRABAJO; eGuiaCab.n_chkalmsal = 1; eGuiaCab.n_chkalming = 1; //eGuiaCab.n_iddocven = 0; eGuiaCab.n_tipori = 1; // AGREGAMOS EL DETALLE DE LA GUIA int n_fil = 0; lGuiaDet.Clear(); for (n_fil = 0; n_fil <= dtItem.Rows.Count - 1; n_fil++) { if (Convert.ToInt32(dtItem.Rows[n_fil]["n_idped"]) == n_idpedido) { BE_VTA_GUIASDET eDetalle = new BE_VTA_GUIASDET(); eDetalle.n_idgui = 0; eDetalle.n_idite = Convert.ToInt32(dtItem.Rows[n_fil]["n_iditem"]); eDetalle.n_idunimed = Convert.ToInt32(dtItem.Rows[n_fil]["n_idunimed"]); eDetalle.n_canpro = Convert.ToDouble(dtItem.Rows[n_fil]["n_canpro"]); eDetalle.d_fchpro = null; eDetalle.d_fchven = null; eDetalle.c_numlot = ""; eDetalle.n_idtipexi = 2; eDetalle.n_iddocref = 0; lGuiaDet.Add(eDetalle); } } // AGREGAMOS LOS DOCUMENTOS ADJUNTOS DE LA GUIA n_fil = 0; lstGuiasDoc.Clear(); BE_VTA_GUIASDOC e_GuiaDoc = new BE_VTA_GUIASDOC(); BE_VTA_GUIASDATOS e_GuiaDatos = new BE_VTA_GUIASDATOS(); e_GuiaDoc.n_idgui = 0; e_GuiaDoc.n_idtipdoc = 79; //e_GuiaDoc.c_numdoc = eGuiaCab.c_numser + "-" + eGuiaCab.c_numdoc; e_GuiaDoc.c_numdoc = ""; e_GuiaDoc.n_iddoc = n_idpedido; lstGuiasDoc.Add(e_GuiaDoc); miFunGui.LstDetalle = lGuiaDet; if (miFunGui.Insertar(eGuiaCab, lstGuiasDoc, e_GuiaDatos) == true) { c_numpedido = FgItems.GetData(n_row, 1).ToString(); // ACTUALIZAMOS EL ID DE LA GUIA DE DESPACHO EN EL PEDIDO CEN if (objPedCEN.ActualizarGuiaDespacho(n_idpedido, Convert.ToInt32(miFunGui.n_IdGenerado), 2) == false) { MessageBox.Show("¡ No se pudo actualizar la guia de desapacho para el pedido Nº " + c_numpedido + " !", "", MessageBoxButtons.OK, MessageBoxIcon.Information, MessageBoxDefaultButton.Button1); } } } } MessageBox.Show("¡ Los pedidos se despacharon con exito !", "", MessageBoxButtons.OK, MessageBoxIcon.Information, MessageBoxDefaultButton.Button1); MostrarPedidos(); }