예제 #1
0
        protected void btn_buscar_click(object sender, EventArgs args)
        {
            try
            {
                bool   exixteFondeo = false;
                string referencia   = txt_referencia.Text.Trim();

                //Verificacion en tabla de Entrada_fondeo
                List <Entrada_fondeo> lstEntFo = EntradaCtrl.FondeoGetByReferencia(referencia);
                exixteFondeo = lstEntFo.Count > 0;
                if (!exixteFondeo)
                {
                    throw new Exception("El pedimento: " + referencia + ", no ha sido dado de alta en los fondeos");
                }

                //Verifica que no sea una compartida de otro usuario
                EntradaCtrl.ReferenciaValida(txt_referencia.Text, Convert.ToInt32(hf_id_cliente.Value));


                //Verifica que sea un nuevo arribo o un arribo parcial
                if (!EntradaCtrl.EsReferenciaParcial(referencia, 1))
                {
                    EntradaCtrl.ReferenciaNuevaValida(referencia, 1);
                }
                else
                {
                    Entrada_parcial oEP = EntradaCtrl.ParcialGetByReferencia(referencia);
                    if (oEP.Id_entrada == 0)
                    {
                        throw new Exception("El pedimento entro parcialmente y ya se ha capturado la última parcialidad.");
                    }
                    fillEntradaParcial(EntradaCtrl.getEntradaParcial(oEP.Id_entrada), oEP);
                }

                pnl_infoArribo.Visible = exixteFondeo;

                if (exixteFondeo)
                {
                    hf_fondeoValido.Value = "1";
                    hf_id_cliente.Value   = "1";
                    //aquiDocRecrfv_doc_req.Enabled = false;

                    Entrada_fondeo oEFfirst = lstEntFo.First();
                    //aquiDocRectxt_doc_req.Text = oEFfirst.Aduana + "-" + oEFfirst.Referencia;
                    //aquiDocRectxt_doc_req.Enabled = false;
                    Aduana oAduana = CatalogCtrl.AduanaGetByCodigo(oEFfirst.Aduana);
                    txt_origen.Text             = oAduana.Nombre;
                    txt_no_pieza_declarada.Text = lstEntFo.Sum(p => p.Piezas).ToString();

                    fillEntradaDocumento(lstEntFo);
                }
            }
            catch (Exception e)
            {
                ((MstCasc)this.Master).setError = e.Message;
            }
        }
예제 #2
0
        protected void btn_buscar_click(object sender, EventArgs args)
        {
            try
            {
                bool   exixteFondeo = false;
                string referencia   = txt_dato.Text.Trim();

                //Verificacion en tabla de Entrada_fondeo
                List <Entrada_fondeo> lstEntFo = EntradaCtrl.FondeoGetByReferencia(referencia);
                exixteFondeo = lstEntFo.Count > 0;
                if (!exixteFondeo)
                {
                    throw new Exception("El pedimento proporcionado no ha sido dado de alta en los fondeos");
                }


                //Verifica que sea un nuevo arribo o un arribo parcial
                if (!EntradaCtrl.EsReferenciaParcial(referencia, 1))
                {
                    EntradaCtrl.ReferenciaNuevaValida(referencia, 1);
                }
                else
                {
                    Entrada_parcial oEP = EntradaCtrl.ParcialGetByReferencia(referencia);
                    if (oEP.Id_entrada == 0)
                    {
                        throw new Exception("El pedimento entro parcialmente y ya se ha capturado la última parcialidad.");
                    }
                    fillEntradaParcial(EntradaCtrl.getEntradaParcial(oEP.Id_entrada), oEP);
                }

                pnl_infoArribo.Visible = exixteFondeo;

                if (exixteFondeo)
                {
                    fillData();

                    Entrada_fondeo oEFfirst = lstEntFo.First();
                    txt_referencia.Text = oEFfirst.Aduana + "-" + oEFfirst.Referencia;
                    Aduana oAduana = CatalogCtrl.AduanaGetByCodigo(oEFfirst.Aduana);
                    txt_origen.Text             = oAduana.Nombre;
                    txt_no_pieza_declarada.Text = lstEntFo.Sum(p => p.Piezas).ToString();
                    //txt_origen.Text = oAduana.Nombre;
                    //ddlCliente.SelectedValue = ;
                }
            }
            catch (Exception e)
            {
                ((MstCasc)this.Master).setError = e.Message;
            }
        }
