//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);
        }
Example #2
0
        public List <PEntidades.FV60XVerificar> exec_connSAP(string xprov, string xxblrn, string xbladti, string xbladtf)
        //public List<PEntidades.FV60> exec_connSAP(List<string> listaProveed, string xxblrn, string xbladti, string xbladtf)
        {
            PPersistencia.SAPConn psc  = new PPersistencia.SAPConn();
            List <ParamsCallSAP>  list = new List <ParamsCallSAP>(); //tipo de parametro  S-tring  B-oolean Y-byte  D-ecimal
            ParamsCallSAP         pr   = new ParamsCallSAP();

            pr         = new ParamsCallSAP();
            pr.NameVar = "XBLNR";
            pr.ValVar  = xxblrn;
            pr.TipVar  = "S";
            list.Add(pr);

            pr         = new ParamsCallSAP();
            pr.NameVar = "BLDATI";
            pr.ValVar  = xbladti;
            pr.TipVar  = "S";
            list.Add(pr);

            pr         = new ParamsCallSAP();
            pr.NameVar = "BLDATF";
            pr.ValVar  = xbladtf;
            pr.TipVar  = "S";
            list.Add(pr);

            List <TablasCallSAP> listT = new List <TablasCallSAP>();
            TablasCallSAP        tr    = new TablasCallSAP();

            List <ParamsCallSAP> listTb = new List <ParamsCallSAP>();

            pr         = new ParamsCallSAP();
            pr.NameVar = "LIFNR";
            pr.ValVar  = xprov;          //"1000082";  "1000072" 1000037;  algunos acreedores para FV60 - gonher
            pr.TipVar  = "S";
            listTb.Add(pr);

            tr.TablaVar  = "PROVEEDOR_TB";
            tr.CamposVar = listTb;
            listT.Add(tr);

            IRfcFunction resCon = psc.conSAP("Z_DFAC_FV60_LIST", list, listT);
            List <PEntidades.FV60XVerificar> listF = new List <PEntidades.FV60XVerificar>();

            PEntidades.FV60XVerificar objFV60;
            IRfcTable tb = resCon.GetTable(0);

            if (tb.Count == 0)
            {
                msg = "No se encontraron resultados";
            }

            for (int o = 0; o < tb.Count; o++)
            {
                tb.CurrentIndex    = o;
                objFV60            = new PEntidades.FV60XVerificar();
                objFV60.BUKRS      = tb.CurrentRow.GetString("BUKRS");
                objFV60.BELNR      = tb.CurrentRow.GetString("BELNR");
                objFV60.GJAHR      = tb.CurrentRow.GetString("GJAHR");
                objFV60.BLDAT      = tb.CurrentRow.GetString("BLDAT");
                objFV60.BUDAT      = tb.CurrentRow.GetString("BUDAT");
                objFV60.XBLNR      = tb.CurrentRow.GetString("XBLNR");
                objFV60.WAERS      = tb.CurrentRow.GetString("WAERS");
                objFV60.KURSF      = decimal.Parse(tb.CurrentRow.GetString("KURSF"));
                objFV60.LIFNR      = tb.CurrentRow.GetString("LIFNR");
                objFV60.DMBTR      = decimal.Parse(tb.CurrentRow.GetString("DMBTR"));
                objFV60.WRBTR      = decimal.Parse(tb.CurrentRow.GetString("WRBTR"));
                objFV60.WMWST      = decimal.Parse(tb.CurrentRow.GetString("WMWST"));
                objFV60.TIPOLINEA  = tb.CurrentRow.GetString("TIPOLINEA");
                objFV60.ZCOUNT     = tb.CurrentRow.GetInt("ZCOUNT");
                objFV60.INCIDENCIA = tb.CurrentRow.GetString("INCIDENCIA");
                //objFV60.InsidenciaPersonal = tb.CurrentRow.GetString("InsidenciaPersonal");
                //objFV60.DescripcionErrorSAP = tb.CurrentRow.GetString("DescripcionErrorSAP");
                //objFV60.DescripcionErrorSAT = tb.CurrentRow.GetString("DescripcionErrorSAT");

                if (tb.CurrentRow.GetString("MSG_VARIOS") == null)
                {
                    objFV60.msgVarios = "";
                }
                else
                {
                    objFV60.msgVarios = tb.CurrentRow.GetString("MSG_VARIOS");
                }
                objFV60.esPrimerCarga = false;

                listF.Add(objFV60);
            }
            return(listF);
        }
