コード例 #1
0
        void AsignarEntidad()
        {
            //BE_Movimiento.lst_items;

            //BE_Movimiento.n_id;
            BE_Movimiento.n_idemp    = STU_SISTEMA.EMPRESAID;
            BE_Movimiento.n_idtipmov = 2;                            // 1 = INGRESO ; 2 = SALIDA
            BE_Movimiento.n_idclipro = Convert.ToInt16(CboProveedor.SelectedValue);
            BE_Movimiento.d_fchdoc   = Convert.ToDateTime(TxtFchDoc.Text);
            BE_Movimiento.d_fching   = Convert.ToDateTime(txtFchIng.Text);
            BE_Movimiento.n_idtipdoc = Convert.ToInt16(CboTipDoc.SelectedValue);
            BE_Movimiento.c_numser   = TxtNumSer.Text;
            BE_Movimiento.c_numdoc   = TxtNumDoc.Text;
            BE_Movimiento.n_idalm    = Convert.ToInt16(CboAlmacen.SelectedValue);
            BE_Movimiento.n_anotra   = STU_SISTEMA.ANOTRABAJO;
            BE_Movimiento.n_idmes    = STU_SISTEMA.MESTRABAJO;
            BE_Movimiento.c_obs      = TxtObs.Text;;

            int n_fila            = 0;
            int n_NumeroElementos = 0;

            if (BE_Movimiento.lst_items != null)
            {
                n_NumeroElementos = Convert.ToInt16(BE_Movimiento.lst_items.Count - 1);

                for (n_fila = 0; n_fila <= n_NumeroElementos; n_fila++)
                {
                    BE_Movimiento.lst_items.RemoveAt(0);
                }
            }

            n_fila       = 0;
            booAgregando = true;

            List <BE_ALM_MOVIMIENTOSDET_CONSULTA> LstDetalle = new List <BE_ALM_MOVIMIENTOSDET_CONSULTA>();

            if (FgItems.Rows.Count > 2)
            {
                for (n_fila = 2; n_fila <= FgItems.Rows.Count - 1; n_fila++)
                {
                    if (funFunciones.NulosC(FgItems.GetData(n_fila, 1)) != "")
                    {
                        BE_ALM_MOVIMIENTOSDET_CONSULTA BE_Detalle = new BE_ALM_MOVIMIENTOSDET_CONSULTA();

                        BE_Detalle.n_idmov = 0;
                        BE_Detalle.n_can   = Convert.ToDouble(FgItems.GetData(n_fila, 4).ToString());

                        BE_Detalle.c_tipexides = FgItems.GetData(n_fila, 1).ToString();
                        BE_Detalle.c_itedes    = FgItems.GetData(n_fila, 2).ToString();
                        BE_Detalle.c_itepredes = FgItems.GetData(n_fila, 3).ToString();

                        DataTable DtFiltro = new DataTable();

                        // FILTRAMOS EL ITEM DE LA FILA PARA OBTENER EL ID
                        string strCadenaFiltro = "c_despro = '" + BE_Detalle.c_itedes + "'";
                        DtFiltro           = funDatos.DataTableFiltrar(dtItems, strCadenaFiltro);
                        BE_Detalle.n_idite = Convert.ToInt32(DtFiltro.Rows[0]["n_id"].ToString());

                        // FILTRAMOS LA PRESENTACION PARA OBTENER SU ID
                        strCadenaFiltro    = "c_des = '" + BE_Detalle.c_itepredes + "' AND n_idite = " + BE_Detalle.n_idite + "";
                        DtFiltro           = funDatos.DataTableFiltrar(dtPresentaItem, strCadenaFiltro);
                        BE_Detalle.n_idpre = Convert.ToInt32(DtFiltro.Rows[0]["n_id"].ToString());

                        // FILTRAMOS EL TIPO DE PRODUCTO PARA OBTENER SU id
                        strCadenaFiltro       = "c_des = '" + BE_Detalle.c_tipexides + "'";
                        DtFiltro              = funDatos.DataTableFiltrar(dtTipoExis, strCadenaFiltro);
                        BE_Detalle.n_idtippro = Convert.ToInt32(DtFiltro.Rows[0]["n_id"].ToString());

                        LstDetalle.Add(BE_Detalle);
                    }
                }
                BE_Movimiento.lst_items = LstDetalle;
            }
            booAgregando = false;
        }