예제 #3
0
        /// <summary>
        /// Click en entrada compartida
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="args"></param>
        protected void referenciaCompartido_click(object sender, CommandEventArgs args)
        {
            Button btn = (Button)sender;

            try
            {
                hfFolio.Value = args.CommandArgument.ToString();
                Entrada oE = EntradaCtrl.getEntradaCompartida(args.CommandArgument.ToString());
                fillEntradaCompartida(oE, btn.Text);
                hf_click_Compartida.Value = "1";

                if (EntradaCtrl.EsReferenciaParcial(btn.Text, 1))
                {
                    Entrada_parcial oEP = EntradaCtrl.ParcialGetByReferencia(btn.Text);
                    if (oEP.Id_entrada == 0)
                    {
                        throw new Exception("El pedimento entro parcialmente y ya se ha capturado la última parcialidad.");
                    }
                    fillEntradaParcial(EntradaCtrl.getEntradaParcial(oEP.Id_entrada), oEP);
                }
            }
            catch (Exception e)
            {
                ((MstCasc)this.Master).setError = e.Message;
            }

            ControlsMng.setEnabledControls(false, new WebControl[] {
                ddlBodega,
                //aquiDocReqtxt_doc_req,
                ddlCortina,
                txt_fecha,
                txt_hora_llegada,
                txt_origen,
                txt_sello,
                txt_talon,
                ddlCustodia,
                txt_operador
            });
        }
