internal void fillLstCtaContable()
 {
     try
     {
         this.comm = GenericDataAccess.CreateCommandSP("sp_Entrada_inventario");
         addParameters(15);
         this.dt = GenericDataAccess.ExecuteSelectCommand(comm);
         this._oEntrada_inventario.PLstCteMercCta = new List <catalog.Cliente_mercancia_cuenta>();
         Cliente_mercancia_cuentaMng oCMCMng = new Cliente_mercancia_cuentaMng();
         foreach (DataRow dr in dt.Rows)
         {
             Cliente_mercancia_cuenta o = new Cliente_mercancia_cuenta();
             oCMCMng.BindByDataRow(dr, o);
             this._oEntrada_inventario.PLstCteMercCta.Add(o);
         }
     }
     catch
     {
         throw;
     }
 }
        private static void insertaFila(Worksheet sheet, int fila, factura o)
        {
            sheet.Cells[fila, 7]  = "MEXICO";
            sheet.Cells[fila, 8]  = "TRAILER 48 CAJA SECA";
            sheet.Cells[fila, 9]  = o.ManiobraEntradaSalida.ToString();
            sheet.Cells[fila, 10] = o.ManiobraEntradaSalidaCantidad.ToString();
            ((Range)sheet.Cells[fila, 11]).FormulaR1C1 = "=RC[-2]*RC[-1]"; //=FC(-2)*FC(-1)

            #region Etiquetado
            sheet.Cells[fila, 12] = o.EtiquetaAduana19x10;
            sheet.Cells[fila, 13] = o.Piezas19x10;
            sheet.Cells[fila, 14] = o.EtiquetaAduana10x10;
            sheet.Cells[fila, 15] = o.Piezas10x10;
            ((Range)sheet.Cells[fila, 16]).FormulaR1C1 = "=(RC[-4]*RC[-3])+(RC[-2]*RC[-1])";//=(FC(-4)*FC(-3))+(FC(-2)*FC(-1))
            #endregion

            sheet.Cells[fila, 17] = o.Referencia;

            #region Trasnportes
            int NoCol        = 18;
            int NumParciales = 0;

            for (; NumParciales < o.LstTransporte.Count; NumParciales++)
            {
                Transporte oT = o.LstTransporte[NumParciales];
                sheet.Cells[fila, NoCol] = oT.Valor;
                NoCol++;
                sheet.Cells[fila, NoCol] = oT.Porcentaje;
                NoCol++;
            }
            int NoVacios = _maxColTransportes - o.LstTransporte.Count;
            for (NumParciales = 0; NumParciales < NoVacios; NumParciales++)
            {
                sheet.Cells[fila, NoCol] = 0;
                NoCol++;
                sheet.Cells[fila, NoCol] = 0;
                NoCol++;
            }
            #endregion

            #region Maniobras
            NoCol        = 18 + _maxColTransportes * 2;
            NumParciales = 0;

            for (; NumParciales < o.LstManiobra.Count; NumParciales++)
            {
                Maniobra oM = o.LstManiobra[NumParciales];
                sheet.Cells[fila, NoCol] = oM.Valor;
                NoCol++;
                sheet.Cells[fila, NoCol] = oM.Porcentaje;
                NoCol++;
            }
            NoVacios = _maxColManiobras - o.LstManiobra.Count;
            for (NumParciales = 0; NumParciales < NoVacios; NumParciales++)
            {
                sheet.Cells[fila, NoCol] = 0;
                NoCol++;
                sheet.Cells[fila, NoCol] = 0;
                NoCol++;
            }
            #endregion

            #region Otros
            sheet.Cells[fila, NoCol] = findOtroServicio(o.LstOtros, "Custodia").Cantidad;
            NoCol++;
            sheet.Cells[fila, NoCol] = findOtroServicio(o.LstOtros, "Custodia").Valor;
            NoCol++;
            sheet.Cells[fila, NoCol] = findOtroServicio(o.LstOtros, "Viaticos").Valor;
            NoCol++;
            sheet.Cells[fila, NoCol] = findOtroServicio(o.LstOtros, "Dictamen").Cantidad;
            NoCol++;
            sheet.Cells[fila, NoCol] = findOtroServicio(o.LstOtros, "Dictamen").Valor;
            NoCol++;
            ((Range)sheet.Cells[fila, NoCol]).FormulaR1C1 = "=RC[-3]+RC[-1]";
            NoCol++;
            #endregion

            #region Emplayado
            sheet.Cells[fila, NoCol] = o.PEmplayado.Valor;
            NoCol++;
            sheet.Cells[fila, NoCol] = o.PEmplayado.Cantidad;
            NoCol++;
            ((Range)sheet.Cells[fila, NoCol]).FormulaR1C1 = "=RC[-2]*RC[-1]";
            NoCol++;
            #endregion

            #region NoCuenta
            StringBuilder sbOC = new StringBuilder();
            foreach (Cliente_mercancia_cuenta itemCMC in o.PEntInv.PLstCteMercCta)
            {
                sbOC.Append(itemCMC.Orden.Replace(",", "/") + "/");
            }
            sheet.Cells[fila, NoCol] = sbOC.ToString().Substring(0, sbOC.ToString().Length - 1);

            NoCol++;
            NoVacios     = _maxColCuentasCont - o.PEntInv.PLstCteMercCta.Count;
            NumParciales = 0;
            for (; NumParciales < o.PEntInv.PLstCteMercCta.Count; NumParciales++)
            {
                Cliente_mercancia_cuenta oCMC = o.PEntInv.PLstCteMercCta[NumParciales];
                sheet.Cells[fila, NoCol] = oCMC.Cuenta;
                NoCol++;
            }

            NoCol += NoVacios;
            #endregion

            #region Sumatoria
            string formulaSumatoria = "=RC[-" + (2 + _maxColCuentasCont).ToString() + "]+RC[-" + (5 + _maxColCuentasCont).ToString() + "]+RC[-" + (9 + _maxColCuentasCont).ToString() + "]";
            int    sigCol           = 12 + _maxColCuentasCont;
            for (int iS = 1; iS <= _maxColManiobras; iS++)
            {
                formulaSumatoria += "+RC[-" + sigCol.ToString() + "]";
                sigCol           += 2;
            }
            for (int iS = 1; iS <= _maxColTransportes; iS++)
            {
                formulaSumatoria += "+RC[-" + sigCol.ToString() + "]";
                sigCol           += 2;
            }

            formulaSumatoria += "+RC[-" + sigCol.ToString() + "]";
            sigCol           += 5;
            formulaSumatoria += "+RC[-" + sigCol.ToString() + "]";
            ((Range)sheet.Cells[fila, NoCol]).FormulaR1C1 = formulaSumatoria;
            #endregion

            #region Iva y Total
            NoCol++;
            ((Range)sheet.Cells[fila, NoCol]).FormulaR1C1 = "=RC[-1]*.16";
            NoCol++;
            ((Range)sheet.Cells[fila, NoCol]).FormulaR1C1 = "=RC[-1]+RC[-2]";
            #endregion
        }