コード例 #2
0
        public bool InsertarMovimiento(BE_ALM_TRANSFERENCIAS entTransferencia, int n_TipoMovimiento)
        {
            bool booOk = false;
            BE_ALM_MOVIMIENTOS           entCabecera = new BE_ALM_MOVIMIENTOS();
            List <BE_ALM_MOVIMIENTOSDET> lstDetalle  = new List <BE_ALM_MOVIMIENTOSDET>();
            List <BE_ALM_INVENTARIOLOTE> lstLote     = new List <BE_ALM_INVENTARIOLOTE>();

            CD_alm_movimientos miFun = new CD_alm_movimientos();

            miFun.mysConec = mysConec;

            int n_idtipdocingmov = 49;
            int n_idtipdocsalmov = 50;
            int n_idtipdocrefmov = 95;
            int n_idtipopeingmov = 21;
            int n_idtipopesalmov = 11;

            CD_sun_tipdoccom miFun_sun_tipdoccom = new CD_sun_tipdoccom();

            miFun_sun_tipdoccom.mysConec = mysConec;
            string c_numdocmov = string.Empty;

            if (n_TipoMovimiento == 1)
            {
                c_numdocmov = miFun_sun_tipdoccom.UltimoNumero(entTransferencia.n_idemp
                                                               , n_idtipdocingmov
                                                               , entTransferencia.c_numser);
            }
            else
            {
                c_numdocmov = miFun_sun_tipdoccom.UltimoNumero(entTransferencia.n_idemp
                                                               , n_idtipopesalmov
                                                               , entTransferencia.c_numser);
            }

            entCabecera.n_id       = entTransferencia.n_id;
            entCabecera.n_idemp    = entTransferencia.n_idemp;
            entCabecera.n_idtipmov = n_TipoMovimiento;
            entCabecera.n_idclipro = 7032;
            entCabecera.d_fchdoc   = entTransferencia.d_fchdoc;
            entCabecera.d_fching   = entTransferencia.d_fching;
            if (n_TipoMovimiento == 1)
            {
                entCabecera.n_idtipdoc = n_idtipdocingmov;
            }
            else
            {
                entCabecera.n_idtipdoc = n_idtipdocsalmov;
            }
            entCabecera.c_numser = entTransferencia.c_numser;
            entCabecera.c_numdoc = c_numdocmov;
            if (n_TipoMovimiento == 1)
            {
                entCabecera.n_idalm = entTransferencia.n_idalmdest;
            }
            else
            {
                entCabecera.n_idalm = entTransferencia.n_idalmorig;
            }
            entCabecera.n_anotra = entTransferencia.n_anotra;
            entCabecera.n_idmes  = entTransferencia.n_idmes;
            entCabecera.c_obs    = entTransferencia.c_obs;
            if (n_TipoMovimiento == 1)
            {
                entCabecera.n_idtipope = n_idtipopeingmov;
            }
            else
            {
                entCabecera.n_idtipope = n_idtipopesalmov;
            }
            entCabecera.n_tipite         = 2;
            entCabecera.n_docrefidtipdoc = n_idtipdocrefmov;
            entCabecera.c_docrefnumser   = entTransferencia.c_numser;
            entCabecera.c_docrefnumdoc   = entTransferencia.c_numdoc;
            entCabecera.n_docrefiddocref = entTransferencia.n_id;
            entCabecera.n_perid          = entTransferencia.n_idresp;

            foreach (BE_ALM_TRANSFERENCIASDET element in entTransferencia.lst_items)
            {
                BE_ALM_MOVIMIENTOSDET_CONSULTA entNewDetalle = new BE_ALM_MOVIMIENTOSDET_CONSULTA();
                BE_ALM_INVENTARIOLOTE          entNewLote    = new BE_ALM_INVENTARIOLOTE();

                entNewDetalle.n_idmov    = entTransferencia.n_id;
                entNewDetalle.n_idite    = element.n_idite;
                entNewDetalle.n_idpre    = element.n_idpre;
                entNewDetalle.n_can      = element.n_can;
                entNewDetalle.n_idalm    = element.n_idalm;
                entNewDetalle.c_numlot   = element.c_numlot;
                entNewDetalle.n_idtippro = element.n_idtippro;
                entNewDetalle.d_fchpro   = null;
                entNewDetalle.d_fchven   = null;
                entNewDetalle.n_iddep    = element.n_iddep;
                entNewDetalle.n_idpro    = element.n_idpro;
                entNewDetalle.n_iddis    = element.n_iddis;
                entNewDetalle.c_desori   = element.c_desori;
                entNewDetalle.c_marca    = element.c_marca;
                entNewDetalle.n_preuni   = element.n_preuni;
                entNewDetalle.n_pretot   = element.n_pretot;
                entNewDetalle.h_horing   = "";
                entNewDetalle.h_horsal   = element.h_horsal;
                entNewDetalle.n_estpro   = 1;
                lstDetalle.Add(entNewDetalle);

                // AGREGAMOS LOS LOTES
                entNewLote.n_idemp    = entTransferencia.n_idemp;
                entNewLote.n_idite    = element.n_idite;
                entNewLote.n_iddocmov = 0;
                entNewLote.d_fchmov   = entTransferencia.d_fching;
                entNewLote.c_numlot   = element.c_numlot;
                entNewLote.n_idunimed = 0;

                entNewLote.n_caning = 0;
                entNewLote.n_cansal = 0;
                if (entCabecera.n_idtipmov == 1)
                {
                    entNewLote.n_caning = element.n_can;
                }
                if (entCabecera.n_idtipmov == 2)
                {
                    entNewLote.n_cansal = element.n_can;
                }
                entNewDetalle.d_fchven = null;
                entNewLote.n_iddep     = element.n_iddep;
                entNewLote.n_idpro     = element.n_idpro;
                entNewLote.n_iddis     = element.n_iddis;
                entNewLote.c_oriite    = element.c_desori;
                entNewLote.h_horing    = "";
                entNewLote.h_horsal    = element.h_horsal;
                entNewLote.n_estpro    = element.n_estpro;
                lstLote.Add(entNewLote);
            }
            if (miFun.Insertar_off(entCabecera, lstDetalle, lstLote) == false)
            {
                booOcurrioError = miFun.booOcurrioError;
                StrErrorMensaje = miFun.StrErrorMensaje;
                IntErrorNumber  = miFun.IntErrorNumber;
                return(booOk);
            }

            booOk = true;
            return(booOk);
        }