예제 #4
0
        public static void getEntrada(string FilePath, string rptPath, Entrada oE, DataSet ds)
        {
            try
            {
                int            bultoRecibido = 0;
                CultureInfo    ci            = new CultureInfo("es-MX");
                ReportDocument reporte       = new ReportDocument();
                reporte.Load(rptPath);

                foreach (Entrada_documento oED in oE.PLstEntDoc)
                {
                    DataRow dr = ds.Tables["entsaldoc"].NewRow();
                    dr["documento"]  = oED.PDocumento.Nombre;
                    dr["referencia"] = oED.Referencia;
                    ds.Tables["entsaldoc"].Rows.Add(dr);
                }
                reporte.Subreports[0].SetDataSource(ds.Tables["entsaldoc"]);
                #region Datos de la entrada
                reporte.SetParameterValue("direccion_bodega", oE.PBodega.Direccion);
                reporte.SetParameterValue("bodega", oE.PBodega.Nombre);
                reporte.SetParameterValue("cortina", oE.Cortina);
                reporte.SetParameterValue("cliente", oE.Cliente);
                reporte.SetParameterValue("folio", oE.Folio + oE.Folio_indice);
                reporte.SetParameterValue("fecha", oE.Fecha.ToString("dd \\de MMM \\de yyyy", ci));
                reporte.SetParameterValue("hora", oE.Hora.ToString());
                reporte.SetParameterValue("origen", oE.Origen);
                reporte.SetParameterValue("tipoEntrada", "Entrada Única");
                #endregion

                #region Datos de la mercancia
                reporte.SetParameterValue("documento", oE.Referencia);
                reporte.SetParameterValue("mercancia", oE.Mercancia);
                reporte.SetParameterValue("pallet", oE.No_pallet.ToString());
                reporte.SetParameterValue("caja_declarada", oE.No_bulto_declarado.ToString());
                reporte.SetParameterValue("caja_recibida", oE.No_bulto_recibido.ToString());

                reporte.SetParameterValue("cajaxrecibir", 0);
                reporte.SetParameterValue("piezaxrecibir", 0);

                bultoRecibido = oE.No_bulto_recibido;

                reporte.SetParameterValue("tipoEntrada", "Única");
                reporte.SetParameterValue("no_entrada", string.Empty);

                if (oE.PEntPar != null)
                {
                    if (oE.PEntPar.No_entrada > 0)
                    {
                        reporte.SetParameterValue("tipoEntrada", "Parcial");
                        reporte.SetParameterValue("no_entrada", "No: " + oE.PEntPar.No_entrada.ToString() + (oE.PEntPar.Es_ultima ? " - Última" : string.Empty));
                        reporte.SetParameterValue("cajaxrecibir", Convert.ToString(oE.No_bulto_declarado - oE.No_bulto_recibido));
                        Entrada_parcial oEP = EntradaCtrl.ParcialGetByReferencia(oE.Referencia, true, oE.Id);
                        int             piezasPorRecibir = oE.No_pieza_declarada - oEP.No_pieza_recibidas;
                        reporte.SetParameterValue("piezaxrecibir", piezasPorRecibir.ToString());
                        bultoRecibido = oEP.No_bulto_recibido;
                    }
                }
                int diferenciaBulto = oE.No_bulto_declarado - bultoRecibido;
                reporte.SetParameterValue("caja_sobrante", "0");
                reporte.SetParameterValue("caja_faltante", "0");
                if (diferenciaBulto > 0)
                {
                    reporte.SetParameterValue("caja_faltante", diferenciaBulto.ToString());
                }
                if (diferenciaBulto < 0)
                {
                    reporte.SetParameterValue("caja_sobrante", Math.Abs(diferenciaBulto).ToString());
                }

                if (oE.PEntPar != null && oE.PEntPar.Id > 0)
                {
                    if (!oE.PEntPar.Es_ultima)
                    {
                        reporte.SetParameterValue("caja_faltante", 0);
                    }
                    else
                    {
                        reporte.SetParameterValue("cajaxrecibir", 0);
                        reporte.SetParameterValue("piezaxrecibir", 0);
                    }
                }

                reporte.SetParameterValue("cajadanada", oE.No_bulto_danado.ToString());
                reporte.SetParameterValue("cajaabierta", oE.No_bulto_abierto.ToString());
                reporte.SetParameterValue("pieza_declarada", oE.No_pieza_declarada.ToString());
                reporte.SetParameterValue("pieza_recibida", oE.No_pieza_recibida.ToString());
                #endregion

                #region Documentos Entrada

                StringBuilder             sbCompartida    = new StringBuilder();
                int                       saltoCompartida = 1;
                List <Entrada_compartida> lstECActive     = oE.PLstEntComp.FindAll(p => p.IsActive == true);
                foreach (Entrada_compartida oEC in lstECActive)
                {
                    if (string.Compare(oE.Referencia, oEC.Referencia) != 0)
                    {
                        sbCompartida.Append(oEC.Referencia);
                        if (saltoCompartida % 2 == 0)
                        {
                            sbCompartida.AppendLine();
                            saltoCompartida = 0;
                        }
                        else
                        {
                            sbCompartida.Append(", ");
                        }
                        saltoCompartida++;
                    }
                }

                if (sbCompartida.Length == 0)
                {
                    reporte.SetParameterValue("compartidas", "NO COMPARTIDA");
                }
                else
                {
                    reporte.SetParameterValue("compartidas", sbCompartida.ToString().Substring(0, sbCompartida.ToString().Length - 2));
                }

                #endregion

                #region Datos del Transporte

                StringBuilder sbET = new StringBuilder();
                //foreach (Entrada_transporte oET in oE.PLstEntTrans)
                //{
                //    sbET.Append("Linea: " + oET.Transporte_linea + ", Tipo: " + oET.Transporte_tipo);
                //    if (string.Compare(oET.Placa, "N.A.") != 0)
                //        sbET.Append(", Placa: " + oET.Placa);
                //    if (string.Compare(oET.Caja, "N.A.") != 0)
                //        sbET.Append(", Caja: " + oET.Caja);
                //    if (string.Compare(oET.Caja1, "N.A.") != 0)
                //        sbET.Append(", Contenedor 1: " + oET.Caja1);
                //    if (string.Compare(oET.Caja2, "N.A.") != 0)
                //        sbET.Append(", Contenedor 2: " + oET.Caja2);
                //    sbET.AppendLine();
                //}
                sbET.Append("Linea: " + oE.Transporte_linea + ", Tipo: " + oE.Transporte_tipo);
                if (string.Compare(oE.Placa, "N.A.") != 0)
                {
                    sbET.Append(", Placa: " + oE.Placa);
                }
                if (string.Compare(oE.Caja, "N.A.") != 0)
                {
                    sbET.Append(", Caja: " + oE.Caja);
                }
                if (string.Compare(oE.Caja1, "N.A.") != 0)
                {
                    sbET.Append(", Contenedor 1: " + oE.Caja1);
                }
                if (string.Compare(oE.Caja2, "N.A.") != 0)
                {
                    sbET.Append(", Contenedor 2: " + oE.Caja2);
                }
                sbET.AppendLine();

                reporte.SetParameterValue("transporte", sbET.ToString());
                reporte.SetParameterValue("sello", oE.Sello);
                reporte.SetParameterValue("custodia", oE.Custodia);

                #endregion

                #region Otros Datos

                reporte.SetParameterValue("horaDescarga", oE.Hora_descarga.ToString());
                reporte.SetParameterValue("tipoDescarga", oE.Tipo_carga);
                reporte.SetParameterValue("observaciones", "Se recibe unidad y/o contenedor sin daños o menoscabos. " + oE.Observaciones);

                #endregion

                #region Firmas

                reporte.SetParameterValue("operador", oE.Operador);
                reporte.SetParameterValue("usuario", oE.PUsuario.Nombre);
                reporte.SetParameterValue("vigilante", oE.Vigilante);

                #endregion

                List <string> files    = new List <string>();
                string        fileName = string.Empty;

                foreach (Cliente_copia itemCC in oE.PLstCCopia)
                {
                    fileName = System.IO.Path.GetTempPath() + Guid.NewGuid().ToString() + ".pdf";
                    reporte.SetParameterValue("copiaPara", itemCC.Nombre);
                    reporte.ExportToDisk(CrystalDecisions.Shared.ExportFormatType.PortableDocFormat, fileName);
                    files.Add(fileName);
                }

                DocConcat.ConcatPdfFiles(files.ToArray(), FilePath);
                //reporte.ExportToDisk(CrystalDecisions.Shared.ExportFormatType.PortableDocFormat, FilePath);
            }
            catch
            {
                throw;
            }
        }