Example #3
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);
        }
        public int desvincularConn(List <string[]> listaDiferentesInstancias, string[] uuid)
        {
            PEntidades.SrvSAPUProv.ZEDATA_UUID[]   objetoUui = PEntidades.Utiles.objetoUuid(uuid);
            PEntidades.SrvSAPUProv.Z_UFAC_CARGADAS cargadas  = new PEntidades.SrvSAPUProv.Z_UFAC_CARGADAS();
            //PEntidades.SrvSAPUProv.Z_UFAC_CARGADASResponse result;
            int res = 0;

            PEntidades.SrvSAPUProv.ZWS_UPROVEEDORESClient srv = new PPersistencia.WebServices().getZWS_UPROVEEDORESInstanceNew(
                listaDiferentesInstancias[0][1].ToString().Trim(),
                listaDiferentesInstancias[0][4].Split(new Char[] { ',' })
                );

            PPersistencia.SAPConn psc    = new PPersistencia.SAPConn(); //cambio del llamado hacia SAP
            List <ParamsCallSAP>  listPA = new List <ParamsCallSAP>();
            ParamsCallSAP         pr     = new ParamsCallSAP();

            pr         = new ParamsCallSAP(); //cargadas.BELNR = "";
            pr.NameVar = "BELNR";
            pr.ValVar  = "";
            pr.TipVar  = "S";
            listPA.Add(pr);

            pr         = new ParamsCallSAP(); //cargadas.BUKRS = "";
            pr.NameVar = "BUKRS";
            pr.ValVar  = "";
            pr.TipVar  = "S";
            listPA.Add(pr);

            pr         = new ParamsCallSAP(); //cargadas.BWTAR = "";
            pr.NameVar = "BWTAR";
            pr.ValVar  = "";
            pr.TipVar  = "S";
            listPA.Add(pr);

            pr         = new ParamsCallSAP(); //cargadas.CORREO = "";
            pr.NameVar = "CORREO";
            pr.ValVar  = "";
            pr.TipVar  = "S";
            listPA.Add(pr);

            pr         = new ParamsCallSAP(); //cargadas.DESADJUNTAR = "X";
            pr.NameVar = "DESADJUNTAR";
            pr.ValVar  = "X";
            pr.TipVar  = "S";
            listPA.Add(pr);

            pr         = new ParamsCallSAP(); // cargadas.EBELN = "";
            pr.NameVar = "EBELN";
            pr.ValVar  = "";
            pr.TipVar  = "S";
            listPA.Add(pr);

            pr         = new ParamsCallSAP(); // cargadas.EBELP = "";
            pr.NameVar = "EBELP";
            pr.ValVar  = "";
            pr.TipVar  = "S";
            listPA.Add(pr);

            pr         = new ParamsCallSAP(); // cargadas.FECHA_XML = "";
            pr.NameVar = "FECHA_XML";
            pr.ValVar  = "";
            pr.TipVar  = "S";
            listPA.Add(pr);

            pr         = new ParamsCallSAP(); //cargadas.IMP_RETEN = 0;
            pr.NameVar = "IMP_RETEN";
            pr.ValVard = 0;
            pr.TipVar  = "D";
            listPA.Add(pr);

            pr         = new ParamsCallSAP(); //cargadas.KSCHL = "";
            pr.NameVar = "KSCHL";
            pr.ValVar  = "";
            pr.TipVar  = "S";
            listPA.Add(pr);

            pr         = new ParamsCallSAP(); //cargadas.LIFNR = "";
            pr.NameVar = "LIFNR";
            pr.ValVar  = "";
            pr.TipVar  = "S";
            listPA.Add(pr);

            pr         = new ParamsCallSAP(); //cargadas.MSJ_SAP = "";
            pr.NameVar = "MSJ_SAP";
            pr.ValVar  = "";
            pr.TipVar  = "S";
            listPA.Add(pr);

            pr         = new ParamsCallSAP(); //cargadas.MSJ_SAT = "";
            pr.NameVar = "MSJ_SAT";
            pr.ValVar  = "";
            pr.TipVar  = "S";
            listPA.Add(pr);

            pr         = new ParamsCallSAP(); //cargadas.PDFFILE = "";
            pr.NameVar = "PDFFILE";
            pr.ValVar  = "";
            pr.TipVar  = "S";
            listPA.Add(pr);

            pr         = new ParamsCallSAP(); //cargadas.RAW = null;
            pr.NameVar = "RAW";
            pr.ValVarb = null;
            pr.TipVar  = "Y";
            listPA.Add(pr);

            pr         = new ParamsCallSAP(); //cargadas.RAWPDF = null;
            pr.NameVar = "RAWPDF";
            pr.ValVarb = null;
            pr.TipVar  = "Y";
            listPA.Add(pr);

            pr         = new ParamsCallSAP(); //cargadas.STATUS = "";
            pr.NameVar = "STATUS";
            pr.ValVar  = "";
            pr.TipVar  = "S";
            listPA.Add(pr);

            pr         = new ParamsCallSAP(); //cargadas.TIPO = "";
            pr.NameVar = "TIPO";
            pr.ValVar  = "";
            pr.TipVar  = "S";
            listPA.Add(pr);

            pr         = new ParamsCallSAP(); //cargadas.TIPOARCHIVO = "";
            pr.NameVar = "TIPOARCHIVO";
            pr.ValVar  = "";
            pr.TipVar  = "S";
            listPA.Add(pr);

            pr         = new ParamsCallSAP(); //cargadas.WERKS = "";
            pr.NameVar = "WERKS";
            pr.ValVar  = "";
            pr.TipVar  = "S";
            listPA.Add(pr);

            pr         = new ParamsCallSAP(); //cargadas.XBLNR = "";
            pr.NameVar = "XBLNR";
            pr.ValVar  = "";
            pr.TipVar  = "S";
            listPA.Add(pr);

            pr         = new ParamsCallSAP(); //cargadas.XMLFILE = "";
            pr.NameVar = "XMLFILE";
            pr.ValVar  = "";
            pr.TipVar  = "S";
            listPA.Add(pr);

            pr         = new ParamsCallSAP(); //cargadas.ZCFDI_UUID = "";
            pr.NameVar = "ZCFDI_UUID";
            pr.ValVar  = "";
            pr.TipVar  = "S";
            listPA.Add(pr);

            List <TablasCallSAP> listT  = new List <TablasCallSAP>();
            TablasCallSAP        tr     = new TablasCallSAP();
            List <ParamsCallSAP> listTb = new List <ParamsCallSAP>();
            int cont = 0;

            foreach (string uui in uuid)
            {
                pr         = new ParamsCallSAP();
                pr.NameVar = "UUID_XML";
                pr.ValVar  = uui;
                pr.TipVar  = "S";
                listTb.Add(pr);
                cont++;
            }
            tr.TablaVar  = "PROVEEDOR_TB";
            tr.CamposVar = listTb;
            listT.Add(tr);

            srv.Open();
            srv.InnerChannel.OperationTimeout = new TimeSpan(0, 10, 0);

            string msg;

            msg = psc.conSAP2("Z_DFAC_CARGADAS", listPA, listT);      //result = srv.Z_UFAC_CARGADAS(cargadas);
            srv.Close();
            if (msg != "" && msg != null)
            {
                res = int.Parse(msg.Trim());
            }
            return(res);
        }
        public int setFacturascargadasNewConn(string bukrs, string correo, string ebeln, string lifnr, string msjsap, string msgsat, string estatus, string tipo,
                                              string werks, string xblnr, string fecha_xml, string xmlfile, string endpoint, string[] userPass, byte[] raw, string uuid, decimal total,
                                              string numeroItem, string BELNR, string BWTAR, string KSCHL, string tipoarchivo, byte[] rawpdf, string pdffile, decimal retencion)
        {
            //PEntidades.SrvSAPUProv.Z_UFAC_CARGADASResponse result;
            PEntidades.SrvSAPUProv.Z_UFAC_CARGADAS cargadas = new PEntidades.SrvSAPUProv.Z_UFAC_CARGADAS();
            int res = 0;

            //PEntidades.SrvSAPUProv.ZWS_UPROVEEDORESClient srv = new PPersistencia.WebServices().getZWS_UPROVEEDORESInstanceNew(endpoint, userPass);

            PPersistencia.SAPConn psc    = new PPersistencia.SAPConn(); //cambio del llamado hacia SAP
            List <ParamsCallSAP>  listPA = new List <ParamsCallSAP>();
            ParamsCallSAP         pr     = new ParamsCallSAP();

            pr         = new ParamsCallSAP(); //cargadas.BELNR = BELNR;
            pr.NameVar = "BELNR";
            pr.ValVar  = BELNR;
            pr.TipVar  = "S";
            listPA.Add(pr);

            pr         = new ParamsCallSAP(); //cargadas.BUKRS = bukrs;
            pr.NameVar = "BUKRS";
            pr.ValVar  = bukrs;
            pr.TipVar  = "S";
            listPA.Add(pr);

            pr         = new ParamsCallSAP(); //cargadas.BWTAR = BWTAR;
            pr.NameVar = "BWTAR";
            pr.ValVar  = BWTAR;
            pr.TipVar  = "S";
            listPA.Add(pr);

            pr         = new ParamsCallSAP(); //cargadas.CORREO = correo;
            pr.NameVar = "CORREO";
            pr.ValVar  = correo;
            pr.TipVar  = "S";
            listPA.Add(pr);

            pr         = new ParamsCallSAP(); //cargadas.DESADJUNTAR = "";
            pr.NameVar = "DESADJUNTAR";
            pr.ValVar  = "";
            pr.TipVar  = "S";
            listPA.Add(pr);

            pr         = new ParamsCallSAP(); //cargadas.EBELN = ebeln;
            pr.NameVar = "EBELN";
            pr.ValVar  = ebeln;
            pr.TipVar  = "S";
            listPA.Add(pr);

            pr         = new ParamsCallSAP(); //cargadas.EBELP = numeroItem;
            pr.NameVar = "EBELP";
            pr.ValVar  = numeroItem;
            pr.TipVar  = "S";
            listPA.Add(pr);

            pr         = new ParamsCallSAP(); //cargadas.FECHA_XML = fecha_xml;
            pr.NameVar = "FECHA_XML";
            pr.ValVar  = fecha_xml;
            pr.TipVar  = "S";
            listPA.Add(pr);

            pr         = new ParamsCallSAP(); //cargadas.IMP_RETEN = retencion;
            pr.NameVar = "IMP_RETEN";
            pr.ValVard = retencion;
            pr.TipVar  = "D";
            listPA.Add(pr);

            pr         = new ParamsCallSAP(); //cargadas.KSCHL = KSCHL;
            pr.NameVar = "KSCHL";
            pr.ValVar  = KSCHL;
            pr.TipVar  = "S";
            listPA.Add(pr);

            pr         = new ParamsCallSAP(); //cargadas.LIFNR = lifnr;
            pr.NameVar = "LIFNR";
            pr.ValVar  = lifnr;
            pr.TipVar  = "S";
            listPA.Add(pr);

            pr         = new ParamsCallSAP(); //cargadas.MSJ_SAP = msjsap;
            pr.NameVar = "MSJ_SAP";
            pr.ValVar  = msjsap;
            pr.TipVar  = "S";
            listPA.Add(pr);

            pr         = new ParamsCallSAP(); //cargadas.MSJ_SAT = msgsat;
            pr.NameVar = "MSJ_SAT";
            pr.ValVar  = msgsat;
            pr.TipVar  = "S";
            listPA.Add(pr);

            pr         = new ParamsCallSAP(); //cargadas.PDFFILE = pdffile;
            pr.NameVar = "PDFFILE";
            pr.ValVar  = pdffile;
            pr.TipVar  = "S";
            listPA.Add(pr);

            pr         = new ParamsCallSAP(); //cargadas.RAW = raw;
            pr.NameVar = "RAW";
            pr.ValVarb = raw;
            pr.TipVar  = "Y";
            listPA.Add(pr);

            pr         = new ParamsCallSAP(); //cargadas.RAWPDF = rawpdf;
            pr.NameVar = "RAWPDF";
            pr.ValVarb = rawpdf;
            pr.TipVar  = "Y";
            listPA.Add(pr);

            pr         = new ParamsCallSAP(); //cargadas.STATUS = estatus;
            pr.NameVar = "STATUS";
            pr.ValVar  = estatus;
            pr.TipVar  = "S";
            listPA.Add(pr);

            pr         = new ParamsCallSAP(); //cargadas.TIPO = tipo;
            pr.NameVar = "TIPO";
            pr.ValVar  = tipo;
            pr.TipVar  = "S";
            listPA.Add(pr);

            pr         = new ParamsCallSAP(); //cargadas.TIPOARCHIVO = tipoarchivo;
            pr.NameVar = "TIPOARCHIVO";
            pr.ValVar  = tipoarchivo;
            pr.TipVar  = "S";
            listPA.Add(pr);

            pr         = new ParamsCallSAP(); //cargadas.UUID_XML = null;
            pr.NameVar = "UUID_XML";
            pr.ValVar  = null;
            pr.TipVar  = "S";
            listPA.Add(pr);

            pr         = new ParamsCallSAP(); //cargadas.WERKS = werks;
            pr.NameVar = "WERKS";
            pr.ValVar  = werks;
            pr.TipVar  = "S";
            listPA.Add(pr);

            pr         = new ParamsCallSAP(); //cargadas.XBLNR = xblnr;
            pr.NameVar = "XBLNR";
            pr.ValVar  = xblnr;
            pr.TipVar  = "S";
            listPA.Add(pr);

            pr         = new ParamsCallSAP(); //cargadas.XMLFILE = xmlfile;
            pr.NameVar = "XMLFILE";
            pr.ValVar  = xmlfile;
            pr.TipVar  = "S";
            listPA.Add(pr);

            pr         = new ParamsCallSAP(); //cargadas.ZCFDI_UUID = uuid;
            pr.NameVar = "ZCFDI_UUID";
            pr.ValVar  = uuid;
            pr.TipVar  = "S";
            listPA.Add(pr);

            List <TablasCallSAP> listT  = new List <TablasCallSAP>(); // no lleva tablas, solo para la llamada
            TablasCallSAP        tr     = new TablasCallSAP();
            List <ParamsCallSAP> listTb = new List <ParamsCallSAP>();

            string msg;

            msg = psc.conSAP2("Z_DFAC_CARGADAS", listPA, listT);                //result = srv.Z_UFAC_CARGADAS(cargadas);

            if (msg != "" && msg != null)
            {
                try
                {
                    res = int.Parse(msg.Trim());
                }
                catch (Exception)
                {
                    res = 1;
                }
            }
            return(res);
        }
        public int setFV60cargadasNew(string bukrs, string gjahr, string belnr, string uuid_cfdi, string rfc_emisor,
                                      string rfc_receptor, decimal wrbtr, string waers, decimal kursf, string bldat, byte[] rawxml, byte[] rawpdf, string fileName)
        {
            int res = 0;

            PPersistencia.SAPConn psc  = new PPersistencia.SAPConn();
            List <ParamsCallSAP>  list = new List <ParamsCallSAP>();
            ParamsCallSAP         pr   = new ParamsCallSAP();

            pr         = new ParamsCallSAP();
            pr.NameVar = "BUKRS";
            pr.ValVar  = bukrs;
            pr.TipVar  = "S";
            list.Add(pr);

            pr         = new ParamsCallSAP();
            pr.NameVar = "GJAHR";
            pr.ValVar  = gjahr;
            pr.TipVar  = "S";
            list.Add(pr);

            pr         = new ParamsCallSAP();
            pr.NameVar = "BELNR";
            pr.ValVar  = belnr;
            pr.TipVar  = "S";
            list.Add(pr);

            pr         = new ParamsCallSAP();
            pr.NameVar = "UUID_CFDI";
            pr.ValVar  = uuid_cfdi;
            pr.TipVar  = "S";
            list.Add(pr);

            pr         = new ParamsCallSAP();
            pr.NameVar = "RFC_EMISOR";
            pr.ValVar  = rfc_emisor;
            pr.TipVar  = "S";
            list.Add(pr);

            pr         = new ParamsCallSAP();
            pr.NameVar = "RFC_RECEPTOR";
            pr.ValVar  = rfc_receptor;
            pr.TipVar  = "S";
            list.Add(pr);

            pr         = new ParamsCallSAP();
            pr.NameVar = "WRBTR";
            pr.ValVar  = wrbtr.ToString();
            pr.TipVar  = "S";
            list.Add(pr);

            pr         = new ParamsCallSAP();
            pr.NameVar = "WAERS";
            pr.ValVar  = waers;
            pr.TipVar  = "S";
            list.Add(pr);

            pr         = new ParamsCallSAP();
            pr.NameVar = "KURSF";
            pr.ValVar  = kursf.ToString();
            pr.TipVar  = "S";
            list.Add(pr);

            pr         = new ParamsCallSAP();
            pr.NameVar = "BLDAT";
            pr.ValVar  = bldat;
            pr.TipVar  = "S";
            list.Add(pr);

            pr         = new ParamsCallSAP();
            pr.NameVar = "FILE_NAME";
            pr.ValVar  = fileName;
            pr.TipVar  = "S";
            list.Add(pr);

            pr         = new ParamsCallSAP();
            pr.NameVar = "RAWPDF";
            pr.ValVarb = rawpdf;
            pr.TipVar  = "Y";
            list.Add(pr);

            pr         = new ParamsCallSAP();
            pr.NameVar = "RAWXML";
            pr.ValVarb = rawxml;
            pr.TipVar  = "Y";
            list.Add(pr);

            List <TablasCallSAP> listT  = new List <TablasCallSAP>(); // no lleva Tablas, solo para el llamado
            TablasCallSAP        tr     = new TablasCallSAP();
            List <ParamsCallSAP> listTb = new List <ParamsCallSAP>();

            string rescon = psc.conSAP2("Z_DFAC_CARGA_FV60", list, listT);

            if (rescon != "" && rescon != null)
            {
                try
                {
                    res = int.Parse(rescon.Trim());
                }
                catch (Exception)
                {
                    msg = rescon.Trim();
                }
            }
            return(res);
        }
        public int desvincularFV60(string uuid_cfdi, string bukrs, string gjahr, string belnr)
        {
            int res = 0;

            PPersistencia.SAPConn psc  = new PPersistencia.SAPConn();
            List <ParamsCallSAP>  list = new List <ParamsCallSAP>();
            ParamsCallSAP         pr   = new ParamsCallSAP();

            pr         = new ParamsCallSAP();
            pr.NameVar = "P_BELNR";
            pr.ValVar  = belnr;
            pr.TipVar  = "S";
            list.Add(pr);

            pr         = new ParamsCallSAP();
            pr.NameVar = "P_GJAHR";
            pr.ValVar  = gjahr;
            pr.TipVar  = "S";
            list.Add(pr);

            pr         = new ParamsCallSAP();
            pr.NameVar = "P_BUKRS";
            pr.ValVar  = bukrs;
            pr.TipVar  = "S";
            list.Add(pr);

            pr         = new ParamsCallSAP();
            pr.NameVar = "P_UUID";
            pr.ValVar  = uuid_cfdi;
            pr.TipVar  = "S";
            list.Add(pr);

            List <TablasCallSAP> listT  = new List <TablasCallSAP>(); // no lleva Tablas, solo para el llamado
            TablasCallSAP        tr     = new TablasCallSAP();
            List <ParamsCallSAP> listTb = new List <ParamsCallSAP>();

            string rescon = psc.conSAP2("Z_UFAC_FV60_DESADJUNTAR", list, listT);

            if (rescon != "" && rescon != null)
            {
                try
                {
                    int    Start, End;  //buscar # de archivos desadjuntados
                    string xCuantos;
                    if (rescon.Contains("P_RETURN=") && rescon.Contains(", IMPORT"))
                    {
                        Start    = rescon.IndexOf("P_RETURN=", 0) + "P_RETURN=".Length;
                        End      = rescon.IndexOf(", IMPORT", Start);
                        xCuantos = rescon.Substring(Start, End - Start);
                        res      = int.Parse(xCuantos.Trim());
                        return(res);
                    }
                    else
                    {
                        return(0);
                    }
                }
                catch (Exception)
                {
                    msg = rescon.Trim();
                }
            }
            return(res);
        }