Exemplo n.º 1
0
        /// <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);
        }
Exemplo n.º 2
0
 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);
        }
Exemplo n.º 4
0
 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);
        }
Exemplo n.º 7
0
        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);
        }
Exemplo n.º 13
0
        //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);
        }
Exemplo n.º 14
0
        //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);
        }