예제 #5
0
        public static void getEntrada(string FilePath, string TemplatePath, Entrada oE)
        {
            PdfReader  reader  = null;
            PdfStamper stamper = null;

            try
            {
                reader  = new PdfReader(TemplatePath);
                stamper = new PdfStamper(reader, new FileStream(FilePath, FileMode.Create));

                AcroFields fields = stamper.AcroFields;

                // set form fields

                fields.SetField("BodegaDireccion", oE.PBodega.Direccion);
                fields.SetField("Bodega", oE.Bodega);
                fields.SetField("Cortina", oE.Cortina);
                fields.SetField("Folio", oE.Folio + oE.Folio_indice);

                CultureInfo ci = new CultureInfo("es-MX");

                fields.SetField("Fecha", oE.Fecha.ToString("dd \\de MMM \\de yyyy", ci));
                fields.SetField("Hora", oE.Hora.ToString());

                fields.SetField("Cliente", oE.Cliente);
                fields.SetField("Origen", oE.Origen);

                StringBuilder sbET = new StringBuilder();
                sbET.Append("Linea: " + oE.Transporte_linea + ", Tipo: " + oE.Transporte_tipo);
                if (string.Compare(oE.Placa, "N.A.") != 0)
                {
                    sbET.Append(", Placa: " + oE.Placa);
                }
                if (string.Compare(oE.Caja, "N.A.") != 0)
                {
                    sbET.Append(", Caja: " + oE.Caja);
                }
                if (string.Compare(oE.Caja1, "N.A.") != 0)
                {
                    sbET.Append(", Contenedor 1: " + oE.Caja1);
                }
                if (string.Compare(oE.Caja2, "N.A.") != 0)
                {
                    sbET.Append(", Contenedor 2: " + oE.Caja2);
                }
                sbET.AppendLine();

                fields.SetField("Transporte", sbET.ToString());

                fields.SetField("DocRef", oE.Referencia);

                fields.SetField("Mercancia", oE.Mercancia);
                fields.SetField("Sello", oE.Sello);
                fields.SetField("Talon", oE.Talon);
                fields.SetField("Custodia", oE.Custodia);
                fields.SetField("Operador", oE.Operador);

                StringBuilder sbDocAnexos = new StringBuilder();
                foreach (Entrada_documento oED in oE.PLstEntDoc)
                {
                    sbDocAnexos.Append(oED.PDocumento.Nombre + ": " + oED.Referencia).AppendLine();
                }
                fields.SetField("DocAnexos", sbDocAnexos.ToString());
                if (sbDocAnexos.Length == 0)
                {
                    fields.SetField("DocAnexos", "SIN DOCUMENTOS");
                }

                StringBuilder             sbCompartida    = new StringBuilder();
                int                       saltoCompartida = 1;
                List <Entrada_compartida> lstECActive     = oE.PLstEntComp.FindAll(p => p.IsActive == true);
                foreach (Entrada_compartida oEC in lstECActive)
                {
                    if (string.Compare(oE.Referencia, oEC.Referencia) != 0)
                    {
                        sbCompartida.Append(oEC.Referencia);
                        if (saltoCompartida % 2 == 0)
                        {
                            sbCompartida.AppendLine();
                            saltoCompartida = 0;
                        }
                        else
                        {
                            sbCompartida.Append(", ");
                        }
                        saltoCompartida++;
                    }
                }

                if (sbCompartida.Length == 0)
                {
                    fields.SetField("Compartida", "NO COMPARTIDA");
                }
                else
                {
                    fields.SetField("Compartida", sbCompartida.ToString().Substring(0, sbCompartida.ToString().Length - 2));
                }

                fields.SetField("NoEntrada", string.Empty);

                fields.SetField("TipoEntrada", "Única");
                fields.SetField("BultoPorRecibir", "0");
                if (oE.PEntPar != null)
                {
                    if (oE.PEntPar.No_entrada > 0)
                    {
                        fields.SetField("NoEntrada", "Parcial No: " + oE.PEntPar.No_entrada.ToString() + (oE.PEntPar.Es_ultima ? "-Ultima" : string.Empty));
                        fields.SetField("TipoEntrada", "Parcial");
                        fields.SetField("BultoPorRecibir", Convert.ToString(oE.No_bulto_declarado - oE.No_bulto_recibido));
                        Entrada_parcial oEP = EntradaCtrl.ParcialGetByReferencia(oE.Referencia, true);
                        int             piezasPorRecibir = oE.No_pieza_declarada - oEP.No_pieza_recibidas;
                        fields.SetField("PiezaPorRecibir", piezasPorRecibir.ToString());
                    }
                }
                if (!oE.IsActive)
                {
                    if (!oE.Es_unica)
                    {
                        fields.SetField("NoEntrada", "Parcial Cancelada");
                    }
                }

                fields.SetField("CintaAduanal", oE.No_caja_cinta_aduanal.ToString());
                fields.SetField("Pallet", oE.No_pallet.ToString());
                fields.SetField("BultoDeclarado", oE.No_bulto_declarado.ToString());
                fields.SetField("BultoRecibido", oE.No_bulto_recibido.ToString());

                int diferenciaBulto = oE.No_bulto_declarado - oE.No_bulto_recibido;
                fields.SetField("BultoSobrante", "0");
                fields.SetField("BultoFaltante", "0");
                if (diferenciaBulto > 0)
                {
                    fields.SetField("BultoFaltante", diferenciaBulto.ToString());
                }
                if (diferenciaBulto < 0)
                {
                    fields.SetField("BultoSobrante", Math.Abs(diferenciaBulto).ToString());
                }

                fields.SetField("PiezaDeclarada", oE.No_pieza_declarada.ToString());
                fields.SetField("PiezaRecibida", oE.No_pieza_recibida.ToString());
                fields.SetField("BultoDanado", oE.No_bulto_danado.ToString());
                fields.SetField("BultoAbierto", oE.No_bulto_abierto.ToString());

                fields.SetField("Almacen", oE.PUsuario.Nombre);
                fields.SetField("Vigilante", oE.Vigilante);
                fields.SetField("Observaciones", "Se recibe unidad y/o contenedor sin daños o menoscabos. " + oE.Observaciones);
                fields.SetField("tipo_carga", oE.Tipo_carga);

                stamper.FormFlattening = true;
            }
            catch (Exception)
            {
                throw;
            }
            finally
            {
                stamper.Close();
                reader.Close();
            }
        }