/// <summary> /// Valida importe total, subtotal iva y moneda. /// </summary> /// <param name="listaDiferentesInstancias">endpoin, usuario y contraseña</param> /// <param name="fechafac">Fecha de factura</param> /// <param name="año">Año de documento</param> /// <param name="importe">Importe total</param> /// <param name="importeIVA">Importe de IVA</param> /// <param name="importeSub">Importe sin IVA</param> /// <param name="moneda">Tipo de Moneda</param> /// <param name="numerodoc">Numero de documento</param> /// <returns></returns> /// public string validardatosMir7(List <string[]> listaDiferentesInstancias, string fechafac, string año, decimal importe, decimal importeIVA, decimal importeSub, string moneda, string numerodoc, string val_fec, string val_impt, string val_imps, string val_iva, string val_mon, decimal importedesc) { PEntidades.SrvSAPUProv.ZWS_UPROVEEDORESClient srv = new PPersistencia.WebServices().getZWS_UPROVEEDORESInstanceNew( listaDiferentesInstancias[0][1].ToString().Trim(), listaDiferentesInstancias[0][4].Split(new Char[] { ',' }) ); PEntidades.SrvSAPUProv.Z_UFAC_VERIFMIR7 verimir7 = new PEntidades.SrvSAPUProv.Z_UFAC_VERIFMIR7(); srv.Open(); srv.InnerChannel.OperationTimeout = new TimeSpan(0, 10, 0); verimir7.FECHA_FACT = fechafac; verimir7.FISYEAR = año; verimir7.IMPORTE = importe; verimir7.IMPORTESpecified = true; verimir7.IMPORTE_IVA = importeIVA; verimir7.IMPORTE_IVASpecified = true; verimir7.IMPORTE_SUB = importeSub; verimir7.IMPORTE_SUBSpecified = true; verimir7.IMP_DESCUEN = importedesc; verimir7.IMP_DESCUENSpecified = true; verimir7.MONEDA = moneda; verimir7.NUM_DOC = numerodoc; verimir7.VAL_FECH_FACT = val_fec; verimir7.VAL_IMPORTE = val_impt; verimir7.VAL_IMP_IVA = val_iva; verimir7.VAL_IMP_SUB = val_imps; verimir7.VAL_MONEDA = val_mon; PEntidades.SrvSAPUProv.Z_UFAC_VERIFMIR7Response resul; resul = srv.Z_UFAC_VERIFMIR7(verimir7); srv.Close(); return(resul.MENSAJE); }
public ZERES_USUARIOS[] ResProvedores(string endpoint, string[] userPass, string extranjero) { PEntidades.SrvSAPUProveedores.ZWS_UPROVEEDORESClient srv = new PPersistencia.WebServices().getZWS_UPROVEEDORESInstanceNew( endpoint, userPass ); srv.Open(); ZERES_USUARIOS[] resul = null; resul = srv.Z_URES_PROVEEDORES(userPass[2], extranjero); srv.Close(); return(resul); }
public static string RFCPorSociedad(string endpoint, string[] userPass, string sociedad) { PEntidades.SrvSAPUProveedores.ZWS_UPROVEEDORESClient srv = new PPersistencia.WebServices().getZWS_UPROVEEDORESInstanceNew( endpoint, userPass ); srv.Open(); string resul = null; resul = srv.Z_URFC(sociedad); srv.Close(); return(resul); }
public static string RFCPorSociedad(string endpoint, string[] userPass, string sociedad) { PEntidades.SrvSAPUProv.ZWS_UPROVEEDORESClient srv = new PPersistencia.WebServices().getZWS_UPROVEEDORESInstanceNew( endpoint, userPass ); srv.Open(); PEntidades.SrvSAPUProv.Z_URFCResponse resul = null; PEntidades.SrvSAPUProv.Z_URFC rfc = new PEntidades.SrvSAPUProv.Z_URFC(); rfc.SOCIEDAD = sociedad; resul = srv.Z_URFC(rfc); srv.Close(); return(resul.RFC); }
public ZELISTA_PROVE[] ResProvedoresInactivos(string endpoint, string[] userPass) { PEntidades.SrvSAPUProv.ZWS_UPROVEEDORESClient srv = new PPersistencia.WebServices().getZWS_UPROVEEDORESInstanceNew( endpoint, userPass ); srv.Open(); Z_UFAC_LISTPAResponse resul = null; Z_UFAC_LISTPA listpa = new Z_UFAC_LISTPA(); resul = srv.Z_UFAC_LISTPA(listpa); //resul = srv.Z_URES_PROVEEDORES(userPass[2], extranjero); srv.Close(); return(resul.IT_PROVACTIVOS); }
/// <summary> /// Valida importe total, subtotal iva y moneda. /// </summary> /// <param name="listaDiferentesInstancias">endpoin, usuario y contraseña</param> /// <param name="fechafac">Fecha de factura</param> /// <param name="año">Año de documento</param> /// <param name="importe">Importe total</param> /// <param name="importeIVA">Importe de IVA</param> /// <param name="importeSub">Importe sin IVA</param> /// <param name="moneda">Tipo de Moneda</param> /// <param name="numerodoc">Numero de documento</param> /// <returns></returns> public string validardatosMir7(List <string[]> listaDiferentesInstancias, string fechafac, string año, decimal importe, decimal importeIVA, decimal importeSub, string moneda, string numerodoc, string val_fec, string val_impt, string val_imps, string val_iva, string val_mon, decimal importedesc) { PEntidades.SrvSAPUProveedores.ZWS_UPROVEEDORESClient srv = new PPersistencia.WebServices().getZWS_UPROVEEDORESInstanceNew( listaDiferentesInstancias[0][1].ToString().Trim(), listaDiferentesInstancias[0][4].Split(new Char[] { ',' }) ); srv.Open(); srv.InnerChannel.OperationTimeout = new TimeSpan(0, 10, 0); string resul = null; resul = srv.Z_UFAC_VERIFMIR7(fechafac, año, importe, importeIVA, importeSub, importedesc, moneda, numerodoc, val_fec, val_impt, val_iva, val_imps, val_mon); srv.Close(); return(resul); }
public ZERES_SOCIEDADES[] ResSociedades(string endpoint, string[] userPass, string extranjero) { PEntidades.SrvSAPUProv.ZWS_UPROVEEDORESClient srv = new PPersistencia.WebServices().getZWS_UPROVEEDORESInstanceNew( endpoint, userPass ); srv.Open(); Z_URES_SOCIEDADESResponse resul = null; Z_URES_SOCIEDADES sociedad = new Z_URES_SOCIEDADES(); sociedad.EXTRANJERO = extranjero; sociedad.BUKRS = userPass[2]; resul = srv.Z_URES_SOCIEDADES(sociedad); srv.Close(); return(resul.ZTRES_SOCIEDADES); }
public ZERES_USUARIOS[] ResProvedores(string endpoint, string[] userPass, string extranjero) { PEntidades.SrvSAPUProv.ZWS_UPROVEEDORESClient srv = new PPersistencia.WebServices().getZWS_UPROVEEDORESInstanceNew( endpoint, userPass ); srv.Open(); Z_URES_PROVEEDORES proveedores = new Z_URES_PROVEEDORES(); proveedores.BUKRS = userPass[2]; proveedores.EXTRANJERO = extranjero; Z_URES_PROVEEDORESResponse resul = null; resul = srv.Z_URES_PROVEEDORES(proveedores); srv.Close(); return(resul.ZTRES_USUARIOS); }
public List <PEntidades.Proveedor> getDatoMaestro(PEntidades.SrvSAPUProv.ZELIFNR_PROV[] lifnrs, string endpointAddres, string[] userPass) { PEntidades.SrvSAPUProv.ZWS_UPROVEEDORESClient srv = new PPersistencia.WebServices().getZWS_UPROVEEDORESInstanceNew( endpointAddres, userPass ); srv.Open(); srv.InnerChannel.OperationTimeout = new TimeSpan(0, 10, 0); PEntidades.SrvSAPUProv.Z_UDATA_MASTER master = new PEntidades.SrvSAPUProv.Z_UDATA_MASTER(); master.PROVEEDOR = lifnrs; var result = srv.Z_UDATA_MASTER(master); List <PEntidades.Proveedor> listaDatosMaestrosPorsoc = new List <PEntidades.Proveedor>(); //var result = srv.Z_DATA_MASTER(lifnrs); for (int i = 0; i < result.DATOS_MAESTROS.Length; i++) { var resul = result.DATOS_MAESTROS[i];//Devuelve una tabla, entonces se accede a la fila 0. PEntidades.Proveedor tmpProveedor = new PEntidades.Proveedor(); tmpProveedor.Liftnr = resul.LIFNR; tmpProveedor.TITLE_MEDI = resul.TITLE_MEDI; tmpProveedor.NAME1 = resul.NAME1; tmpProveedor.NAME2 = resul.NAME2; tmpProveedor.SORT1 = resul.SORT1; tmpProveedor.STREET = resul.STREET; tmpProveedor.HOUSE_NUM1 = resul.HOUSE_NUM1.ToString();// int tmpProveedor.POST_CODE1 = resul.POST_CODE1; tmpProveedor.ADDR1_DATA = resul.ADDR1_DATA; tmpProveedor.COUNTRY = resul.COUNTRY; tmpProveedor.NAMECOUNTRY = resul.NAMECOUNTRY; tmpProveedor.REGION = resul.REGION; tmpProveedor.NAMEREGION = resul.NAMEREGION; tmpProveedor.PO_BOX = resul.PO_BOX; tmpProveedor.POST_CODE2 = resul.POST_CODE2; tmpProveedor.LANGU = resul.LANGU; tmpProveedor.TEL_NUMBER = resul.TEL_NUMBER; tmpProveedor.FAX_NUMBER = resul.FAX_NUMBER; tmpProveedor.EXTENSION1 = resul.EXTENSION1; tmpProveedor.EXTENSION2 = resul.EXTENSION2; srv.Close(); listaDatosMaestrosPorsoc.Add(tmpProveedor); } return(listaDatosMaestrosPorsoc); }
public List <PEntidades.PAbiertasYPago> getPagos(string date1, string date2, List <string[]> listaDiferentesInstancias) { List <PEntidades.PAbiertasYPago> list = new List <PEntidades.PAbiertasYPago>(); PEntidades.SrvSAPUProveedores.ZWS_UPROVEEDORESClient srv; status = new string[listaDiferentesInstancias.Count]; for (int j = 0; j < listaDiferentesInstancias.Count; j++) // listaDiferentesInstancias contiene idInstacia, endpoint, y las sociedades separadas por "," ; { try { srv = new PPersistencia.WebServices().getZWS_UPROVEEDORESInstanceNew( listaDiferentesInstancias[j][1].ToString().Trim(), listaDiferentesInstancias[j][4].Split(new Char[] { ',' }) ); srv.Open(); srv.InnerChannel.OperationTimeout = new TimeSpan(0, 10, 0); PEntidades.SrvSAPUProveedores.ZEPLANT_PROV[] objetoSoc; PEntidades.SrvSAPUProveedores.ZELIFNR_PROV[] objLifnr; string[] splitSoc = listaDiferentesInstancias[j][2].Split(new Char[] { ',' }); string[] splitLifnr = listaDiferentesInstancias[j][3].Split(new Char[] { ',' }); objetoSoc = PEntidades.Utiles.objetoSociedad(splitSoc); objLifnr = PEntidades.Utiles.objetoLifnr(splitLifnr); var resultado = srv.Z_UPAGOS(Gen.Util.CS.Gen.convertirFecha_SAP(date1), Gen.Util.CS.Gen.convertirFecha_SAP(date2), objLifnr, objetoSoc); int cantidad = resultado.Count(); PEntidades.PAbiertasYPago objPabYPag; for (int i = 0; i < cantidad; i++) { objPabYPag = new PEntidades.PAbiertasYPago(); string AUGBL = resultado.ElementAt(i).AUGBL.ToString(); string ZUONR = resultado.ElementAt(i).ZUONR.ToString(); string BELNR = resultado.ElementAt(i).BELNR.ToString(); string BLART = resultado.ElementAt(i).BLART.ToString(); string BLDAT = resultado.ElementAt(i).BLDAT.ToString(); float DMSHB = float.Parse(resultado.ElementAt(i).DMSHB.ToString()); string HWAER = resultado.ElementAt(i).HWAER.ToString(); string XBLNR = resultado.ElementAt(i).XBLNR.ToString(); string KONTO = resultado.ElementAt(i).KONTO.ToString(); string NAME1 = resultado.ElementAt(i).NAME1.ToString(); string SGTXT = resultado.ElementAt(i).SGTXT.ToString(); string EBELN = resultado.ElementAt(i).EBELN.ToString(); objPabYPag.AUGBL1 = AUGBL; objPabYPag.ZUONR1 = ZUONR; objPabYPag.BELNR1 = BELNR; objPabYPag.BLART1 = BLART; objPabYPag.BLDAT1 = BLDAT; objPabYPag.DMSHB1 = DMSHB; objPabYPag.HWAER1 = HWAER; objPabYPag.XBLNR = XBLNR; objPabYPag.KONTO = KONTO; objPabYPag.NAME1 = NAME1; objPabYPag.SGTXT = SGTXT; objPabYPag.EBELN = EBELN; objPabYPag.indice = i; list.Add(objPabYPag); } srv.Close(); } catch (Exception) { status[j] = "Error al cargar en la instancia: " + listaDiferentesInstancias[j][6]; } } return(list); }
//MGV - funcion llamando SAPConn public List <PEntidades.PAbiertasYPago> getfacturasAbiertasConn(string fecha1, string fecha2, List <string[]> listaDiferentesInstancias) { List <PEntidades.PAbiertasYPago> list = new List <PEntidades.PAbiertasYPago>(); PEntidades.SrvSAPUProv.Z_UPARTIDAS_ABIERTAS abiertas = new PEntidades.SrvSAPUProv.Z_UPARTIDAS_ABIERTAS(); PEntidades.SrvSAPUProv.ZWS_UPROVEEDORESClient srv; status = new string[listaDiferentesInstancias.Count]; for (int j = 0; j < listaDiferentesInstancias.Count; j++) // listaDiferentesInstancias contiene idInstacia, endpoint, y las sociedades separadas por "," ; { try { srv = new PPersistencia.WebServices().getZWS_UPROVEEDORESInstanceNew( listaDiferentesInstancias[j][1].ToString().Trim(), listaDiferentesInstancias[j][4].Split(new Char[] { ',' }) ); srv.Open(); srv.InnerChannel.OperationTimeout = new TimeSpan(0, 10, 0); //PEntidades.SrvSAPUProv.ZEPLANT_PROV[] objetoSoc; //PEntidades.SrvSAPUProv.ZELIFNR_PROV[] objLifnr; //string[] splitSoc = listaDiferentesInstancias[j][2].Split(new Char[] { ',' }); //string[] splitLifnr = listaDiferentesInstancias[j][3].Split(new Char[] { ',' }); //abiertas.PROVEEDOR = PEntidades.Utiles.objetoLifnr(splitLifnr); //abiertas.SOCIEDAD = PEntidades.Utiles.objetoSociedad(splitSoc); PPersistencia.SAPConn psc = new PPersistencia.SAPConn(); //cambio llamado hacia SAP List <ParamsCallSAP> listPA = new List <ParamsCallSAP>(); ParamsCallSAP pr = new ParamsCallSAP(); pr = new ParamsCallSAP(); //abiertas.DATE1 = Gen.Util.CS.Gen.convertirFecha_SAP(fecha1); pr.NameVar = "DATE1"; pr.ValVar = Gen.Util.CS.Gen.convertirFecha_SAP(fecha1); pr.TipVar = "S"; listPA.Add(pr); pr = new ParamsCallSAP(); // abiertas.DATE2 = Gen.Util.CS.Gen.convertirFecha_SAP(fecha2); pr.NameVar = "DATE2"; pr.ValVar = Gen.Util.CS.Gen.convertirFecha_SAP(fecha2); pr.TipVar = "S"; listPA.Add(pr); List <TablasCallSAP> listT = new List <TablasCallSAP>(); TablasCallSAP tr = new TablasCallSAP(); List <ParamsCallSAP> listTb = new List <ParamsCallSAP>(); string[] splitLifnr = listaDiferentesInstancias[j][3].Split(new Char[] { ',' }); for (int i = 1; i <= splitLifnr.Length; i++) { pr = new ParamsCallSAP(); pr.NameVar = "LIFNR"; pr.ValVar = splitLifnr[i - 1].ToString().Trim(); pr.TipVar = "S"; listTb.Add(pr); } tr.TablaVar = "PROVEEDOR_TB"; tr.CamposVar = listTb; listT.Add(tr); string[] splitSoc = listaDiferentesInstancias[j][2].Split(new Char[] { ',' }); List <TablasCallSAP> listTC = new List <TablasCallSAP>(); TablasCallSAP trC = new TablasCallSAP(); List <ParamsCallSAP> listTc = new List <ParamsCallSAP>(); for (int i = 1; i <= splitSoc.Length; i++) { pr = new ParamsCallSAP(); pr.NameVar = "WERKS"; pr.ValVar = splitSoc[i - 1].ToString().Trim(); pr.TipVar = "S"; listTc.Add(pr); } trC.TablaVar = "SOCIEDAD_TB"; trC.CamposVar = listTc; listT.Add(trC); IRfcFunction rescon = psc.conSAP("Z_DPARTIDAS_ABIERTAS", listPA, listT); //var resultado = srv.Z_UPARTIDAS_ABIERTAS(abiertas); //int cantidad = resultado.PARTIDAS_ABIERTAS.Length; PEntidades.PAbiertasYPago objPabYPag; IRfcTable tb = rescon.GetTable(0); for (int o = 0; o < tb.Count; o++) { tb.CurrentIndex = o; objPabYPag = new PEntidades.PAbiertasYPago(); float DMSHB = float.Parse(tb.CurrentRow.GetString("DMSHB")); objPabYPag.IDINSTANCIA = int.Parse(listaDiferentesInstancias[j][0]); objPabYPag.ZUONR1 = tb.CurrentRow.GetString("ZUONR"); objPabYPag.BELNR1 = tb.CurrentRow.GetString("BELNR"); objPabYPag.BLART1 = tb.CurrentRow.GetString("BLART"); objPabYPag.BLDAT1 = tb.CurrentRow.GetString("BLDAT"); objPabYPag.DMSHB1 = DMSHB; objPabYPag.HWAER1 = tb.CurrentRow.GetString("HWAER"); objPabYPag.XBLNR = tb.CurrentRow.GetString("XBLNR"); objPabYPag.NAME1 = tb.CurrentRow.GetString("NAME1"); objPabYPag.EBELN = tb.CurrentRow.GetString("EBELN"); objPabYPag.F_BASE = tb.CurrentRow.GetString("F_BASE"); objPabYPag.F_VENCIM = tb.CurrentRow.GetString("F_VENCIM"); list.Add(objPabYPag); } srv.Close(); } catch (Exception e) { status[j] = "Error al cargar datos, reintente o vuelva a intentarlo más tarde."; } } return(list); }
public List <PEntidades.PAbiertasYPago> getfacturasAbiertas(string fecha1, string fecha2, List <string[]> listaDiferentesInstancias) { List <PEntidades.PAbiertasYPago> list = new List <PEntidades.PAbiertasYPago>(); PEntidades.SrvSAPUProv.Z_UPARTIDAS_ABIERTAS abiertas = new PEntidades.SrvSAPUProv.Z_UPARTIDAS_ABIERTAS(); PEntidades.SrvSAPUProv.ZWS_UPROVEEDORESClient srv; status = new string[listaDiferentesInstancias.Count]; for (int j = 0; j < listaDiferentesInstancias.Count; j++) // listaDiferentesInstancias contiene idInstacia, endpoint, y las sociedades separadas por "," ; { try { srv = new PPersistencia.WebServices().getZWS_UPROVEEDORESInstanceNew( listaDiferentesInstancias[j][1].ToString().Trim(), listaDiferentesInstancias[j][4].Split(new Char[] { ',' }) ); srv.Open(); srv.InnerChannel.OperationTimeout = new TimeSpan(0, 10, 0); PEntidades.SrvSAPUProv.ZEPLANT_PROV[] objetoSoc; PEntidades.SrvSAPUProv.ZELIFNR_PROV[] objLifnr; string[] splitSoc = listaDiferentesInstancias[j][2].Split(new Char[] { ',' }); string[] splitLifnr = listaDiferentesInstancias[j][3].Split(new Char[] { ',' }); //objetoSoc = PEntidades.Utiles.objetoSociedad(splitSoc); //objLifnr = PEntidades.Utiles.objetoLifnr(splitLifnr); abiertas.DATE1 = Gen.Util.CS.Gen.convertirFecha_SAP(fecha1); abiertas.DATE2 = Gen.Util.CS.Gen.convertirFecha_SAP(fecha2); abiertas.PROVEEDOR = PEntidades.Utiles.objetoLifnr(splitLifnr); abiertas.SOCIEDAD = PEntidades.Utiles.objetoSociedad(splitSoc); var resultado = srv.Z_UPARTIDAS_ABIERTAS(abiertas); int cantidad = resultado.PARTIDAS_ABIERTAS.Length; PEntidades.PAbiertasYPago objPabYPag; for (int i = 0; i < cantidad; i++) { objPabYPag = new PEntidades.PAbiertasYPago(); //string ZUONR = resultado.ElementAt(i).ZUONR.ToString(); //string BELNR = resultado.ElementAt(i).BELNR.ToString(); //string BLART = resultado.ElementAt(i).BLART.ToString(); //string BLDAT = resultado.ElementAt(i).BLDAT.ToString(); //float DMSHB = float.Parse(resultado.ElementAt(i).DMSHB.ToString()); //string HWAER = resultado.ElementAt(i).HWAER.ToString(); //string XBLNR = resultado.ElementAt(i).XBLNR.ToString(); //string NAME1 = resultado.ElementAt(i).NAME1.ToString(); //string EBELN = resultado.ElementAt(i).EBELN.ToString(); //string F_BASE = resultado.ElementAt(i).F_BASE.ToString(); //string F_VENCIM = resultado.ElementAt(i).F_VENCIM.ToString(); string ZUONR = resultado.PARTIDAS_ABIERTAS[i].ZUONR.ToString(); string BELNR = resultado.PARTIDAS_ABIERTAS[i].BELNR.ToString(); string BLART = resultado.PARTIDAS_ABIERTAS[i].BLART.ToString(); string BLDAT = resultado.PARTIDAS_ABIERTAS[i].BLDAT.ToString(); float DMSHB = float.Parse(resultado.PARTIDAS_ABIERTAS[i].DMSHB.ToString()); string HWAER = resultado.PARTIDAS_ABIERTAS[i].HWAER.ToString(); string XBLNR = resultado.PARTIDAS_ABIERTAS[i].XBLNR.ToString(); string NAME1 = resultado.PARTIDAS_ABIERTAS[i].NAME1.ToString(); string EBELN = resultado.PARTIDAS_ABIERTAS[i].EBELN.ToString(); string F_BASE = resultado.PARTIDAS_ABIERTAS[i].F_BASE.ToString(); string F_VENCIM = resultado.PARTIDAS_ABIERTAS[i].F_VENCIM.ToString(); objPabYPag.IDINSTANCIA = int.Parse(listaDiferentesInstancias[j][0]); objPabYPag.ZUONR1 = ZUONR; objPabYPag.BELNR1 = BELNR; objPabYPag.BLART1 = BLART; objPabYPag.BLDAT1 = BLDAT; objPabYPag.DMSHB1 = DMSHB; objPabYPag.HWAER1 = HWAER; objPabYPag.XBLNR = XBLNR; objPabYPag.NAME1 = NAME1; objPabYPag.EBELN = EBELN; objPabYPag.F_BASE = F_BASE; objPabYPag.F_VENCIM = F_VENCIM; list.Add(objPabYPag); } srv.Close(); } catch (Exception e) { status[j] = "Error al cargar datos, reintente o vuelva a intentarlo más tarde."; //status[j] = "Error al cargar en la instancia: " + listaDiferentesInstancias[j][6]; //status[j] += "" + e; } } return(list); }
//MGV public List <PEntidades.FacturasXVerificar> getListFacturasNew( List <string[]> listaDiferentesInstancias, string ordenarOrden, string ordenarRef, string fhigh, string flow, string facthig, string factlow, string monedahig, string monedalow, string refhig, string refLow, ref string mensaje //objetoSoc, "f hig", "f low", "fact hig", "fact low", "moneda hig", "moneda low", objLifnr, ordenarOrden, ordenarRef, "ref hig", "ref low" ) // informacion importante = u.sociedad_bukrs, u.RFC, u.lifnr, u.instancia, i.endpointAdd { //int contadorIntentos = 0; List <PEntidades.FacturasXVerificar> lstResul = new List <PEntidades.FacturasXVerificar>(); // objeto lista PEntidades.SrvSAPUProv.Z_UFAC_VERIFICAR verificar = new PEntidades.SrvSAPUProv.Z_UFAC_VERIFICAR(); status = new string[listaDiferentesInstancias.Count]; for (int j = 0; j < listaDiferentesInstancias.Count; j++) // listaDiferentesInstancias contiene idInstacia, endpoint, y las sociedades separadas por "," ; { try { PEntidades.SrvSAPUProv.ZWS_UPROVEEDORESClient srv = new PPersistencia.WebServices().getZWS_UPROVEEDORESInstanceNew( listaDiferentesInstancias[j][1].ToString().Trim(), listaDiferentesInstancias[j][4].Split(new Char[] { ',' }) ); srv.Open(); srv.InnerChannel.OperationTimeout = new TimeSpan(0, 10, 0); string[] splitSoc = listaDiferentesInstancias[j][2].Split(new Char[] { ',' }); string[] splitLifnr = listaDiferentesInstancias[j][3].Split(new Char[] { ',' }); //objetoSoc = PEntidades.Utiles.objetoSociedad(splitSoc); //objLifnr = PEntidades.Utiles.objetoLifnr(splitLifnr); verificar.PROVEEDOR = PEntidades.Utiles.objetoLifnr(splitLifnr); verificar.CENTRO = PEntidades.Utiles.objetoSociedad(splitSoc); verificar.F_COMPRA_HIGH = fhigh; verificar.F_COMPRA_LOW = flow; verificar.FACTURA_HIGH = facthig; verificar.FACTURA_LOW = factlow; verificar.MONEDA_HIGH = monedahig; verificar.MONEDA_LOW = monedalow; verificar.P_BLOCK = "X"; verificar.P_ORDPED = ordenarOrden; verificar.P_ORDREF = ordenarRef; verificar.REFERENCIA_HIGH = refhig; verificar.REFERENCIA_LOW = refLow; PEntidades.SrvSAPUProv.Z_UFAC_VERIFICARResponse resul = srv.Z_UFAC_VERIFICAR(verificar); mensaje = resul.MENSAJE; //contadorIntentos = 0; //var resul = srv.Z_UFAC_VERIFICAR(objetoSoc, "f hig", "f loq", "fact hig", "fact low", "moneda hig", "moneda low", objLifnr, ordenarOrden, ordenarRef, "ref hig", "ref low"); for (int i = 0; i < resul.IT_F_VERIFICAR.Length; i++) { PEntidades.FacturasXVerificar tmpFac = new PEntidades.FacturasXVerificar(); // objeto de la lista tmpFac.IDINSTANCIA = int.Parse(listaDiferentesInstancias[j][0]); tmpFac.TIPO = resul.IT_F_VERIFICAR[i].TIPO; tmpFac.EBELN = resul.IT_F_VERIFICAR[i].EBELN; //tmpFac.RFCCorrespon = listaDiferentesInstancias[j][5]; tmpFac.RFCCorrespon = resul.IT_F_VERIFICAR[i].RFC_PROVEEDOR; tmpFac.RFCSociedad = resul.IT_F_VERIFICAR[i].RFC_SOC; tmpFac.DescripcionErrorSAP = resul.IT_F_VERIFICAR[i].FACT_SAP; tmpFac.DescripcionErrorSAT = resul.IT_F_VERIFICAR[i].FACT_SAT; tmpFac.InsidenciaPersonal = resul.IT_F_VERIFICAR[i].INCIDENCIA; tmpFac.XBLNR2 = resul.IT_F_VERIFICAR[i].XBLNR2; tmpFac.LIFNR = resul.IT_F_VERIFICAR[i].LIFNR; tmpFac.BUKRS = resul.IT_F_VERIFICAR[i].BUKRS; tmpFac.WERKS = resul.IT_F_VERIFICAR[i].WERKS.ToString(); tmpFac.BUDAT = resul.IT_F_VERIFICAR[i].BUDAT; tmpFac.BLDAT = resul.IT_F_VERIFICAR[i].BLDAT; tmpFac.WRBTR = resul.IT_F_VERIFICAR[i].WRBTR.ToString(); //Decimal tmpFac.IVA = resul.IT_F_VERIFICAR[i].IVA.ToString(); tmpFac.MWSKZ = resul.IT_F_VERIFICAR[i].MWSKZ.ToString(); //Decimal tmpFac.IMP_TOTAL = resul.IT_F_VERIFICAR[i].IMP_TOTAL.ToString(); //Decimal tmpFac.RETENCION = resul.IT_F_VERIFICAR[i].RETENCION.ToString(); //Decimal tmpFac.WAERS = resul.IT_F_VERIFICAR[i].WAERS.ToString(); //Decimal tmpFac.SALDO = resul.IT_F_VERIFICAR[i].SALDO.ToString(); tmpFac.descMaterial = resul.IT_F_VERIFICAR[i].TXZ01.ToString(); tmpFac.LIGHTS = resul.IT_F_VERIFICAR[i].LIGHTS.ToString(); tmpFac.posicion = resul.IT_F_VERIFICAR[i].POSICION.ToString(); tmpFac.tipoLinea = resul.IT_F_VERIFICAR[i].TIPOLINEA.ToString(); tmpFac.BWTAR = resul.IT_F_VERIFICAR[i].BWTAR.ToString(); tmpFac.cantidadXML = resul.IT_F_VERIFICAR[i].ZCOUNT; tmpFac.MATNR = resul.IT_F_VERIFICAR[i].MATNR; tmpFac.GJAHR = resul.IT_F_VERIFICAR[i].GJAHR; if (resul.IT_F_VERIFICAR[i].KSCHL == null) { tmpFac.KSCHL = ""; } else { tmpFac.KSCHL = resul.IT_F_VERIFICAR[i].KSCHL.ToString(); } tmpFac.BELNR = resul.IT_F_VERIFICAR[i].BELNR.ToString(); if (resul.IT_F_VERIFICAR[i].MSG_VARIOS == null) { tmpFac.msgVarios = ""; } else { tmpFac.msgVarios = resul.IT_F_VERIFICAR[i].MSG_VARIOS; } tmpFac.esPrimerCarga = false; lstResul.Add(tmpFac); } // for result srv.Close(); } // try catch (Exception e) { status[j] = "Error al cargar en la instancia: " + listaDiferentesInstancias[j][6]; } } // for return(lstResul); }
//MGV getListFacturasNewConSAP public List <PEntidades.FacturasXVerificar> getListFacturasNewConSAP( List <string[]> listaDiferentesInstancias, string ordenarOrden, string ordenarRef, string fhigh, string flow, string facthig, string factlow, string monedahig, string monedalow, string refhig, string refLow, ref string mensaje ) { List <PEntidades.FacturasXVerificar> lstResul = new List <PEntidades.FacturasXVerificar>(); // objeto lista //PEntidades.SrvSAPUProv.Z_UFAC_VERIFICAR verificar = new PEntidades.SrvSAPUProv.Z_UFAC_VERIFICAR(); //PEntidades.FacturasNE verificar = new PEntidades.FacturasNE(); //-- se necesita o se pasan directo los campos a la llamada? status = new string[listaDiferentesInstancias.Count]; for (int j = 0; j < listaDiferentesInstancias.Count; j++) //contiene idInstacia, endpoint, y sociedades separadas por "," ; { try { PEntidades.SrvSAPUProv.ZWS_UPROVEEDORESClient srv = new PPersistencia.WebServices().getZWS_UPROVEEDORESInstanceNew( listaDiferentesInstancias[j][1].ToString().Trim(), listaDiferentesInstancias[j][4].Split(new Char[] { ',' }) ); srv.Open(); srv.InnerChannel.OperationTimeout = new TimeSpan(0, 10, 0); //cambio llamado hacia SAP PPersistencia.SAPConn psc = new PPersistencia.SAPConn(); List <ParamsCallSAP> list = new List <ParamsCallSAP>(); ParamsCallSAP pr = new ParamsCallSAP(); pr = new ParamsCallSAP(); //verificar.REFERENCIA_LOW = refLow; pr.NameVar = "REFERENCIA_LOW"; pr.ValVar = refLow; pr.TipVar = "S"; list.Add(pr); pr = new ParamsCallSAP(); //verificar.REFERENCIA_HIGH = refhig; pr.NameVar = "REFERENCIA_HIGH"; pr.ValVar = refhig; pr.TipVar = "S"; list.Add(pr); pr = new ParamsCallSAP(); //verificar.MONEDA_LOW = monedalow; pr.NameVar = "MONEDA_LOW"; pr.ValVar = monedalow; pr.TipVar = "S"; list.Add(pr); pr = new ParamsCallSAP(); //verificar.MONEDA_HIGH = monedahig; pr.NameVar = "MONEDA_HIGH"; pr.ValVar = monedahig; pr.TipVar = "S"; list.Add(pr); pr = new ParamsCallSAP(); //verificar.F_COMPRA_LOW = flow; pr.NameVar = "F_COMPRA_LOW"; pr.ValVar = flow; pr.TipVar = "S"; list.Add(pr); pr = new ParamsCallSAP(); //verificar.F_COMPRA_HIGH = fhigh; pr.NameVar = "F_COMPRA_HIGH"; pr.ValVar = fhigh; pr.TipVar = "S"; list.Add(pr); pr = new ParamsCallSAP(); //verificar.FACTURA_LOW = factlow; pr.NameVar = "F_FAC_LOW"; pr.ValVar = factlow; pr.TipVar = "S"; list.Add(pr); pr = new ParamsCallSAP(); //verificar.FACTURA_HIGH = facthig; pr.NameVar = "F_FAC_HIGH"; pr.ValVar = facthig; pr.TipVar = "S"; list.Add(pr); pr = new ParamsCallSAP(); //verificar.P_ORDREF = ordenarRef; pr.NameVar = "P_ORDREF"; pr.ValVar = ordenarRef; pr.TipVar = "S"; list.Add(pr); pr = new ParamsCallSAP(); //verificar.P_ORDPED = ordenarOrden; pr.NameVar = "P_ORDPED"; pr.ValVar = ordenarOrden; pr.TipVar = "S"; list.Add(pr); pr = new ParamsCallSAP(); //verificar.P_BLOCK = "X"; pr.NameVar = "P_BLOCK"; pr.ValVar = "X"; pr.TipVar = "S"; list.Add(pr); List <TablasCallSAP> listT = new List <TablasCallSAP>(); TablasCallSAP tr = new TablasCallSAP(); List <ParamsCallSAP> listTb = new List <ParamsCallSAP>(); string[] splitLifnr = listaDiferentesInstancias[j][3].Split(new Char[] { ',' }); for (int i = 1; i <= splitLifnr.Length; i++) //verificar.PROVEEDOR = PEntidades.Utiles.objetoLifnr(splitLifnr); { pr = new ParamsCallSAP(); pr.NameVar = "LIFNR"; pr.ValVar = splitLifnr[i - 1].ToString().Trim(); //pr.ValVar = "1000000"; pr.TipVar = "S"; listTb.Add(pr); } tr.TablaVar = "PROVEEDOR_TB"; tr.CamposVar = listTb; listT.Add(tr); string[] splitSoc = listaDiferentesInstancias[j][2].Split(new Char[] { ',' }); List <TablasCallSAP> listTC = new List <TablasCallSAP>(); TablasCallSAP trC = new TablasCallSAP(); List <ParamsCallSAP> listTc = new List <ParamsCallSAP>(); for (int i = 1; i <= splitSoc.Length; i++) //verificar.CENTRO = PEntidades.Utiles.objetoSociedad(splitSoc); { pr = new ParamsCallSAP(); pr.NameVar = "WERKS"; pr.ValVar = splitSoc[i - 1].ToString().Trim(); pr.TipVar = "S"; listTc.Add(pr); } trC.TablaVar = "CENTRO_TB"; trC.CamposVar = listTc; listT.Add(trC); //PEntidades.SrvSAPUProv.Z_UFAC_VERIFICARResponse resul = srv.Z_UFAC_VERIFICAR(verificar); IRfcFunction rescon = psc.conSAP("Z_DFAC_VERIFICAR", list, listT); mensaje = psc.mensaje; //mensaje = resul.MENSAJE; IRfcTable tb = rescon.GetTable(0); for (int o = 0; o < tb.Count; o++) //for (int i = 0; i < resul.IT_F_VERIFICAR.Length; i++) { tb.CurrentIndex = o; PEntidades.FacturasXVerificar tmpFac = new PEntidades.FacturasXVerificar(); // objeto de la lista tmpFac.IDINSTANCIA = int.Parse(listaDiferentesInstancias[j][0]); tmpFac.TIPO = tb.CurrentRow.GetString("TIPO"); //tmpFac.TIPO = resul.IT_F_VERIFICAR[i].TIPO; tmpFac.EBELN = tb.CurrentRow.GetString("EBELN"); //resul.IT_F_VERIFICAR[i].EBELN; tmpFac.RFCCorrespon = tb.CurrentRow.GetString("RFC_PROVEEDOR"); //resul.IT_F_VERIFICAR[i].RFC_PROVEEDOR; tmpFac.RFCSociedad = tb.CurrentRow.GetString("RFC_SOC"); //resul.IT_F_VERIFICAR[i].RFC_SOC; tmpFac.DescripcionErrorSAP = tb.CurrentRow.GetString("FACT_SAP"); //resul.IT_F_VERIFICAR[i].FACT_SAP; tmpFac.DescripcionErrorSAT = tb.CurrentRow.GetString("FACT_SAT"); // resul.IT_F_VERIFICAR[i].FACT_SAT; tmpFac.InsidenciaPersonal = tb.CurrentRow.GetString("INCIDENCIA"); //resul.IT_F_VERIFICAR[i].INCIDENCIA; tmpFac.XBLNR2 = tb.CurrentRow.GetString("XBLNR2"); //resul.IT_F_VERIFICAR[i].XBLNR2; tmpFac.LIFNR = tb.CurrentRow.GetString("LIFNR"); //resul.IT_F_VERIFICAR[i].LIFNR; tmpFac.BUKRS = tb.CurrentRow.GetString("BUKRS"); //resul.IT_F_VERIFICAR[i].BUKRS; tmpFac.WERKS = tb.CurrentRow.GetString("WERKS").ToString(); //resul.IT_F_VERIFICAR[i].WERKS.ToString(); tmpFac.BUDAT = tb.CurrentRow.GetString("BUDAT"); //resul.IT_F_VERIFICAR[i].BUDAT; tmpFac.BLDAT = tb.CurrentRow.GetString("BLDAT"); //resul.IT_F_VERIFICAR[i].BLDAT; tmpFac.WRBTR = tb.CurrentRow.GetString("WRBTR").ToString(); //resul.IT_F_VERIFICAR[i].WRBTR.ToString();//Decimal tmpFac.IVA = tb.CurrentRow.GetString("IVA").ToString(); //resul.IT_F_VERIFICAR[i].IVA.ToString(); tmpFac.MWSKZ = tb.CurrentRow.GetString("MWSKZ").ToString(); //resul.IT_F_VERIFICAR[i].MWSKZ.ToString();//Decimal tmpFac.IMP_TOTAL = tb.CurrentRow.GetString("IMP_TOTAL").ToString(); //resul.IT_F_VERIFICAR[i].IMP_TOTAL.ToString();//Decimal tmpFac.RETENCION = tb.CurrentRow.GetString("RETENCION").ToString(); //resul.IT_F_VERIFICAR[i].RETENCION.ToString();//Decimal tmpFac.WAERS = tb.CurrentRow.GetString("WAERS").ToString(); //resul.IT_F_VERIFICAR[i].WAERS.ToString();//Decimal tmpFac.SALDO = tb.CurrentRow.GetString("SALDO").ToString(); //resul.IT_F_VERIFICAR[i].SALDO.ToString(); tmpFac.descMaterial = tb.CurrentRow.GetString("TXZ01").ToString(); //resul.IT_F_VERIFICAR[i].TXZ01.ToString(); tmpFac.LIGHTS = tb.CurrentRow.GetString("LIGHTS").ToString(); //resul.IT_F_VERIFICAR[i].LIGHTS.ToString(); tmpFac.posicion = tb.CurrentRow.GetString("POSICION").ToString(); //resul.IT_F_VERIFICAR[i].POSICION.ToString(); tmpFac.tipoLinea = tb.CurrentRow.GetString("TIPOLINEA").ToString(); //resul.IT_F_VERIFICAR[i].TIPOLINEA.ToString(); tmpFac.BWTAR = tb.CurrentRow.GetString("BWTAR").ToString(); //resul.IT_F_VERIFICAR[i].BWTAR.ToString(); tmpFac.cantidadXML = tb.CurrentRow.GetInt("ZCOUNT"); //resul.IT_F_VERIFICAR[i].ZCOUNT; tmpFac.MATNR = tb.CurrentRow.GetString("MATNR"); //resul.IT_F_VERIFICAR[i].MATNR; tmpFac.GJAHR = tb.CurrentRow.GetString("GJAHR"); //resul.IT_F_VERIFICAR[i].GJAHR; if (tb.CurrentRow.GetString("KSCHL") == null) //.resul.IT_F_VERIFICAR[i].KSCHL { tmpFac.KSCHL = ""; } else { tmpFac.KSCHL = tb.CurrentRow.GetString("KSCHL"); //resul.IT_F_VERIFICAR[i].KSCHL.ToString(); } tmpFac.BELNR = tb.CurrentRow.GetString("BELNR"); //resul.IT_F_VERIFICAR[i].BELNR.ToString(); if (tb.CurrentRow.GetString("MSG_VARIOS") == null) //resul.IT_F_VERIFICAR[i]. == null) { tmpFac.msgVarios = ""; } else { tmpFac.msgVarios = tb.CurrentRow.GetString("MSG_VARIOS"); //resul.IT_F_VERIFICAR[i].MSG_VARIOS; } tmpFac.esPrimerCarga = false; lstResul.Add(tmpFac); } // for result srv.Close(); } // try catch (Exception e) { status[j] = "Error al cargar en la instancia: " + listaDiferentesInstancias[j][6]; } } // for return(lstResul); }