コード例 #1
0
        public Boolean GenerarDiarioFOB(int IdEmpresa, int IdSucursal, decimal IdImportacion, ref string msg, ref decimal idCbteCble, string idCbteCble_Proveedor)
        {
            try
            {
                imp_ordencompra_ext_x_ct_cbtecble_Info ordCompraxCbte_info = new imp_ordencompra_ext_x_ct_cbtecble_Info();
                ct_Periodo_Info  Per_I      = new ct_Periodo_Info();
                ct_Cbtecble_Info CbteCble_I = new ct_Cbtecble_Info();
                List <imp_ordencompra_ext_x_imp_gastosxImport_Det_Info> ListaDetalle  = new List <imp_ordencompra_ext_x_imp_gastosxImport_Det_Info>();
                imp_gastosximport_x_empresa_Data                    BusGastosXEmpresa = new imp_gastosximport_x_empresa_Data();
                List <imp_gastosximport_x_empresa_Info>             lstGastosXEmpresa = new List <imp_gastosximport_x_empresa_Info>();
                List <imp_ordencompra_ext_x_imp_gastosxImport_Info> Lst = new List <imp_ordencompra_ext_x_imp_gastosxImport_Info>();
                ba_Cbte_Ban_Bus             BusCbteBanco    = new ba_Cbte_Ban_Bus();
                ct_Periodo_Data             Per_B           = new ct_Periodo_Data();
                List <ct_Cbtecble_det_Info> LstCbteCble     = new List <ct_Cbtecble_det_Info>();
                cl_parametrosGenerales_Bus  param           = cl_parametrosGenerales_Bus.Instance;
                ba_Cbte_Ban_Info            CbteBan_I       = new ba_Cbte_Ban_Info();
                imp_Parametros_Data         Data_parametros = new imp_Parametros_Data();
                var tip = Data_parametros.Get_Info_Parametros(IdEmpresa);
                imp_ordencompra_ext_x_ct_cbtecble_Data DataOrdxCbt = new imp_ordencompra_ext_x_ct_cbtecble_Data();
                cp_proveedor_Data        _Prove_D = new cp_proveedor_Data();
                imp_ordencompra_ext_Info _Info    = oData.Get_Info_ordencompra_ext(IdEmpresa, IdSucursal, IdImportacion);
                string MensajeError = "";
                var    proveedor    = _Prove_D.Get_Info_Proveedor(param.IdEmpresa, _Info.IdProveedor);
                Per_I = Per_B.Get_Info_Periodo(_Info.IdEmpresa, _Info.ci_fecha, ref MensajeError);
                ct_Cbtecble_det_Info _CbteCble_I   = new ct_Cbtecble_det_Info();
                in_categorias_data   producto_data = new in_categorias_data();
                //var producto = producto_data.ObtenerObjeto(param.IdEmpresa, _Info.IdCategoria).ca_Categoria;
                var    producto    = producto_data.Get_List_categorias(0);
                string Observacion = _CbteCble_I.dc_Observacion = proveedor.pr_nombre + ".: " + _Info.CodOrdenCompraExt + ": //" + IdImportacion + "//" + "Cont. de la  Importacion #" + IdImportacion +
                                                                  @"'\'" + _Info.CodOrdenCompraExt + " Diario FOB" + _Info.ci_Observacion + " : " + producto + ". " + _Info.ci_tonelaje + " T";
                _CbteCble_I.IdCtaCble  = _Info.IdCtaCble_import;
                _CbteCble_I.IdEmpresa  = IdEmpresa;
                _CbteCble_I.IdTipoCbte = tip.IdTipoCbte_DiarioFob;
                _CbteCble_I.dc_Valor   = _Info.FOB;
                LstCbteCble.Add(_CbteCble_I);
                ct_Cbtecble_det_Info obj2 = new ct_Cbtecble_det_Info();
                obj2.IdCtaCble      = _Info.IdCtaCble_import;
                obj2.dc_Observacion = Observacion;// "Cont. de la  Importacion #" + IdImportacion + @"'\'" + _Info.CodOrdenCompraExt + " Diario FOB" + _Info.ci_Observacion;
                obj2.IdCtaCble      = idCbteCble_Proveedor;
                obj2.IdTipoCbte     = tip.IdTipoCbte_DiarioFob;
                obj2.IdEmpresa      = _Info.IdEmpresa;
                obj2.dc_Valor       = _Info.FOB * -1;
                LstCbteCble.Add(obj2);

                CbteCble_I.IdEmpresa   = _Info.IdEmpresa;
                CbteCble_I.IdTipoCbte  = tip.IdTipoCbte_DiarioFob;
                CbteCble_I.CodCbteCble = "IM";
                CbteCble_I.IdPeriodo   = Per_I.IdPeriodo;
                CbteCble_I.cb_Fecha    = Convert.ToDateTime(_Info.ci_fecha.ToShortDateString());
                CbteCble_I.cb_Valor    = _Info.FOB;
                if (_Info.CodOrdenCompraExt == null || _Info.CodOrdenCompraExt == "")
                {
                    _Info.CodOrdenCompraExt = "IMP" + IdImportacion;
                }
                CbteCble_I.cb_Observacion           = Observacion;
                CbteCble_I.Secuencia                = 0;
                CbteCble_I.Estado                   = "A";
                CbteCble_I.Anio                     = _Info.ci_fecha.Year;
                CbteCble_I.Mes                      = _Info.ci_fecha.Month;
                CbteCble_I.IdUsuario                = param.IdUsuario;
                CbteCble_I.IdUsuarioUltModi         = param.IdUsuario;
                CbteCble_I.cb_FechaTransac          = param.GetDateServer();
                CbteCble_I.cb_FechaUltModi          = param.GetDateServer();
                CbteCble_I.Mayorizado               = "N";
                CbteCble_I._cbteCble_det_lista_info = LstCbteCble;
                ct_Cbtecble_Bus CbteCble_B   = new ct_Cbtecble_Bus();
                string          cod_CbteCble = "";

                if (CbteCble_B.GrabarDB(CbteCble_I, ref idCbteCble, ref msg) == false)
                {
                    return(false);
                }
                ordCompraxCbte_info.ct_IdEmpresa         = ordCompraxCbte_info.imp_IdEmpresa = _Info.IdEmpresa;
                ordCompraxCbte_info.imp_IdOrdenCompraExt = _Info.IdOrdenCompraExt;
                ordCompraxCbte_info.imp_IdSucusal        = _Info.IdSucusal;
                ordCompraxCbte_info.ct_IdTipoCbte        = tip.IdTipoCbte_DiarioFob;
                ordCompraxCbte_info.ct_IdCbteCble        = idCbteCble;
                ordCompraxCbte_info.TipoReg = "FOB";
                DataOrdxCbt.GuardarDB(ordCompraxCbte_info, ref mensaje);

                return(true);
            }
            catch (Exception ex)
            {
                Core.Erp.Info.Log_Exception.LoggingManager.Logger.Log(Core.Erp.Info.Log_Exception.LoggingCategory.Error, ex.Message);
                throw new Core.Erp.Info.Log_Exception.DalException(string.Format("", "consultaDiariosxImportacion", ex.Message), ex)
                      {
                          EntityType = typeof(imp_ordencompra_ext_Bus)
                      };
            }
        }