430// loProveedor._RECC = false; // Siempre a false pues actualmente en el proceso interviene FOX y no se podria hacer la prueba.
431// loProveedor._FactBanco = "57200001";
432// loProveedor._Contrapartida = "";
433// loProveedor._Save();
434// }
435
436
437// /// <summary>
438// /// Comprobar datos propios de la prueba
439// /// </summary>
440// public void ComprobarDatosPrueba()
441// {
442
443// // Verifico que tengo el proveedor en la bd.
444// if (!string.IsNullOrWhiteSpace(this._Proveedor))
445// {
446// sage.ew.docscompra.Proveedor loProveedor = new sage.ew.docscompra.Proveedor();
447// loProveedor._Codigo = this._Proveedor;
448// loProveedor._Load();
449// Assert.AreEqual(ewMante._EstadosMantenimiento.MostrandoRegistro, loProveedor._Estado, "No existe el proveedor " + this._Proveedor);
450// }
451
452
453// // Verifico que tengo la contrapartida en la bd.
454// if (!string.IsNullOrWhiteSpace(this._Contrapartida))
455// {
456// Cuenta loCuenta = new Cuenta();
457// loCuenta._Codigo = this._Contrapartida;
458// loCuenta._Load();
459// Assert.AreEqual(ewMante._EstadosMantenimiento.MostrandoRegistro, loCuenta._Estado, "No existe la contrapartida " + this._Contrapartida);
460// }
461
462// // Verifico que tengo el TIPOIVA en la bd.
463// TipoIVA loTipoIva = new TipoIVA();
464// loTipoIva._Codigo = this._TipoIva;
465// loTipoIva._Load();
466// Assert.AreEqual(ewMante._EstadosMantenimiento.MostrandoRegistro, loTipoIva._Estado, "No existe el tipo de IVA " + this._TipoIva + " para el test AsientosFacturasCompraGeneradorTest");
467
468
469
470// // Verifico que tengo el TIPORET en la bd.
471// TipoRetencion loTipoRet = new TipoRetencion();
472// loTipoRet._Codigo = this._TipoRet;
473// loTipoRet._Load();
474// Assert.AreEqual(ewMante._EstadosMantenimiento.MostrandoRegistro, loTipoRet._Estado, "No existe el tipo de retención " + this._TipoRet + " para el test AsientosFacturasCompraGeneradorTest");
475// }
476
477
478// /// <summary>
479// /// Eliminar datos que pueda haber de la factura que se pretende generar.
480// /// </summary>
481// public void EliminacionDatosPruebasAnteriores()
482// {
483// bool llOk = true;
484
485// if (!string.IsNullOrWhiteSpace(this._Empresa) && !string.IsNullOrWhiteSpace(this._Proveedor) && !string.IsNullOrWhiteSpace(this._Factura))
486// {
487// llOk = DB.SQLExec("delete from " + DB.SQLDatabase("gestion", "asientos") + " where empresa='" + this._Empresa + "' and proveedor='" + this._Proveedor +
488// "' and factura='" + this._Factura + "'");
489// Assert.AreEqual(true, llOk, "No se pudo preparar correctamente la prueba, no se pudo eliminar el asiento para la factura la (EMPRESA, PROVEEDOR, FACTURA) (" + this._Empresa + "," + this._Proveedor + "," + this._Factura + ")");
490// }
491
492// if (this._FacturaCee!=0)
493// {
494// // Borrar datos de la factura que se pretende generar en FRACEE
495// llOk = DB.SQLExec("delete from " + DB.SQLDatabase("gestion", "fracee") + " where empresa='" + this._Empresa + "' " +
498// Assert.AreEqual(true, llOk, "No se pudo preparar correctamente la prueba, no se pudieron eliminar los registros de FRACEE para la (EMPRESA, CUENTA, FACTURA, FRACEE) (" + this._Empresa + "," + this._Proveedor + "," + this._Factura + "," +this._FacturaCee.ToString().Trim()+")");
499
500// // Borrar datos de la factura que se pretende generar en IVAREPER
501// llOk = DB.SQLExec("delete from " + DB.SQLDatabase("gestion", "ivareper") + " where empresa='" + this._Empresa + "' " +
504// Assert.AreEqual(true, llOk, "No se pudo preparar correctamente la prueba, no se pudieron eliminar los registros de IVAREPER para la (EMPRESA, CUENTA, FACTURA, FRACEE) (" + this._Empresa + "," + this._Proveedor + "," + this._Factura + "," + this._FacturaCee.ToString().Trim() + ")");
505// }
506
507// // Borrar datos de la factura que se pretende generar en IVASOPOR
508// llOk = DB.SQLExec("delete from " + DB.SQLDatabase("gestion", "ivasopor") + " where empresa='" + this._Empresa + "' and cuenta='" + this._Proveedor + "' and numfra='" + this._Factura + "'");
509// Assert.AreEqual(true, llOk, "No se pudo preparar correctamente la prueba, no se pudieron eliminar los registros de IVASOPOR para la (EMPRESA, CUENTA, FACTURA) (" + this._Empresa + "," + this._Proveedor + "," + this._Factura + ")");
510
511// // Borrar datos de la factura que se pretende generar en IVA_EXEN
512// llOk = DB.SQLExec("delete from " + DB.SQLDatabase("gestion", "iva_exen") + " where empresa='" + this._Empresa + "' and cuenta='" + this._Proveedor + "' and factura='" + this._Factura + "' and tipo=1");
513// Assert.AreEqual(true, llOk, "No se pudo preparar correctamente la prueba, no se pudieron eliminar los registros de IVA_EXEN para la (EMPRESA, CUENTA, FACTURA) (" + this._Empresa + "," + this._Proveedor + "," + this._Factura + ")");
514
515// // Borrar datos de la factura que se pretende generar en RETREPER
516// llOk = DB.SQLExec("delete from " + DB.SQLDatabase("gestion", "retreper") + " where empresa='" + this._Empresa + "' and cuenta='" + this._Proveedor + "' and numfra='" + this._Factura + "'");
517// Assert.AreEqual(true, llOk, "No se pudo preparar correctamente la prueba, no se pudieron eliminar los registros de RETREPER para la (EMPRESA, CUENTA, FACTURA) (" + this._Empresa + "," + this._Proveedor + "," + this._Factura + ")");
518
519// // Borrar datos de la factura que se pretende generar en PREVIS
520// llOk = DB.SQLExec("delete from " + DB.SQLDatabase("comunes", "previs") + " where empresa='" + this._Empresa + "' and proveedor='" + this._Proveedor + "' and factura='" + this._Factura + "'");
521// Assert.AreEqual(true, llOk, "No se pudo preparar correctamente la prueba, no se pudieron eliminar los registros de PREVIS para la (EMPRESA, PROVEEDOR, FACTURA) (" + this._Empresa + "," + this._Proveedor + "," + this._Factura + ")");
522
523// // Borrar datos de la factura que se pretende generar en EOS
524// llOk = DB.SQLExec("delete from " + DB.SQLDatabase("gestion", "eos") + " where empresa='" + this._Empresa + "' and factura='" + this._Factura + "'");
525// Assert.AreEqual(true, llOk, "No se pudo preparar correctamente la prueba, no se pudieron eliminar los registros de EOS para la (EMPRESA, FACTURA) (" + this._Empresa + "," + this._Factura + ")");
526// }
527
528
529// /// <summary>
530// /// Prueba de creación de asiento de factura de compra TEST1:
531// /// Retencion proveedor: no
532// /// Rec.Equiv proveedor: no
533// /// Pronto pago: no
534// /// Asiento de compra a proveedor sin retención, sin pronto pago, sin recargo, proveedor nacional, IVA al 21%
535// /// Base 1000, IVA 210, Total 1210
536// ///</summary>
537// [Owner(Owners.JoseMaria_Gay),
538// TestMethod(),
539// Description("Asiento de factura de compra a proveedor sin retención, sin pronto pago, sin recargo, proveedor nacional, IVA 21%, Base 1000, IVA 210, Total 1210"),
540// DeploymentItem("sage.50.exe")]
541// [Priority(1)]
542// public void AsientosFacturasComprasGeneradorTest1()
543// {
544// bool llOk = false;
545
546// int lnNumFacCompra = Convert.ToInt32(EW_GLOBAL._GetLenCampo(KeyDiccionarioLenCampos.wn_factcompra));
621// Assert.AreEqual(llOk, true, "Test 1 GeneradorAsientosFacturasCompra. No se pudo generar el asiento de factura de compra de la prueba para la factura " +
640// Assert.AreEqual(3, loAsiento._Lineas.Count, "Test 1 GeneradorAsientosFacturasCompra. Asiento generado correctamente pero se esperaban 3 lineas y tiene " + loAsiento._Lineas.Count.ToString());
641// if (loAsiento._Lineas.Count == 3)
642// {
643// TipoIVA loTipoIva = new TipoIVA();
644
645// loTipoIva._Codigo = this._TipoIva;
646
647// // Verificamos que en cada linea haya la cuenta que esperamos
648// Assert.AreEqual(this._Proveedor, loAsiento._Lineas[0]._Cuenta, "Test 1 GeneradorAsientosFacturasCompra. La primera linea del asiento debería tener cuenta contable " + this._Proveedor + " y es " + loAsiento._Lineas[0]._Cuenta);
649// Assert.AreEqual(this._Contrapartida, loAsiento._Lineas[1]._Cuenta, "Test 1 GeneradorAsientosFacturasCompra. La segunda linea del asiento debería tener cuenta contable de gastos " + this._Contrapartida + " y es " + loAsiento._Lineas[1]._Cuenta);
650// Assert.AreEqual(loTipoIva._Cta_IVA_Sop, loAsiento._Lineas[2]._Cuenta, "Test 1 GeneradorAsientosFacturasCompra. La tercera linea del asiento debería tener cuenta contable de IVA " + loTipoIva._Cta_IVA_Sop + " y es " + loAsiento._Lineas[2]._Cuenta);
651
652
653// // Verificamos que en cada linea haya el importe que esperamos
654// Assert.AreEqual(1210, loAsiento._Lineas[0]._Haber, "Test 1 GeneradorAsientosFacturasCompra. La primera linea del asiento debería tener importe 1210 en el HABER y tiene " + loAsiento._Lineas[0]._Haber);
655// Assert.AreEqual(1000, loAsiento._Lineas[1]._Debe, "Test 1 GeneradorAsientosFacturasCompra. La segunda linea del asiento debería tener importe 1000 en el DEBE y tiene " + loAsiento._Lineas[1]._Debe);
656// Assert.AreEqual(210, loAsiento._Lineas[2]._Debe, "Test 1 GeneradorAsientosFacturasCompra. La tercera linea del asiento debería tener importe 210 en el DEBE y tiene " + loAsiento._Lineas[2]._Debe);
657
658// // Verificamos un registro en IVASOPOR.
659// DataTable ldtRegIvasopor = new DataTable();
660// llOk = DB.SQLExec("select * from " + DB.SQLDatabase("gestion", "ivasopor") + " where empresa='" + this._Empresa + "' and cuenta='" + this._Proveedor + "' and numfra='" + this._Factura + "'", ref ldtRegIvasopor);
661// Assert.AreEqual(1, ldtRegIvasopor.Rows.Count, "Test 1 GeneradorAsientosFacturasCompra, asiento generado pero no se ha detectado registro de IVASOPOR en el asientos para la factura (EMPRESA, PROVEEDOR, FACTURA) (" + this._Empresa + "," + this._Proveedor + "," + this._Factura + ")");
662
663// // Verificamos previsiones de pago generadas.
664// DataTable ldtRegPrevis = new DataTable();
665// llOk = DB.SQLExec("select * from " + DB.SQLDatabase("comunes", "previs") + " where empresa='" + this._Empresa + "' and proveedor='" + this._Proveedor + "' and factura='" + this._Factura + "'", ref ldtRegPrevis);
666// Assert.IsTrue(ldtRegPrevis.Rows.Count > 0, "Test 1 GeneradorAsientosFacturasCompra, asiento generado pero no se ha detectado registros en COMUNES.PREVIS para la factura (EMPRESA, PROVEEDOR, FACTURA) (" + this._Empresa + "," + this._Proveedor + "," + this._Factura + ")");
667
668// // Verificamos registros EOS (contrapartida)
669// DataTable ldtRegEOS = new DataTable();
670// llOk = DB.SQLExec("select * from " + DB.SQLDatabase("gestion", "eos") + " where empresa='" + this._Empresa + "' and factura='" + this._Factura + "'", ref ldtRegEOS);
671// Assert.IsTrue(ldtRegEOS.Rows.Count > 0, "Test 1 GeneradorAsientosFacturasCompra, asiento generado pero no se ha detectado registros en la tabla EOS para la factura (EMPRESA, FACTURA) (" + this._Empresa + "," + this._Factura + ")");
672// }
673// }
674// }
675// }
676
677// EliminacionDatosPruebasAnteriores();
678// }
679
680
681// /// <summary>
682// /// Prueba de creación de asiento de factura de compra TEST2:
683// /// Retencion proveedor: no
684// /// Rec.Equiv proveedor: si
685// /// Pronto pago: si
686// /// Asiento de compra a proveedor sin retención, con pronto pago, con recargo equiv, proveedor nacional, IVA 21%, RECEQUIV 1%, P.P. 10%
687// /// Base 1000, IVA 210, RecEquiv 10, Total 1220
688// ///</summary>
689// [Owner(Owners.JoseMaria_Gay),
690// TestMethod(),
691// Description("Asiento de factura de compra a proveedor sin retención, con pronto pago, con recargo equiv, proveedor nacional, IVA 21%, RECEQUIV 1%, P.P. 10% Base 1000, IVA 210, RecEquiv 10, Total 1220"),
692// DeploymentItem("sage.50.exe")]
693// [Priority(1)]
694// public void AsientosFacturasComprasGeneradorTest2()
695// {
696// bool llOk = false;
697
698// int lnNumFacCompra = Convert.ToInt32(EW_GLOBAL._GetLenCampo(KeyDiccionarioLenCampos.wn_factcompra));
773// Assert.AreEqual(llOk, true, "Test 2 GeneradorAsientosFacturasCompra. No se pudo generar el asiento de factura de compra de la prueba para la factura " +
792// Assert.AreEqual(5, loAsiento._Lineas.Count, "Test 2 GeneradorAsientosFacturasCompra. Asiento generado correctamente pero se esperaban 5 lineas y tiene " + loAsiento._Lineas.Count.ToString());
793// if (loAsiento._Lineas.Count == 5)
794// {
795// TipoIVA loTipoIva = new TipoIVA();
796
797// loTipoIva._Codigo = this._TipoIva;
798
799// // Verificamos que en cada linea haya la cuenta que esperamos
800// Assert.AreEqual(this._Proveedor, loAsiento._Lineas[0]._Cuenta, "Test 2 GeneradorAsientosFacturasCompra. La primera linea del asiento debería tener cuenta contable " + this._Proveedor + " y es " + loAsiento._Lineas[0]._Cuenta);
801// Assert.AreEqual(this._Contrapartida, loAsiento._Lineas[1]._Cuenta, "Test 2 GeneradorAsientosFacturasCompra. La segunda linea del asiento debería tener cuenta contable de gastos " + this._Contrapartida + " y es " + loAsiento._Lineas[1]._Cuenta);
802// Assert.AreEqual(loTipoIva._Cta_IVA_Sop, loAsiento._Lineas[2]._Cuenta, "Test 2 GeneradorAsientosFacturasCompra. La tercera linea del asiento debería tener cuenta contable de IVA " + loTipoIva._Cta_IVA_Sop + " y es " + loAsiento._Lineas[2]._Cuenta);
803// Assert.AreEqual(loTipoIva._Cta_REC_Sop, loAsiento._Lineas[3]._Cuenta, "Test 2 GeneradorAsientosFacturasCompra. La cuarta linea del asiento debería tener cuenta contable de RECEQUIV " + loTipoIva._Cta_REC_Sop + " y es " + loAsiento._Lineas[3]._Cuenta);
805// Assert.AreEqual(lcCuentaPPCompras, loAsiento._Lineas[4]._Cuenta, "Test 2 GeneradorAsientosFacturasCompra. La quinta linea del asiento debería tener cuenta contable de DTO.P.P. COMPRAS " + lcCuentaPPCompras + " y es " + loAsiento._Lineas[4]._Cuenta);
806
807// // Verificamos que en cada linea haya el importe que esperamos
808// Assert.AreEqual(1220, loAsiento._Lineas[0]._Haber, "Test 2 GeneradorAsientosFacturasCompra. La primera linea del asiento debería tener importe 1220 en el HABER y tiene " + loAsiento._Lineas[0]._Haber);
809// Assert.AreEqual<decimal>(1111.11M, loAsiento._Lineas[1]._Debe, "Test 2 GeneradorAsientosFacturasCompra. La segunda linea del asiento debería tener importe 1111.11 en el DEBE y tiene " + loAsiento._Lineas[1]._Debe);
810// Assert.AreEqual(210, loAsiento._Lineas[2]._Debe, "Test 2 GeneradorAsientosFacturasCompra. La tercera linea del asiento debería tener importe 210 en el DEBE y tiene " + loAsiento._Lineas[2]._Debe);
811// Assert.AreEqual(10, loAsiento._Lineas[3]._Debe, "Test 2 GeneradorAsientosFacturasCompra. La cuarta linea del asiento debería tener importe 10 en el DEBE y tiene " + loAsiento._Lineas[3]._Debe);
812// Assert.AreEqual<decimal>(111.11M, loAsiento._Lineas[4]._Haber, "Test 2 GeneradorAsientosFacturasCompra. La quinta linea del asiento debería tener importe 111.11 en el HABER y tiene " + loAsiento._Lineas[4]._Haber);
813
814// // Verificamos un registro en IVASOPOR.
815// DataTable ldtRegIvasopor = new DataTable();
816// llOk = DB.SQLExec("select * from " + DB.SQLDatabase("gestion", "ivasopor") + " where empresa='" + this._Empresa + "' and cuenta='" + this._Proveedor + "' and numfra='" + this._Factura + "'", ref ldtRegIvasopor);
817// Assert.AreEqual(1, ldtRegIvasopor.Rows.Count, "Test 2 GeneradorAsientosFacturasCompra, asiento generado pero no se ha detectado registro de IVASOPOR en el asientos para la factura (EMPRESA, PROVEEDOR, FACTURA) (" + this._Empresa + "," + this._Proveedor + "," + this._Factura + ")");
818
819// // Verificamos previsiones de pago generadas.
820// DataTable ldtRegPrevis = new DataTable();
821// llOk = DB.SQLExec("select * from " + DB.SQLDatabase("comunes", "previs") + " where empresa='" + this._Empresa + "' and proveedor='" + this._Proveedor + "' and factura='" + this._Factura + "'", ref ldtRegPrevis);
822// Assert.IsTrue(ldtRegPrevis.Rows.Count > 0, "Test 2 GeneradorAsientosFacturasCompra, asiento generado pero no se ha detectado registros en COMUNES.PREVIS para la factura (EMPRESA, PROVEEDOR, FACTURA) (" + this._Empresa + "," + this._Proveedor + "," + this._Factura + ")");
823
824// // Verificamos registros EOS (contrapartida)
825// DataTable ldtRegEOS = new DataTable();
826// llOk = DB.SQLExec("select * from " + DB.SQLDatabase("gestion", "eos") + " where empresa='" + this._Empresa + "' and factura='" + this._Factura + "'", ref ldtRegEOS);
827// Assert.IsTrue(ldtRegEOS.Rows.Count > 0, "Test 2 GeneradorAsientosFacturasCompra, asiento generado pero no se ha detectado registros en la tabla EOS para la factura (EMPRESA, FACTURA) (" + this._Empresa + "," + this._Factura + ")");
828// }
829// }
830// }
831// }
832
833// EliminacionDatosPruebasAnteriores();
834// }
835
836
837// /// <summary>
838// /// Prueba de creación de asiento de factura de compra TEST3:
839// /// Retencion proveedor: si, sobre base.
840// /// Rec.Equiv proveedor: si
841// /// Pronto pago: si
842// /// Asiento de compra a proveedor con retención, con pronto pago, con recargo equiv, proveedor nacional, IVA 21%, RECEQUIV 1%, P.P. 10%, RET.BASE 15%
843// /// Base 1000, IVA 210, RecEquiv 10, Ret. 150, Total 1070
844// ///</summary>
845// [Owner(Owners.JoseMaria_Gay),
846// TestMethod(),
847// Description("Asiento de factura de compra a proveedor con retención, con pronto pago, con recargo equiv, proveedor nacional, IVA 21%, RECEQUIV 1%, P.P. 10%, RET.BASE 15%, Base 1000, IVA 210, RecEquiv 10, Ret. 150, Total 1070"),
848// DeploymentItem("sage.50.exe")]
849// [Priority(1)]
850// public void AsientosFacturasComprasGeneradorTest3()
851// {
852// bool llOk = false;
853
854// int lnNumFacCompra = Convert.ToInt32(EW_GLOBAL._GetLenCampo(KeyDiccionarioLenCampos.wn_factcompra));
929// Assert.AreEqual(llOk, true, "Test 3 GeneradorAsientosFacturasCompra. No se pudo generar el asiento de factura de compra de la prueba para la factura " +
948// Assert.AreEqual(6, loAsiento._Lineas.Count, "Test 3 GeneradorAsientosFacturasCompra. Asiento generado correctamente pero se esperaban 6 lineas y tiene " + loAsiento._Lineas.Count.ToString());
949// if (loAsiento._Lineas.Count == 6)
950// {
951// TipoIVA loTipoIva = new TipoIVA();
952// loTipoIva._Codigo = this._TipoIva;
953
954// TipoRetencion loTipoRet = new TipoRetencion();
955// loTipoRet._Codigo = this._TipoRet;
956
957// // Verificamos que en cada linea haya la cuenta que esperamos
958// Assert.AreEqual(this._Proveedor, loAsiento._Lineas[0]._Cuenta, "Test 3 GeneradorAsientosFacturasCompra. La primera linea del asiento debería tener cuenta contable " + this._Proveedor + " y es " + loAsiento._Lineas[0]._Cuenta);
959// Assert.AreEqual(this._Contrapartida, loAsiento._Lineas[1]._Cuenta, "Test 3 GeneradorAsientosFacturasCompra. La segunda linea del asiento debería tener cuenta contable de gastos " + this._Contrapartida + " y es " + loAsiento._Lineas[1]._Cuenta);
960// Assert.AreEqual(loTipoIva._Cta_IVA_Sop, loAsiento._Lineas[2]._Cuenta, "Test 3 GeneradorAsientosFacturasCompra. La tercera linea del asiento debería tener cuenta contable de IVA " + loTipoIva._Cta_IVA_Sop + " y es " + loAsiento._Lineas[2]._Cuenta);
961// Assert.AreEqual(loTipoIva._Cta_REC_Sop, loAsiento._Lineas[3]._Cuenta, "Test 3 GeneradorAsientosFacturasCompra. La cuarta linea del asiento debería tener cuenta contable de RECEQUIV " + loTipoIva._Cta_REC_Sop + " y es " + loAsiento._Lineas[3]._Cuenta);
963// Assert.AreEqual(lcCuentaPPCompras, loAsiento._Lineas[4]._Cuenta, "Test 3 GeneradorAsientosFacturasCompra. La quinta linea del asiento debería tener cuenta contable de DTO.P.P. COMPRAS " + lcCuentaPPCompras + " y es " + loAsiento._Lineas[4]._Cuenta);
964// Assert.AreEqual(loTipoRet._CTA_RE_REP, loAsiento._Lineas[5]._Cuenta, "Test 3 GeneradorAsientosFacturasCompra. La sexta linea del asiento debería tener cuenta contable de retencion repercutida " + loTipoRet._CTA_RE_REP + " y es " + loAsiento._Lineas[5]._Cuenta);
965
966// // Verificamos que en cada linea haya el importe que esperamos
967// Assert.AreEqual(1070, loAsiento._Lineas[0]._Haber, "Test 3 GeneradorAsientosFacturasCompra. La primera linea del asiento debería tener importe 1070 en el HABER y tiene " + loAsiento._Lineas[0]._Haber);
968// Assert.AreEqual<decimal>(1111.11M, loAsiento._Lineas[1]._Debe, "Test 3 GeneradorAsientosFacturasCompra. La segunda linea del asiento debería tener importe 1111.11 en el DEBE y tiene " + loAsiento._Lineas[1]._Debe);
969// Assert.AreEqual(210, loAsiento._Lineas[2]._Debe, "Test 3 GeneradorAsientosFacturasCompra. La tercera linea del asiento debería tener importe 210 en el DEBE y tiene " + loAsiento._Lineas[2]._Debe);
970// Assert.AreEqual(10, loAsiento._Lineas[3]._Debe, "Test 3 GeneradorAsientosFacturasCompra. La cuarta linea del asiento debería tener importe 10 en el DEBE y tiene " + loAsiento._Lineas[3]._Debe);
971// Assert.AreEqual<decimal>(111.11M, loAsiento._Lineas[4]._Haber, "Test 3 GeneradorAsientosFacturasCompra. La quinta linea del asiento debería tener importe 111.11 en el HABER y tiene " + loAsiento._Lineas[4]._Haber);
972// Assert.AreEqual(150, loAsiento._Lineas[5]._Haber, "Test 3 GeneradorAsientosFacturasCompra. La sexta linea del asiento debería tener importe 150 en el HABER y tiene " + loAsiento._Lineas[5]._Haber);
973
974// // Verificamos un registro en IVASOPOR.
975// DataTable ldtRegIvasopor = new DataTable();
976// llOk = DB.SQLExec("select * from " + DB.SQLDatabase("gestion", "ivasopor") + " where empresa='" + this._Empresa + "' and cuenta='" + this._Proveedor + "' and numfra='" + this._Factura + "'", ref ldtRegIvasopor);
977// Assert.AreEqual(1, ldtRegIvasopor.Rows.Count, "Test 3 GeneradorAsientosFacturasCompra, asiento generado pero no se ha detectado registro de IVASOPOR en el asientos para la factura (EMPRESA, PROVEEDOR, FACTURA) (" + this._Empresa + "," + this._Proveedor + "," + this._Factura + ")");
978
979// // Verificamos un registro en RETREPER
980// DataTable ldtRegRetReper = new DataTable();
981// llOk = DB.SQLExec("select * from " + DB.SQLDatabase("gestion", "retreper") + " where empresa='" + this._Empresa + "' and cuenta='" + this._Proveedor + "' and numfra='" + this._Factura + "'", ref ldtRegRetReper);
982// Assert.AreEqual(1, ldtRegRetReper.Rows.Count, "Test 3 GeneradorAsientosFacturasCompra, asiento generado pero no se ha detectado registro de RETREPER en el asientos para la factura (EMPRESA, PROVEEDOR, FACTURA) (" + this._Empresa + "," + this._Proveedor + "," + this._Factura + ")");
983
984// // Verificamos que el importe de retencion en RETREPER sea el correcto.
985// if (ldtRegRetReper.Rows.Count == 1)
986// Assert.AreEqual(150, Convert.ToDecimal(ldtRegRetReper.Rows[0]["retencio"]), "Test 3 GeneradorAsientosFacturasCompra, asiento generado y detectado registro de RETREPER pero con importe incorrecto para la factura (EMPRESA, PROVEEDOR, FACTURA) (" + this._Empresa + "," + this._Proveedor + "," + this._Factura + "), debería ser 150 y es " + Convert.ToDecimal(ldtRegRetReper.Rows[0]["retencio"]).ToString().Trim());
987
988// // Verificamos previsiones de pago generadas.
989// DataTable ldtRegPrevis = new DataTable();
990// llOk = DB.SQLExec("select * from " + DB.SQLDatabase("comunes", "previs") + " where empresa='" + this._Empresa + "' and proveedor='" + this._Proveedor + "' and factura='" + this._Factura + "'", ref ldtRegPrevis);
991// Assert.IsTrue(ldtRegPrevis.Rows.Count > 0, "Test 3 GeneradorAsientosFacturasCompra, asiento generado pero no se ha detectado registros en COMUNES.PREVIS para la factura (EMPRESA, PROVEEDOR, FACTURA) (" + this._Empresa + "," + this._Proveedor + "," + this._Factura + ")");
992
993// // Verificamos registros EOS (contrapartida)
994// DataTable ldtRegEOS = new DataTable();
995// llOk = DB.SQLExec("select * from " + DB.SQLDatabase("gestion", "eos") + " where empresa='" + this._Empresa + "' and factura='" + this._Factura + "'", ref ldtRegEOS);
996// Assert.IsTrue(ldtRegEOS.Rows.Count > 0, "Test 3 GeneradorAsientosFacturasCompra, asiento generado pero no se ha detectado registros en la tabla EOS para la factura (EMPRESA, FACTURA) (" + this._Empresa + "," + this._Factura + ")");
997// }
998// }
999// }
1000// }
1001
1002// EliminacionDatosPruebasAnteriores();
1003// }
1004
1005
1006// /// <summary>
1007// /// Prueba de creación de asiento de factura de compra TEST4:
1008// /// Retencion proveedor: si, sobre totfac.
1009// /// Rec.Equiv proveedor: si
1010// /// Pronto pago: si
1011// /// Asiento de compra a proveedor con retención, con pronto pago, con recargo equiv, proveedor nacional, IVA 21%, RECEQUIV 1%, P.P. 10%, RET.TOTFAC 15%
1012// /// Base 1000, IVA 210, RecEquiv 10, Ret. 150, Total 1070
1013// ///</summary>
1014// [Owner(Owners.JoseMaria_Gay),
1015// TestMethod(),
1016// Description("Asiento de factura de compra a proveedor con retención, con pronto pago, con recargo equiv, proveedor nacional, IVA 21%, RECEQUIV 1%, P.P. 10%, RET.TOTFAC 15%, Base 1000, IVA 210, RecEquiv 10, Ret. 183, Total 1037"),
1017// DeploymentItem("sage.50.exe")]
1018// [Priority(1)]
1019// public void AsientosFacturasComprasGeneradorTest4()
1020// {
1021// bool llOk = false;
1022
1023// int lnNumFacCompra = Convert.ToInt32(EW_GLOBAL._GetLenCampo(KeyDiccionarioLenCampos.wn_factcompra));
1098// Assert.AreEqual(llOk, true, "Test 4 GeneradorAsientosFacturasCompra. No se pudo generar el asiento de factura de compra de la prueba para la factura " +
1117// Assert.AreEqual(6, loAsiento._Lineas.Count, "Test 4 GeneradorAsientosFacturasCompra. Asiento generado correctamente pero se esperaban 6 lineas y tiene " + loAsiento._Lineas.Count.ToString());
1118// if (loAsiento._Lineas.Count == 6)
1119// {
1120// TipoIVA loTipoIva = new TipoIVA();
1121// loTipoIva._Codigo = this._TipoIva;
1122
1123// TipoRetencion loTipoRet = new TipoRetencion();
1124// loTipoRet._Codigo = this._TipoRet;
1125
1126// // Verificamos que en cada linea haya la cuenta que esperamos
1127// Assert.AreEqual(this._Proveedor, loAsiento._Lineas[0]._Cuenta, "Test 4 GeneradorAsientosFacturasCompra. La primera linea del asiento debería tener cuenta contable " + this._Proveedor + " y es " + loAsiento._Lineas[0]._Cuenta);
1128// Assert.AreEqual(this._Contrapartida, loAsiento._Lineas[1]._Cuenta, "Test 4 GeneradorAsientosFacturasCompra. La segunda linea del asiento debería tener cuenta contable de gastos " + this._Contrapartida + " y es " + loAsiento._Lineas[1]._Cuenta);
1129// Assert.AreEqual(loTipoIva._Cta_IVA_Sop, loAsiento._Lineas[2]._Cuenta, "Test 4 GeneradorAsientosFacturasCompra. La tercera linea del asiento debería tener cuenta contable de IVA " + loTipoIva._Cta_IVA_Sop + " y es " + loAsiento._Lineas[2]._Cuenta);
1130// Assert.AreEqual(loTipoIva._Cta_REC_Sop, loAsiento._Lineas[3]._Cuenta, "Test 4 GeneradorAsientosFacturasCompra. La cuarta linea del asiento debería tener cuenta contable de RECEQUIV " + loTipoIva._Cta_REC_Sop + " y es " + loAsiento._Lineas[3]._Cuenta);
1132// Assert.AreEqual(lcCuentaPPCompras, loAsiento._Lineas[4]._Cuenta, "Test 4 GeneradorAsientosFacturasCompra. La quinta linea del asiento debería tener cuenta contable de DTO.P.P. COMPRAS " + lcCuentaPPCompras + " y es " + loAsiento._Lineas[4]._Cuenta);
1133// Assert.AreEqual(loTipoRet._CTA_RE_REP, loAsiento._Lineas[5]._Cuenta, "Test 4 GeneradorAsientosFacturasCompra. La sexta linea del asiento debería tener cuenta contable de retencion repercutida " + loTipoRet._CTA_RE_REP + " y es " + loAsiento._Lineas[5]._Cuenta);
1134
1135// // Verificamos que en cada linea haya el importe que esperamos
1136// Assert.AreEqual(1037, loAsiento._Lineas[0]._Haber, "Test 4 GeneradorAsientosFacturasCompra. La primera linea del asiento debería tener importe 1037 en el HABER y tiene " + loAsiento._Lineas[0]._Haber);
1137// Assert.AreEqual<decimal>(1111.11M, loAsiento._Lineas[1]._Debe, "Test 4 GeneradorAsientosFacturasCompra. La segunda linea del asiento debería tener importe 1111.11 en el DEBE y tiene " + loAsiento._Lineas[1]._Debe);
1138// Assert.AreEqual(210, loAsiento._Lineas[2]._Debe, "Test 4 GeneradorAsientosFacturasCompra. La tercera linea del asiento debería tener importe 210 en el DEBE y tiene " + loAsiento._Lineas[2]._Debe);
1139// Assert.AreEqual(10, loAsiento._Lineas[3]._Debe, "Test 4 GeneradorAsientosFacturasCompra. La cuarta linea del asiento debería tener importe 10 en el DEBE y tiene " + loAsiento._Lineas[3]._Debe);
1140// Assert.AreEqual<decimal>(111.11M, loAsiento._Lineas[4]._Haber, "Test 4 GeneradorAsientosFacturasCompra. La quinta linea del asiento debería tener importe 111.11 en el HABER y tiene " + loAsiento._Lineas[4]._Haber);
1141// Assert.AreEqual(183, loAsiento._Lineas[5]._Haber, "Test 4 GeneradorAsientosFacturasCompra. La sexta linea del asiento debería tener importe 183 en el HABER y tiene " + loAsiento._Lineas[5]._Haber);
1142
1143// // Verificamos un registro en IVASOPOR.
1144// DataTable ldtRegIvasopor = new DataTable();
1145// llOk = DB.SQLExec("select * from " + DB.SQLDatabase("gestion", "ivasopor") + " where empresa='" + this._Empresa + "' and cuenta='" + this._Proveedor + "' and numfra='" + this._Factura + "'", ref ldtRegIvasopor);
1146// Assert.AreEqual(1, ldtRegIvasopor.Rows.Count, "Test 4 GeneradorAsientosFacturasCompra, asiento generado pero no se ha detectado registro de IVASOPOR en el asientos para la factura (EMPRESA, PROVEEDOR, FACTURA) (" + this._Empresa + "," + this._Proveedor + "," + this._Factura + ")");
1147
1148// // Verificamos un registro en RETREPER
1149// DataTable ldtRegRetReper = new DataTable();
1150// llOk = DB.SQLExec("select * from " + DB.SQLDatabase("gestion", "retreper") + " where empresa='" + this._Empresa + "' and cuenta='" + this._Proveedor + "' and numfra='" + this._Factura + "'", ref ldtRegRetReper);
1151// Assert.AreEqual(1, ldtRegRetReper.Rows.Count, "Test 4 GeneradorAsientosFacturasCompra, asiento generado pero no se ha detectado registro de RETREPER en el asientos para la factura (EMPRESA, PROVEEDOR, FACTURA) (" + this._Empresa + "," + this._Proveedor + "," + this._Factura + ")");
1152
1153// // Verificamos que el importe de retencion en RETREPER sea el correcto.
1154// if (ldtRegRetReper.Rows.Count == 1)
1155// Assert.AreEqual(183, Convert.ToDecimal(ldtRegRetReper.Rows[0]["retencio"]), "Test 4 GeneradorAsientosFacturasCompra, asiento generado y detectado registro de RETREPER pero con importe incorrecto para la factura (EMPRESA, PROVEEDOR, FACTURA) (" + this._Empresa + "," + this._Proveedor + "," + this._Factura +
1156// "), debería ser 183 y es " + Convert.ToDecimal(ldtRegRetReper.Rows[0]["retencio"]).ToString().Trim());
1157
1158// // Verificamos previsiones de pago generadas.
1159// DataTable ldtRegPrevis = new DataTable();
1160// llOk = DB.SQLExec("select * from " + DB.SQLDatabase("comunes", "previs") + " where empresa='" + this._Empresa + "' and proveedor='" + this._Proveedor + "' and factura='" + this._Factura + "'", ref ldtRegPrevis);
1161// Assert.IsTrue(ldtRegPrevis.Rows.Count > 0, "Test 4 GeneradorAsientosFacturasCompra, asiento generado pero no se ha detectado registros en COMUNES.PREVIS para la factura (EMPRESA, PROVEEDOR, FACTURA) (" + this._Empresa + "," + this._Proveedor + "," + this._Factura + ")");
1162
1163// // Verificamos registros EOS (contrapartida)
1164// DataTable ldtRegEOS = new DataTable();
1165// llOk = DB.SQLExec("select * from " + DB.SQLDatabase("gestion", "eos") + " where empresa='" + this._Empresa + "' and factura='" + this._Factura + "'", ref ldtRegEOS);
1166// Assert.IsTrue(ldtRegEOS.Rows.Count > 0, "Test 4 GeneradorAsientosFacturasCompra, asiento generado pero no se ha detectado registros en la tabla EOS para la factura (EMPRESA, FACTURA) (" + this._Empresa + "," + this._Factura + ")");
1167// }
1168// }
1169// }
1170// }
1171
1172// EliminacionDatosPruebasAnteriores();
1173// }
1174
1175
1176// /// <summary>
1177// /// Prueba de creación de asiento de factura de compra TEST5:
1178// /// Retencion proveedor: si, sobre totfac, 15%
1179// /// Rec.Equiv proveedor: no
1180// /// Pronto pago: no
1181// /// Asiento de compra a proveedor con retención, sin pronto pago, sin recargo equiv, proveedor nacional, IVA 21%, RET.TOTFAC 15%
1182// /// Base 1000, IVA 210, Ret. 181.5, Total 1028.50
1183// ///</summary>
1184// [Owner(Owners.JoseMaria_Gay),
1185// TestMethod(),
1186// Description("Asiento de factura de compra a proveedor con retención, sin pronto pago, sin recargo equiv, proveedor nacional, IVA 21%, RET.TOTFAC 15%, Base 1000, IVA 210, Ret. 181.5, Total 1028.50"),
1187// DeploymentItem("sage.50.exe")]
1188// [Priority(1)]
1189// public void AsientosFacturasComprasGeneradorTest5()
1190// {
1191// bool llOk = false;
1192
1193// int lnNumFacCompra = Convert.ToInt32(EW_GLOBAL._GetLenCampo(KeyDiccionarioLenCampos.wn_factcompra));
1268// Assert.AreEqual(llOk, true, "Test 5 GeneradorAsientosFacturasCompra. No se pudo generar el asiento de factura de compra de la prueba para la factura " +
1287// Assert.AreEqual(4, loAsiento._Lineas.Count, "Test 5 GeneradorAsientosFacturasCompra. Asiento generado correctamente pero se esperaban 4 lineas y tiene " + loAsiento._Lineas.Count.ToString());
1288// if (loAsiento._Lineas.Count == 4)
1289// {
1290// TipoIVA loTipoIva = new TipoIVA();
1291// loTipoIva._Codigo = this._TipoIva;
1292
1293// TipoRetencion loTipoRet = new TipoRetencion();
1294// loTipoRet._Codigo = this._TipoRet;
1295
1296// // Verificamos que en cada linea haya la cuenta que esperamos
1297// Assert.AreEqual(this._Proveedor, loAsiento._Lineas[0]._Cuenta, "Test 5 GeneradorAsientosFacturasCompra. La primera linea del asiento debería tener cuenta contable " + this._Proveedor + " y es " + loAsiento._Lineas[0]._Cuenta);
1298// Assert.AreEqual(this._Contrapartida, loAsiento._Lineas[1]._Cuenta, "Test 5 GeneradorAsientosFacturasCompra. La segunda linea del asiento debería tener cuenta contable de gastos " + this._Contrapartida + " y es " + loAsiento._Lineas[1]._Cuenta);
1299// Assert.AreEqual(loTipoIva._Cta_IVA_Sop, loAsiento._Lineas[2]._Cuenta, "Test 5 GeneradorAsientosFacturasCompra. La tercera linea del asiento debería tener cuenta contable de IVA " + loTipoIva._Cta_IVA_Sop + " y es " + loAsiento._Lineas[2]._Cuenta);
1300// Assert.AreEqual(loTipoRet._CTA_RE_REP, loAsiento._Lineas[3]._Cuenta, "Test 5 GeneradorAsientosFacturasCompra. La cuarta linea del asiento debería tener cuenta contable de retencion repercutida " + loTipoRet._CTA_RE_REP + " y es " + loAsiento._Lineas[3]._Cuenta);
1301
1302// // Verificamos que en cada linea haya el importe que esperamos
1303// Assert.AreEqual<decimal>(1028.5M, loAsiento._Lineas[0]._Haber, "Test 5 GeneradorAsientosFacturasCompra. La primera linea del asiento debería tener importe 1028.5 en el HABER y tiene " + loAsiento._Lineas[0]._Haber);
1304// Assert.AreEqual(1000, loAsiento._Lineas[1]._Debe, "Test 5 GeneradorAsientosFacturasCompra. La segunda linea del asiento debería tener importe 1000 en el DEBE y tiene " + loAsiento._Lineas[1]._Debe);
1305// Assert.AreEqual(210, loAsiento._Lineas[2]._Debe, "Test 5 GeneradorAsientosFacturasCompra. La tercera linea del asiento debería tener importe 210 en el DEBE y tiene " + loAsiento._Lineas[2]._Debe);
1306// Assert.AreEqual<decimal>(181.5M, loAsiento._Lineas[3]._Haber, "Test 5 GeneradorAsientosFacturasCompra. La cuarta linea del asiento debería tener importe 181.5 en el HABER y tiene " + loAsiento._Lineas[3]._Haber);
1307
1308// // Verificamos un registro en IVASOPOR.
1309// DataTable ldtRegIvasopor = new DataTable();
1310// llOk = DB.SQLExec("select * from " + DB.SQLDatabase("gestion", "ivasopor") + " where empresa='" + this._Empresa + "' and cuenta='" + this._Proveedor + "' and numfra='" + this._Factura + "'", ref ldtRegIvasopor);
1311// Assert.AreEqual(1, ldtRegIvasopor.Rows.Count, "Test 5 GeneradorAsientosFacturasCompra, asiento generado pero no se ha detectado registro de IVASOPOR en el asientos para la factura (EMPRESA, PROVEEDOR, FACTURA) (" + this._Empresa + "," + this._Proveedor + "," + this._Factura + ")");
1312
1313// // Verificamos un registro en RETREPER
1314// DataTable ldtRegRetReper = new DataTable();
1315// llOk = DB.SQLExec("select * from " + DB.SQLDatabase("gestion", "retreper") + " where empresa='" + this._Empresa + "' and cuenta='" + this._Proveedor + "' and numfra='" + this._Factura + "'", ref ldtRegRetReper);
1316// Assert.AreEqual(1, ldtRegRetReper.Rows.Count, "Test 5 GeneradorAsientosFacturasCompra, asiento generado pero no se ha detectado registro de RETREPER en el asientos para la factura (EMPRESA, PROVEEDOR, FACTURA) (" + this._Empresa + "," + this._Proveedor + "," + this._Factura + ")");
1317
1318// // Verificamos que el importe de retencion en RETREPER sea el correcto.
1319// if (ldtRegRetReper.Rows.Count == 1)
1320// Assert.AreEqual<decimal>(181.5M, Convert.ToDecimal(ldtRegRetReper.Rows[0]["retencio"]), "Test 5 GeneradorAsientosFacturasCompra, asiento generado y detectado registro de RETREPER pero con importe incorrecto para la factura (EMPRESA, PROVEEDOR, FACTURA) (" + this._Empresa + "," + this._Proveedor + "," + this._Factura +
1321// "), debería ser 181.5 y es " + Convert.ToDecimal(ldtRegRetReper.Rows[0]["retencio"]).ToString().Trim());
1322
1323
1324// // Verificamos previsiones de pago generadas.
1325// DataTable ldtRegPrevis = new DataTable();
1326// llOk = DB.SQLExec("select * from " + DB.SQLDatabase("comunes", "previs") + " where empresa='" + this._Empresa + "' and proveedor='" + this._Proveedor + "' and factura='" + this._Factura + "'", ref ldtRegPrevis);
1327// Assert.IsTrue(ldtRegPrevis.Rows.Count > 0, "Test 5 GeneradorAsientosFacturasCompra, asiento generado pero no se ha detectado registros en COMUNES.PREVIS para la factura (EMPRESA, PROVEEDOR, FACTURA) (" + this._Empresa + "," + this._Proveedor + "," + this._Factura + ")");
1328
1329// // Verificamos registros EOS (contrapartida)
1330// DataTable ldtRegEOS = new DataTable();
1331// llOk = DB.SQLExec("select * from " + DB.SQLDatabase("gestion", "eos") + " where empresa='" + this._Empresa + "' and factura='" + this._Factura + "'", ref ldtRegEOS);
1332// Assert.IsTrue(ldtRegEOS.Rows.Count > 0, "Test 5 GeneradorAsientosFacturasCompra, asiento generado pero no se ha detectado registros en la tabla EOS para la factura (EMPRESA, FACTURA) (" + this._Empresa + "," + this._Factura + ")");
1333// }
1334// }
1335// }
1336// }
1337
1338// EliminacionDatosPruebasAnteriores();
1339// }
1340
1341// /// <summary>
1342// /// Prueba de creación de asiento de factura de compra TEST6:
1343// /// Retencion proveedor: no
1344// /// Rec.Equiv proveedor: no
1345// /// Pronto pago: no
1346// /// Asiento de factura de compra a proveedor IVA EXENTO sin retención, sin pronto pago, sin recargo, proveedor nacional, IVA al 21%
1347// /// Base 1000, IVA 210, Total 1210
1348// ///</summary>
1349// [Owner(Owners.JoseMaria_Gay),
1350// TestMethod(),
1351// Description("Asiento de factura de compra a proveedor IVA EXENTO sin retención, sin pronto pago, sin recargo, proveedor nacional, IVA 21%, Base 1000, IVA 210, Total 1210"),
1352// DeploymentItem("sage.50.exe")]
1353// [Priority(1)]
1354// public void AsientosFacturasComprasGeneradorTest6()
1355// {
1356// bool llOk = false;
1357
1358// int lnNumFacCompra = Convert.ToInt32(EW_GLOBAL._GetLenCampo(KeyDiccionarioLenCampos.wn_factcompra));
1433// Assert.AreEqual(llOk, true, "Test 6 GeneradorAsientosFacturasCompra. No se pudo generar el asiento de factura de compra de la prueba para la factura " +
1452// Assert.AreEqual(2, loAsiento._Lineas.Count, "Test 6 GeneradorAsientosFacturasCompra. Asiento generado correctamente pero se esperaban 2 lineas y tiene " + loAsiento._Lineas.Count.ToString());
1453// if (loAsiento._Lineas.Count == 3)
1454// {
1455
1456// // Verificamos que en cada linea haya la cuenta que esperamos
1457// Assert.AreEqual(this._Proveedor, loAsiento._Lineas[0]._Cuenta, "Test 6 GeneradorAsientosFacturasCompra. La primera linea del asiento debería tener cuenta contable " + this._Proveedor + " y es " + loAsiento._Lineas[0]._Cuenta);
1458// Assert.AreEqual(this._Contrapartida, loAsiento._Lineas[1]._Cuenta, "Test 6 GeneradorAsientosFacturasCompra. La segunda linea del asiento debería tener cuenta contable de gastos " + this._Contrapartida + " y es " + loAsiento._Lineas[1]._Cuenta);
1459
1460
1461// // Verificamos que en cada linea haya el importe que esperamos
1462// Assert.AreEqual(1000, loAsiento._Lineas[0]._Haber, "Test 6 GeneradorAsientosFacturasCompra. La primera linea del asiento debería tener importe 1000 en el HABER y tiene " + loAsiento._Lineas[0]._Haber);
1463// Assert.AreEqual(1000, loAsiento._Lineas[1]._Debe, "Test 6 GeneradorAsientosFacturasCompra. La segunda linea del asiento debería tener importe 1000 en el DEBE y tiene " + loAsiento._Lineas[1]._Debe);
1464
1465// // Verificamos 0 registro en IVASOPOR.
1466// DataTable ldtRegIvasopor = new DataTable();
1467// llOk = DB.SQLExec("select * from " + DB.SQLDatabase("gestion", "ivasopor") + " where empresa='" + this._Empresa + "' and cuenta='" + this._Proveedor + "' and numfra='" + this._Factura + "'", ref ldtRegIvasopor);
1468// Assert.AreEqual(0, ldtRegIvasopor.Rows.Count, "Test 6 GeneradorAsientosFacturasCompra, asiento generado de IVA EXENTO pero se ha detectado registro de IVASOPOR en el asientos para la factura (EMPRESA, PROVEEDOR, FACTURA) (" + this._Empresa + "," + this._Proveedor + "," + this._Factura + ")");
1469
1470// // Verificamos un registro en IVA_EXEN
1471// DataTable ldtRegIvaExen = new DataTable();
1472// llOk = DB.SQLExec("select * from " + DB.SQLDatabase("gestion", "iva_exen") + " where empresa='" + this._Empresa + "' and cuenta='" + this._Proveedor + "' and factura='" + this._Factura + "' and tipo=1", ref ldtRegIvaExen);
1473// Assert.AreEqual(1, ldtRegIvaExen.Rows.Count, "Test 6 GeneradorAsientosFacturasCompra, asiento generado pero no se ha detectado registro de IVA_EXEN en el asientos para la factura (EMPRESA, PROVEEDOR, FACTURA) (" + this._Empresa + "," + this._Proveedor + "," + this._Factura + ")");
1474
1475// // Verificamos previsiones de pago generadas.
1476// DataTable ldtRegPrevis = new DataTable();
1477// llOk = DB.SQLExec("select * from " + DB.SQLDatabase("comunes", "previs") + " where empresa='" + this._Empresa + "' and proveedor='" + this._Proveedor + "' and factura='" + this._Factura + "'", ref ldtRegPrevis);
1478// Assert.IsTrue(ldtRegPrevis.Rows.Count > 0, "Test 6 GeneradorAsientosFacturasCompra, asiento generado pero no se ha detectado registros en COMUNES.PREVIS para la factura (EMPRESA, PROVEEDOR, FACTURA) (" + this._Empresa + "," + this._Proveedor + "," + this._Factura + ")");
1479
1480// // Verificamos registros EOS (contrapartida)
1481// DataTable ldtRegEOS = new DataTable();
1482// llOk = DB.SQLExec("select * from " + DB.SQLDatabase("gestion", "eos") + " where empresa='" + this._Empresa + "' and factura='" + this._Factura + "'", ref ldtRegEOS);
1483// Assert.IsTrue(ldtRegEOS.Rows.Count > 0, "Test 6 GeneradorAsientosFacturasCompra, asiento generado pero no se ha detectado registros en la tabla EOS para la factura (EMPRESA, FACTURA) (" + this._Empresa + "," + this._Factura + ")");
1484// }
1485// }
1486// }
1487// }
1488
1489// EliminacionDatosPruebasAnteriores();
1490// }
1491
1492// /// <summary>
1493// /// Prueba de creación de asiento de factura de compra TEST7:
1494// /// Retencion proveedor: no
1495// /// Rec.Equiv proveedor: no
1496// /// Pronto pago: no
1497// /// Proveedor comunitario: si
1498// /// Asiento de factura de compra a proveedor COMUNITARIO sin retención, sin pronto pago, sin recargo, proveedor comunitario, IVA al 21%
1499// /// Base 1000, IVAS 210, IVAR 210 Total 1000
1500// ///</summary>
1501// [Owner(Owners.JoseMaria_Gay),
1502// TestMethod(),
1503// Description("Asiento de factura de compra a proveedor COMUNITARIO sin retención, sin pronto pago, sin recargo, proveedor comunitario, IVA 21%, Base 1000, IVAS 210, IVAR 210 Total 1000"),
1504// DeploymentItem("sage.50.exe")]
1505// [Priority(1)]
1506// public void AsientosFacturasComprasGeneradorTest7()
1507// {
1508// bool llOk = false;
1509
1510// int lnNumFacCompra = Convert.ToInt32(EW_GLOBAL._GetLenCampo(KeyDiccionarioLenCampos.wn_factcompra));
1511
1512// // Factura de compra base IVA 1000 sin retencion ni pronto pago ni recargo ni nada.
1597// Assert.AreEqual(llOk, true, "Test 7 GeneradorAsientosFacturasCompra. No se pudo generar el asiento de factura de compra de la prueba para la factura " +
1615// Assert.AreEqual(4, loAsiento._Lineas.Count, "Test 7 GeneradorAsientosFacturasCompra. Asiento generado correctamente pero se esperaban 4 lineas y tiene " + loAsiento._Lineas.Count.ToString());
1616// if (loAsiento._Lineas.Count == 4)
1617// {
1618// TipoIVA loTipoIva = new TipoIVA();
1619
1620// loTipoIva._Codigo = this._TipoIva;
1621
1622// // Verificamos que en cada linea haya la cuenta que esperamos
1623// Assert.AreEqual(this._Proveedor, loAsiento._Lineas[0]._Cuenta, "Test 7 GeneradorAsientosFacturasCompra. La primera linea del asiento debería tener cuenta contable " + this._Proveedor + " y es " + loAsiento._Lineas[0]._Cuenta);
1624// Assert.AreEqual(this._Contrapartida, loAsiento._Lineas[1]._Cuenta, "Test 7 GeneradorAsientosFacturasCompra. La segunda linea del asiento debería tener cuenta contable de gastos " + this._Contrapartida + " y es " + loAsiento._Lineas[1]._Cuenta);
1625// Assert.AreEqual(loTipoIva._Cta_IVA_Sop, loAsiento._Lineas[2]._Cuenta, "Test 7 GeneradorAsientosFacturasCompra. La tercera linea del asiento debería tener cuenta contable de IVA soportado " + loTipoIva._Cta_IVA_Sop + " y es " + loAsiento._Lineas[2]._Cuenta);
1626// Assert.AreEqual(loTipoIva._Cta_IVA_Rep, loAsiento._Lineas[3]._Cuenta, "Test 7 GeneradorAsientosFacturasCompra. La cuarta linea del asiento debería tener cuenta contable de IVA repercutido " + loTipoIva._Cta_IVA_Rep + " y es " + loAsiento._Lineas[3]._Cuenta);
1627
1628
1629// // Verificamos que en cada linea haya el importe que esperamos
1630// Assert.AreEqual(1000, loAsiento._Lineas[0]._Haber, "Test 7 GeneradorAsientosFacturasCompra. La primera linea del asiento debería tener importe 1000 en el HABER y tiene " + loAsiento._Lineas[0]._Haber);
1631// Assert.AreEqual(1000, loAsiento._Lineas[1]._Debe, "Test 7 GeneradorAsientosFacturasCompra. La segunda linea del asiento debería tener importe 1000 en el DEBE y tiene " + loAsiento._Lineas[1]._Debe);
1632// Assert.AreEqual(210, loAsiento._Lineas[2]._Debe, "Test 7 GeneradorAsientosFacturasCompra. La tercera linea del asiento debería tener importe 210 en el DEBE y tiene " + loAsiento._Lineas[2]._Debe);
1633// Assert.AreEqual(210, loAsiento._Lineas[3]._Haber, "Test 7 GeneradorAsientosFacturasCompra. La cuarta linea del asiento debería tener importe 210 en el HABER y tiene " + loAsiento._Lineas[3]._Haber);
1634
1635// // Verificamos un registro en IVASOPOR.
1636// DataTable ldtRegIvasopor = new DataTable();
1637// llOk = DB.SQLExec("select * from " + DB.SQLDatabase("gestion", "ivasopor") + " where empresa='" + this._Empresa + "' and cuenta='" + this._Proveedor + "' and numfra='" + this._Factura + "'", ref ldtRegIvasopor);
1638// Assert.AreEqual(1, ldtRegIvasopor.Rows.Count, "Test 7 GeneradorAsientosFacturasCompra, asiento generado pero no se ha detectado registro de IVASOPOR en el asientos para la factura (EMPRESA, PROVEEDOR, FACTURA) (" + this._Empresa + "," + this._Proveedor + "," + this._Factura + ")");
1639// if (ldtRegIvasopor.Rows.Count==1)
1640// {
1641// // Campo ORDEN tiene que ser el nº factura CEE
1642// Assert.AreEqual(this._FacturaCee, Convert.ToInt32(ldtRegIvasopor.Rows[0]["orden"]), "Test 7 GeneradorAsientosFacturasCompra, asiento generado en registro IVASOPO el campo ORDEN no es el nº factura CEE "+this._FacturaCee.ToString().Trim()+" para la factura (EMPRESA, PROVEEDOR, FACTURA, FACTURACEE) (" + this._Empresa + "," + this._Proveedor + "," + this._Factura +"," + this._FacturaCee.ToString().Trim().PadLeft(10)+")");
1643// // Campo COMUNITARI a true
1644// Assert.AreEqual(true, Convert.ToBoolean(ldtRegIvasopor.Rows[0]["comunitari"]), "Test 7 GeneradorAsientosFacturasCompra, asiento generado en registro IVAREPER el campo TIPO no es 2 para la factura (EMPRESA, PROVEEDOR, FACTURA, FACTURACEE) (" + this._Empresa + "," + this._Proveedor + "," + this._Factura +"," + this._FacturaCee.ToString().Trim().PadLeft(10)+")");
1645// }
1646
1647// // Verificamos un registro en IVAREPER.
1648// DataTable ldtRegIvareper = new DataTable();
1649// llOk = DB.SQLExec("select * from " + DB.SQLDatabase("gestion", "ivareper") + " where empresa='" + this._Empresa + "' and cuenta='" + this._Proveedor + "' and numfra='" + this._FacturaCee.ToString().Trim().PadLeft(10) + "'", ref ldtRegIvareper);
1650// Assert.AreEqual(1, ldtRegIvareper.Rows.Count, "Test 7 GeneradorAsientosFacturasCompra, asiento generado pero no se ha detectado registro de IVAREPER en el asientos para la factura (EMPRESA, PROVEEDOR, FACTURA, FACTURACEE) (" + this._Empresa + "," + this._Proveedor + "," + this._Factura +"," + this._FacturaCee.ToString().Trim().PadLeft(10)+")");
1651
1652// if (ldtRegIvareper.Rows.Count==1)
1653// {
1654// // Campo COMUNITARI a true
1655// Assert.AreEqual(true, Convert.ToBoolean(ldtRegIvareper.Rows[0]["comunitari"]), "Test 7 GeneradorAsientosFacturasCompra, asiento generado en registro IVAREPER el campo COMUNITARI no es true para la factura (EMPRESA, PROVEEDOR, FACTURA, FACTURACEE) (" + this._Empresa + "," + this._Proveedor + "," + this._Factura +"," + this._FacturaCee.ToString().Trim().PadLeft(10)+")");
1656// // Campo TIPO a 2
1657// Assert.AreEqual(2, Convert.ToInt32(ldtRegIvareper.Rows[0]["tipo"]), "Test 7 GeneradorAsientosFacturasCompra, asiento generado en registro IVAREPER el campo TIPO no es 2 para la factura (EMPRESA, PROVEEDOR, FACTURA, FACTURACEE) (" + this._Empresa + "," + this._Proveedor + "," + this._Factura +"," + this._FacturaCee.ToString().Trim().PadLeft(10)+")");
1658// }
1659
1660// // Verificamos previsiones de pago generadas.
1661// DataTable ldtRegPrevis = new DataTable();
1662// llOk = DB.SQLExec("select * from " + DB.SQLDatabase("comunes", "previs") + " where empresa='" + this._Empresa + "' and proveedor='" + this._Proveedor + "' and factura='" + this._Factura + "'", ref ldtRegPrevis);
1663// Assert.IsTrue(ldtRegPrevis.Rows.Count > 0, "Test 7 GeneradorAsientosFacturasCompra, asiento generado pero no se ha detectado registros en COMUNES.PREVIS para la factura (EMPRESA, PROVEEDOR, FACTURA) (" + this._Empresa + "," + this._Proveedor + "," + this._Factura + ")");
1664
1665// // Verificamos registros EOS (contrapartida)
1666// DataTable ldtRegEOS = new DataTable();
1667// llOk = DB.SQLExec("select * from " + DB.SQLDatabase("gestion", "eos") + " where empresa='" + this._Empresa + "' and factura='" + this._Factura + "'", ref ldtRegEOS);
1668// Assert.IsTrue(ldtRegEOS.Rows.Count > 0, "Test 7 GeneradorAsientosFacturasCompra, asiento generado pero no se ha detectado registros en la tabla EOS para la factura (EMPRESA, FACTURA) (" + this._Empresa + "," + this._Factura + ")");
1669// }
1670// }
1671// }
1672// }
1673
1674// EliminacionDatosPruebasAnteriores();
1675// }
1676
1677
1678// /// <summary>
1679// /// Prueba de creación de asiento de factura de compra TEST8:
1680// /// Retencion proveedor: no
1681// /// Rec.Equiv proveedor: no
1682// /// Pronto pago: no
1683// /// Proveedor nacional con ISP
1684// /// Asiento de factura de compra a proveedor nacional ISP sin retención, sin pronto pago, sin recargo, IVA al 21%
1685// /// Base 1000, IVAS 210, IVAR 210 Total 1000
1686// ///</summary>
1687// [Owner(Owners.JoseMaria_Gay),
1688// TestMethod(),
1689// Description("Asiento de factura de compra a proveedor nacional ISP sin retención, sin pronto pago, sin recargo, IVA 21%, Base 1000, IVAS 210, IVAR 210, Total 1000"),
1690// DeploymentItem("sage.50.exe")]
1691// [Priority(1)]
1692// public void AsientosFacturasComprasGeneradorTest8()
1693// {
1694// bool llOk = false;
1695
1696// int lnNumFacCompra = Convert.ToInt32(EW_GLOBAL._GetLenCampo(KeyDiccionarioLenCampos.wn_factcompra));
1785// Assert.AreEqual(llOk, true, "Test 8 GeneradorAsientosFacturasCompra. No se pudo generar el asiento de factura de compra de la prueba para la factura " +
1803// Assert.AreEqual(4, loAsiento._Lineas.Count, "Test 8 GeneradorAsientosFacturasCompra. Asiento generado correctamente pero se esperaban 4 lineas y tiene " + loAsiento._Lineas.Count.ToString());
1804// if (loAsiento._Lineas.Count == 4)
1805// {
1806// TipoIVA loTipoIva = new TipoIVA();
1807
1808// loTipoIva._Codigo = this._TipoIva;
1809
1810// // Verificamos que en cada linea haya la cuenta que esperamos
1811// Assert.AreEqual(this._Proveedor, loAsiento._Lineas[0]._Cuenta, "Test 8 GeneradorAsientosFacturasCompra. La primera linea del asiento debería tener cuenta contable " + this._Proveedor + " y es " + loAsiento._Lineas[0]._Cuenta);
1812// Assert.AreEqual(this._Contrapartida, loAsiento._Lineas[1]._Cuenta, "Test 8 GeneradorAsientosFacturasCompra. La segunda linea del asiento debería tener cuenta contable de gastos " + this._Contrapartida + " y es " + loAsiento._Lineas[1]._Cuenta);
1813// Assert.AreEqual(loTipoIva._Cta_IVA_Sop, loAsiento._Lineas[2]._Cuenta, "Test 8 GeneradorAsientosFacturasCompra. La tercera linea del asiento debería tener cuenta contable de IVA soportado " + loTipoIva._Cta_IVA_Sop + " y es " + loAsiento._Lineas[2]._Cuenta);
1814// Assert.AreEqual(loTipoIva._Cta_IVA_Rep, loAsiento._Lineas[3]._Cuenta, "Test 8 GeneradorAsientosFacturasCompra. La cuarta linea del asiento debería tener cuenta contable de IVA repercutido " + loTipoIva._Cta_IVA_Rep + " y es " + loAsiento._Lineas[3]._Cuenta);
1815
1816
1817// // Verificamos que en cada linea haya el importe que esperamos
1818// Assert.AreEqual(1000, loAsiento._Lineas[0]._Haber, "Test 8 GeneradorAsientosFacturasCompra. La primera linea del asiento debería tener importe 1000 en el HABER y tiene " + loAsiento._Lineas[0]._Haber);
1819// Assert.AreEqual(1000, loAsiento._Lineas[1]._Debe, "Test 8 GeneradorAsientosFacturasCompra. La segunda linea del asiento debería tener importe 1000 en el DEBE y tiene " + loAsiento._Lineas[1]._Debe);
1820// Assert.AreEqual(210, loAsiento._Lineas[2]._Debe, "Test 8 GeneradorAsientosFacturasCompra. La tercera linea del asiento debería tener importe 210 en el DEBE y tiene " + loAsiento._Lineas[2]._Debe);
1821// Assert.AreEqual(210, loAsiento._Lineas[3]._Haber, "Test 8 GeneradorAsientosFacturasCompra. La cuarta linea del asiento debería tener importe 210 en el HABER y tiene " + loAsiento._Lineas[3]._Haber);
1822
1823// // Verificamos un registro en IVASOPOR.
1824// DataTable ldtRegIvasopor = new DataTable();
1825// llOk = DB.SQLExec("select * from " + DB.SQLDatabase("gestion", "ivasopor") + " where empresa='" + this._Empresa + "' and cuenta='" + this._Proveedor + "' and numfra='" + this._Factura + "'", ref ldtRegIvasopor);
1826// Assert.AreEqual(1, ldtRegIvasopor.Rows.Count, "Test 8 GeneradorAsientosFacturasCompra, asiento generado pero no se ha detectado registro de IVASOPOR en el asientos para la factura (EMPRESA, PROVEEDOR, FACTURA) (" + this._Empresa + "," + this._Proveedor + "," + this._Factura + ")");
1827// if (ldtRegIvasopor.Rows.Count == 1)
1828// {
1829// // Campo ORDEN tiene que ser el nº factura CEE
1830// Assert.AreEqual(this._FacturaCee, Convert.ToInt32(ldtRegIvasopor.Rows[0]["orden"]), "Test 8 GeneradorAsientosFacturasCompra, asiento generado en registro IVASOPOR el campo ORDEN no es el nº factura CEE " + this._FacturaCee.ToString().Trim() + " para la factura (EMPRESA, PROVEEDOR, FACTURA, FACTURACEE) (" + this._Empresa + "," + this._Proveedor + "," + this._Factura + "," + this._FacturaCee.ToString().Trim().PadLeft(10) + ")");
1831// // Campo COMUNITARI a true
1832// Assert.AreEqual(true, Convert.ToBoolean(ldtRegIvasopor.Rows[0]["comunitari"]), "Test 8 GeneradorAsientosFacturasCompra, asiento generado en registro IVAREPER el campo TIPO no es 2 para la factura (EMPRESA, PROVEEDOR, FACTURA, FACTURACEE) (" + this._Empresa + "," + this._Proveedor + "," + this._Factura + "," + this._FacturaCee.ToString().Trim().PadLeft(10) + ")");
1833// }
1834
1835// // Verificamos un registro en IVAREPER.
1836// DataTable ldtRegIvareper = new DataTable();
1837// llOk = DB.SQLExec("select * from " + DB.SQLDatabase("gestion", "ivareper") + " where empresa='" + this._Empresa + "' and cuenta='" + this._Proveedor + "' and numfra='" + this._FacturaCee.ToString().Trim().PadLeft(10) + "'", ref ldtRegIvareper);
1838// Assert.AreEqual(1, ldtRegIvareper.Rows.Count, "Test 8 GeneradorAsientosFacturasCompra, asiento generado pero no se ha detectado registro de IVAREPER en el asientos para la factura (EMPRESA, PROVEEDOR, FACTURA, FACTURACEE) (" + this._Empresa + "," + this._Proveedor + "," + this._Factura + "," + this._FacturaCee.ToString().Trim().PadLeft(10) + ")");
1839
1840// if (ldtRegIvareper.Rows.Count == 1)
1841// {
1842// // Campo COMUNITARI a true
1843// Assert.AreEqual(true, Convert.ToBoolean(ldtRegIvareper.Rows[0]["comunitari"]), "Test 8 GeneradorAsientosFacturasCompra, asiento generado en registro IVAREPER el campo COMUNITARI no es true para la factura (EMPRESA, PROVEEDOR, FACTURA, FACTURACEE) (" + this._Empresa + "," + this._Proveedor + "," + this._Factura + "," + this._FacturaCee.ToString().Trim().PadLeft(10) + ")");
1844// // Campo TIPO a 2
1845// Assert.AreEqual(2, Convert.ToInt32(ldtRegIvareper.Rows[0]["tipo"]), "Test 8 GeneradorAsientosFacturasCompra, asiento generado en registro IVAREPER el campo TIPO no es 2 para la factura (EMPRESA, PROVEEDOR, FACTURA, FACTURACEE) (" + this._Empresa + "," + this._Proveedor + "," + this._Factura + "," + this._FacturaCee.ToString().Trim().PadLeft(10) + ")");
1846// }
1847
1848// // Verificamos previsiones de pago generadas.
1849// DataTable ldtRegPrevis = new DataTable();
1850// llOk = DB.SQLExec("select * from " + DB.SQLDatabase("comunes", "previs") + " where empresa='" + this._Empresa + "' and proveedor='" + this._Proveedor + "' and factura='" + this._Factura + "'", ref ldtRegPrevis);
1851// Assert.IsTrue(ldtRegPrevis.Rows.Count > 0, "Test 8 GeneradorAsientosFacturasCompra, asiento generado pero no se ha detectado registros en COMUNES.PREVIS para la factura (EMPRESA, PROVEEDOR, FACTURA) (" + this._Empresa + "," + this._Proveedor + "," + this._Factura + ")");
1852
1853// // Verificamos registros EOS (contrapartida)
1854// DataTable ldtRegEOS = new DataTable();
1855// llOk = DB.SQLExec("select * from " + DB.SQLDatabase("gestion", "eos") + " where empresa='" + this._Empresa + "' and factura='" + this._Factura + "'", ref ldtRegEOS);
1856// Assert.IsTrue(ldtRegEOS.Rows.Count > 0, "Test 8 GeneradorAsientosFacturasCompra, asiento generado pero no se ha detectado registros en la tabla EOS para la factura (EMPRESA, FACTURA) (" + this._Empresa + "," + this._Factura + ")");
1857// }
1858// }
1859// }
1860// }
1861
1862// EliminacionDatosPruebasAnteriores();
1863// }
1864
1865
1866// /// <summary>
1867// /// Prueba de creación de asiento de factura de compra TEST9:
1868// /// Retencion proveedor: no
1869// /// Rec.Equiv proveedor: no
1870// /// Pronto pago: no
1871// /// Proveedor extracomunitario con tipo IVA SERVICIOS
1872// /// Asiento de factura de compra a proveedor extracomunitario TIPO IVA SERVICIOS sin retención, sin pronto pago, sin recargo, IVA al 21%
1873// /// Base 1000, IVAS 210, IVAR 210 Total 1000
1874// ///</summary>
1875// [Owner(Owners.JoseMaria_Gay),
1876// TestMethod(),
1877// Description("Asiento de factura de compra a proveedor extracomunitario con TIPOIVA SERVICIOS, sin retención, sin pronto pago, sin recargo, IVA 21%, Base 1000, IVAS 210, IVAR 210, Total 1000"),
1878// DeploymentItem("sage.50.exe")]
1879// [Priority(1)]
1880// public void AsientosFacturasComprasGeneradorTest9()
1881// {
1882// bool llOk = false;
1883
1884// int lnNumFacCompra = Convert.ToInt32(EW_GLOBAL._GetLenCampo(KeyDiccionarioLenCampos.wn_factcompra));
1981// Assert.AreEqual(llOk, true, "Test 9 GeneradorAsientosFacturasCompra. No se pudo generar el asiento de factura de compra de la prueba para la factura " +
1999// Assert.AreEqual(4, loAsiento._Lineas.Count, "Test 9 GeneradorAsientosFacturasCompra. Asiento generado correctamente pero se esperaban 4 lineas y tiene " + loAsiento._Lineas.Count.ToString());
2000// if (loAsiento._Lineas.Count == 4)
2001// {
2002// TipoIVA loTipoIva = new TipoIVA();
2003
2004// loTipoIva._Codigo = this._TipoIva;
2005
2006// // Verificamos que en cada linea haya la cuenta que esperamos
2007// Assert.AreEqual(this._Proveedor, loAsiento._Lineas[0]._Cuenta, "Test 9 GeneradorAsientosFacturasCompra. La primera linea del asiento debería tener cuenta contable " + this._Proveedor + " y es " + loAsiento._Lineas[0]._Cuenta);
2008// Assert.AreEqual(this._Contrapartida, loAsiento._Lineas[1]._Cuenta, "Test 9 GeneradorAsientosFacturasCompra. La segunda linea del asiento debería tener cuenta contable de gastos " + this._Contrapartida + " y es " + loAsiento._Lineas[1]._Cuenta);
2009// Assert.AreEqual(loTipoIva._Cta_IVA_Sop, loAsiento._Lineas[2]._Cuenta, "Test 9 GeneradorAsientosFacturasCompra. La tercera linea del asiento debería tener cuenta contable de IVA soportado " + loTipoIva._Cta_IVA_Sop + " y es " + loAsiento._Lineas[2]._Cuenta);
2010// Assert.AreEqual(loTipoIva._Cta_IVA_Rep, loAsiento._Lineas[3]._Cuenta, "Test 9 GeneradorAsientosFacturasCompra. La cuarta linea del asiento debería tener cuenta contable de IVA repercutido " + loTipoIva._Cta_IVA_Rep + " y es " + loAsiento._Lineas[3]._Cuenta);
2011
2012
2013// // Verificamos que en cada linea haya el importe que esperamos
2014// Assert.AreEqual(1000, loAsiento._Lineas[0]._Haber, "Test 9 GeneradorAsientosFacturasCompra. La primera linea del asiento debería tener importe 1000 en el HABER y tiene " + loAsiento._Lineas[0]._Haber);
2015// Assert.AreEqual(1000, loAsiento._Lineas[1]._Debe, "Test 9 GeneradorAsientosFacturasCompra. La segunda linea del asiento debería tener importe 1000 en el DEBE y tiene " + loAsiento._Lineas[1]._Debe);
2016// Assert.AreEqual(210, loAsiento._Lineas[2]._Debe, "Test 9 GeneradorAsientosFacturasCompra. La tercera linea del asiento debería tener importe 210 en el DEBE y tiene " + loAsiento._Lineas[2]._Debe);
2017// Assert.AreEqual(210, loAsiento._Lineas[3]._Haber, "Test 9 GeneradorAsientosFacturasCompra. La cuarta linea del asiento debería tener importe 210 en el HABER y tiene " + loAsiento._Lineas[3]._Haber);
2018
2019// // Verificamos un registro en IVASOPOR.
2020// DataTable ldtRegIvasopor = new DataTable();
2021// llOk = DB.SQLExec("select * from " + DB.SQLDatabase("gestion", "ivasopor") + " where empresa='" + this._Empresa + "' and cuenta='" + this._Proveedor + "' and numfra='" + this._Factura + "'", ref ldtRegIvasopor);
2022// Assert.AreEqual(1, ldtRegIvasopor.Rows.Count, "Test 9 GeneradorAsientosFacturasCompra, asiento generado pero no se ha detectado registro de IVASOPOR en el asientos para la factura (EMPRESA, PROVEEDOR, FACTURA) (" + this._Empresa + "," + this._Proveedor + "," + this._Factura + ")");
2023// if (ldtRegIvasopor.Rows.Count == 1)
2024// {
2025// // Campo ORDEN tiene que ser el nº factura CEE
2026// Assert.AreEqual(this._FacturaCee, Convert.ToInt32(ldtRegIvasopor.Rows[0]["orden"]), "Test 9 GeneradorAsientosFacturasCompra, asiento generado en registro IVASOPOR el campo ORDEN no es el nº factura CEE " + this._FacturaCee.ToString().Trim() + " para la factura (EMPRESA, PROVEEDOR, FACTURA, FACTURACEE) (" + this._Empresa + "," + this._Proveedor + "," + this._Factura + "," + this._FacturaCee.ToString().Trim().PadLeft(10) + ")");
2027// // Campo COMUNITARI a true
2028// Assert.AreEqual(true, Convert.ToBoolean(ldtRegIvasopor.Rows[0]["comunitari"]), "Test 9 GeneradorAsientosFacturasCompra, asiento generado en registro IVAREPER el campo TIPO no es 2 para la factura (EMPRESA, PROVEEDOR, FACTURA, FACTURACEE) (" + this._Empresa + "," + this._Proveedor + "," + this._Factura + "," + this._FacturaCee.ToString().Trim().PadLeft(10) + ")");
2029// }
2030
2031// // Verificamos un registro en IVAREPER.
2032// DataTable ldtRegIvareper = new DataTable();
2033// llOk = DB.SQLExec("select * from " + DB.SQLDatabase("gestion", "ivareper") + " where empresa='" + this._Empresa + "' and cuenta='" + this._Proveedor + "' and numfra='" + this._FacturaCee.ToString().Trim().PadLeft(10) + "'", ref ldtRegIvareper);
2034// Assert.AreEqual(1, ldtRegIvareper.Rows.Count, "Test 9 GeneradorAsientosFacturasCompra, asiento generado pero no se ha detectado registro de IVAREPER en el asientos para la factura (EMPRESA, PROVEEDOR, FACTURA, FACTURACEE) (" + this._Empresa + "," + this._Proveedor + "," + this._Factura + "," + this._FacturaCee.ToString().Trim().PadLeft(10) + ")");
2035
2036// if (ldtRegIvareper.Rows.Count == 1)
2037// {
2038// // Campo COMUNITARI a true
2039// Assert.AreEqual(true, Convert.ToBoolean(ldtRegIvareper.Rows[0]["comunitari"]), "Test 9 GeneradorAsientosFacturasCompra, asiento generado en registro IVAREPER el campo COMUNITARI no es true para la factura (EMPRESA, PROVEEDOR, FACTURA, FACTURACEE) (" + this._Empresa + "," + this._Proveedor + "," + this._Factura + "," + this._FacturaCee.ToString().Trim().PadLeft(10) + ")");
2040// // Campo TIPO a 2
2041// Assert.AreEqual(2, Convert.ToInt32(ldtRegIvareper.Rows[0]["tipo"]), "Test 9 GeneradorAsientosFacturasCompra, asiento generado en registro IVAREPER el campo TIPO no es 2 para la factura (EMPRESA, PROVEEDOR, FACTURA, FACTURACEE) (" + this._Empresa + "," + this._Proveedor + "," + this._Factura + "," + this._FacturaCee.ToString().Trim().PadLeft(10) + ")");
2042// }
2043
2044// // Verificamos previsiones de pago generadas.
2045// DataTable ldtRegPrevis = new DataTable();
2046// llOk = DB.SQLExec("select * from " + DB.SQLDatabase("comunes", "previs") + " where empresa='" + this._Empresa + "' and proveedor='" + this._Proveedor + "' and factura='" + this._Factura + "'", ref ldtRegPrevis);
2047// Assert.IsTrue(ldtRegPrevis.Rows.Count > 0, "Test 9 GeneradorAsientosFacturasCompra, asiento generado pero no se ha detectado registros en COMUNES.PREVIS para la factura (EMPRESA, PROVEEDOR, FACTURA) (" + this._Empresa + "," + this._Proveedor + "," + this._Factura + ")");
2048
2049// // Verificamos registros EOS (contrapartida)
2050// DataTable ldtRegEOS = new DataTable();
2051// llOk = DB.SQLExec("select * from " + DB.SQLDatabase("gestion", "eos") + " where empresa='" + this._Empresa + "' and factura='" + this._Factura + "'", ref ldtRegEOS);
2052// Assert.IsTrue(ldtRegEOS.Rows.Count > 0, "Test 9 GeneradorAsientosFacturasCompra, asiento generado pero no se ha detectado registros en la tabla EOS para la factura (EMPRESA, FACTURA) (" + this._Empresa + "," + this._Factura + ")");