/// <summary>
        /// Performs the playback of actions in this module.
        /// </summary>
        /// <remarks>You should not call this method directly, instead pass the module
        /// instance to the <see cref="TestModuleRunner.Run(ITestModule)"/> method
        /// that will in turn invoke this method.</remarks>
        void ITestModule.Run()
        {
            Mouse.DefaultMoveTime        = 300;
            Keyboard.DefaultKeyPressTime = 100;
            Delay.SpeedFactor            = 1.0;


            ITEM item = new ITEM();

            item.invOrServNumber = StringFunctions.RandStr("A(9)");
            //item.ItemPrices[0].currency = "Canadian Dollars";
            item.ItemPrices.Add(new ITEM_PRICE("Canadian Dollars"));
            item.ItemPrices[0].priceList           = "Regular";
            item.ItemPrices[0].pricePerSellingUnit = Functions.RandCashAmount();

            InventoryServicesLedger._SA_Create(item);
            InventoryServicesLedger._SA_Close();

            // set to global
            this.varItem = item.invOrServNumber;
        }
        /// <summary>
        /// Performs the playback of actions in this module.
        /// </summary>
        /// <remarks>You should not call this method directly, instead pass the module
        /// instance to the <see cref="TestModuleRunner.Run(ITestModule)"/> method
        /// that will in turn invoke this method.</remarks>
        void ITestModule.Run()
        {
            Mouse.DefaultMoveTime        = 300;
            Keyboard.DefaultKeyPressTime = 100;
            Delay.SpeedFactor            = 1.0;

            // Create a vendor
            VENDOR ven = new VENDOR();

            if (this.varItem == "")
            {
                ven.name = "Vend" + StringFunctions.RandStr("X(8)");

                PayablesLedger._SA_Create(ven);
                PayablesLedger._SA_Close();
            }
            else
            {
                ven.name = this.varVendor;
            }

            // Create an item
            ITEM item = new ITEM();

            item.ItemPrices.Add(new ITEM_PRICE("Canadian Dollars"));
            item.ItemPrices[0].priceList           = "Regular";
            item.ItemPrices[0].pricePerSellingUnit = Functions.RandCashAmount();


            if (this.varItem == "")
            {
                item.invOrServNumber = StringFunctions.RandStr("A(9)");

                InventoryServicesLedger._SA_Create(item);
                InventoryServicesLedger._SA_Close();
            }
            else
            {
                item.invOrServNumber = this.varItem;
            }


            // Create an Invoice
            PURCHASE_INVOICE pi = new PURCHASE_INVOICE();

            pi.Vendor = ven;
            ROW r = new ROW();

            r.Item             = item;
            r.quantityReceived = Functions.RandCashAmount(2);
            r.price            = Functions.RandCashAmount();

            pi.GridRows.Add(r);

            if (this.varPInvoice == "")
            {
                pi.transNumber = StringFunctions.RandStr("9(8)");
                PurchasesJournal._SA_Create(pi);
                System.Threading.Thread.Sleep(2000);
                PurchasesJournal._SA_Close();
            }
            else
            {
                pi.transNumber = this.varPInvoice;
            }

            // Adjust the invoice

            pi.GridRows[0].quantityReceived = Functions.RandCashAmount(2);
            PurchasesJournal._SA_Create(pi, true, true);
            PurchasesJournal._SA_Close();
        }
Exemple #3
0
        /// <summary>
        /// Performs the playback of actions in this module.
        /// </summary>
        /// <remarks>You should not call this method directly, instead pass the module
        /// instance to the <see cref="TestModuleRunner.Run(ITestModule)"/> method
        /// that will in turn invoke this method.</remarks>
        void ITestModule.Run()
        {
            Mouse.DefaultMoveTime        = 300;
            Keyboard.DefaultKeyPressTime = 100;
            Delay.SpeedFactor            = 1.0;

            string sT5018Summary = @"C:\Users\Public\Documents\Simply Accounting\2018\Data\Summary of Contract Payments.pdf";// @"C:\Users\_sabvt\Documents\Simply Accounting\DATA\Summary of Contract Payments.pdf";

            string sInstallPath = Simply._SA_GetProgramPath();
            string sDllPath     = string.Format(@"{0}acPDFCreatorLib.Net.dll", sInstallPath);

            // Check Sage 50 pdf engine dll is installed before starting test case
            if (Functions.VerifyFileExists(sDllPath))
            {
                // Remove existing pdf file
                Functions.RemoveExistingFile(sT5018Summary);

                // Create a T5018 vendor
                VENDOR tvendor = new VENDOR();

                tvendor.name = StringFunctions.RandStr("A(9)");
                tvendor.includeFilingT5018CheckBox = true;
                PayablesLedger._SA_Create(tvendor);
                PayablesLedger._SA_Close();

                // Create an item
                ITEM       item      = new ITEM();
                ITEM_PRICE itemPrice = new ITEM_PRICE();
                itemPrice.currency            = "Canadian Dollars";
                itemPrice.priceList           = "Regular";
                itemPrice.pricePerSellingUnit = Functions.RandCashAmount();
                item.ItemPrices.Add(itemPrice);


                if (this.varItem == "")
                {
                    item.invOrServNumber = StringFunctions.RandStr("A(9)");

                    InventoryServicesLedger._SA_Create(item);
                    InventoryServicesLedger._SA_Close();
                }
                else
                {
                    item.invOrServNumber = this.varItem;
                }

                // Create purchase invoice using T5018 vendor
                PURCHASE_INVOICE purInv = new PURCHASE_INVOICE();
                purInv.Vendor      = tvendor;
                purInv.transNumber = StringFunctions.RandStr("9(8)");

                ROW firstRow = new ROW();
                firstRow.Item.invOrServNumber = item.invOrServNumber;
                firstRow.quantityReceived     = Functions.RandCashAmount(2);
                firstRow.price = Functions.RandCashAmount();
                purInv.GridRows.Add(firstRow);

                PurchasesJournal._SA_Create(purInv);
                PurchasesJournal._SA_Close();

                // Print T5018 summary to a file
                string sCraNumber = "403381601RZ0001";
                Simply._Print_T5018Summary(sCraNumber);


                // Verify printed file
                if (!Functions.VerifyFileExists(sT5018Summary))
                {
                    Functions.Verify(false, true, "Printed T5018 form found");
                }
            }
            else
            {
                Functions.Verify(false, true, "PDF engine dll file found");
            }

            // Wait 5 seconds before moving on to next testcase
            Thread.Sleep(5000);
        }
        /// <summary>
        /// Performs the playback of actions in this module.
        /// </summary>
        /// <remarks>You should not call this method directly, instead pass the module
        /// instance to the <see cref="TestModuleRunner.Run(ITestModule)"/> method
        /// that will in turn invoke this method.</remarks>
        void ITestModule.Run()
        {
            Mouse.DefaultMoveTime        = 300;
            Keyboard.DefaultKeyPressTime = 100;
            Delay.SpeedFactor            = 1.0;

            // Remove existing print file
            string printedInvoice = @"C:\Users\Public\Documents\Simply Accounting\2018\Data\Invoice.pdf"; // @"C:\Users\_sabvt\Documents\Simply Accounting\DATA\Invoice.pdf";

            Functions.RemoveExistingFile(printedInvoice);

            // Create a customer
            CUSTOMER cus = new CUSTOMER();

            if (this.varCustomer == "")
            {
                cus.name = "cust" + StringFunctions.RandStr("X(8)");

                ReceivablesLedger._SA_Create(cus);
                ReceivablesLedger._SA_Close();
            }
            else
            {
                cus.name = this.varCustomer;
            }


            // Create an item
            ITEM item = new ITEM();

            ITEM_PRICE itemPrice = new ITEM_PRICE();

            itemPrice.currency            = "Canadian Dollars";
            itemPrice.priceList           = "Regular";
            itemPrice.pricePerSellingUnit = Functions.RandCashAmount();
            item.ItemPrices.Add(itemPrice);

            if (this.varItem == "")
            {
                item.invOrServNumber = StringFunctions.RandStr("A(9)");
                InventoryServicesLedger._SA_Create(item);
                InventoryServicesLedger._SA_Close();
            }
            else
            {
                item.invOrServNumber = this._varItem;
            }

            // Create an invoice and print a Simply form
            SALES_INVOICE salesInv = new SALES_INVOICE();

            salesInv.Customer = cus;

            ROW firstRow = new ROW();

            firstRow.Item.invOrServNumber = item.invOrServNumber;
            firstRow.quantityShipped      = Functions.RandCashAmount(2);
            salesInv.GridRows.Add(firstRow);

            SalesJournal._SA_Create(salesInv, false);

            // Print. Install, then setup pdf printer to be default printer first
            SalesJournal._SA_PrintToFile(printedInvoice);

            // wait for file to be created
            Thread.Sleep(13000);

            // undo and close journal
            SalesJournal.UndoChanges();
            SalesJournal._SA_Close();

            // Verify file has been printed
            if (!Functions.VerifyFileExists(printedInvoice))
            {
                Functions.Verify(false, true, "Printed Simply form found");
            }
        }
Exemple #5
0
        /// <summary>
        /// Performs the playback of actions in this module.
        /// </summary>
        /// <remarks>You should not call this method directly, instead pass the module
        /// instance to the <see cref="TestModuleRunner.Run(ITestModule)"/> method
        /// that will in turn invoke this method.</remarks>
        void ITestModule.Run()
        {
            Mouse.DefaultMoveTime        = 300;
            Keyboard.DefaultKeyPressTime = 100;
            Delay.SpeedFactor            = 1.0;

            // create record to hold customer data
            CUSTOMER cus = new CUSTOMER();

            // only create a new customer if running test case alone
            if (this._varCustomer == "")
            {
                cus.name = "cust" + StringFunctions.RandStr("X(8)");

                ReceivablesLedger._SA_Create(cus);
                ReceivablesLedger._SA_Close();
            }
            else
            {
                // other wise take customer name from global variable
                cus.name = this._varCustomer;
            }

            // create item to use in invoice
            ITEM item = new ITEM();

            item.ItemPrices.Add(new ITEM_PRICE("Canadian Dollars"));
            item.ItemPrices[0].priceList           = "Regular";
            item.ItemPrices[0].pricePerSellingUnit = Functions.RandCashAmount();


            // only create a new item if running test case alone
            if (this._varItem == "")
            {
                item.invOrServNumber = StringFunctions.RandStr("A(9)");
                InventoryServicesLedger._SA_Create(item);
                InventoryServicesLedger._SA_Close();
            }
            else
            {
                item.invOrServNumber = this._varItem;
            }

            // Create an Invoice
            SALES_INVOICE sale = new SALES_INVOICE();

            sale.Customer = cus;

            ROW r = new ROW();

            r.Item            = item;
            r.quantityShipped = Functions.RandCashAmount(2);
            r.price           = Functions.RandCashAmount();

            sale.GridRows.Add(r);

            SalesJournal._SA_Create(sale);
            System.Threading.Thread.Sleep(2000);
            SalesJournal._SA_Close();

            this.varSInvoice = sale.transNumber;
        }
        /// <summary>
        /// Performs the playback of actions in this module.
        /// </summary>
        /// <remarks>You should not call this method directly, instead pass the module
        /// instance to the <see cref="TestModuleRunner.Run(ITestModule)"/> method
        /// that will in turn invoke this method.</remarks>
        void ITestModule.Run()
        {
            Mouse.DefaultMoveTime        = 300;
            Keyboard.DefaultKeyPressTime = 100;
            Delay.SpeedFactor            = 1.0;

            // Create a customer
            CUSTOMER cus = new CUSTOMER();

            cus.name = "cust" + StringFunctions.RandStr("X(8)");
            //cus.name = "International Oil";

            ReceivablesLedger._SA_Create(cus);
            ReceivablesLedger._SA_Close();

            // Create an item
            ITEM item = new ITEM();

            item.invOrServNumber = StringFunctions.RandStr("A(9)");
            //item.invOrServNumber = "C1020";
            item.ItemPrices.Add(new ITEM_PRICE("Canadian Dollars"));
            item.ItemPrices[0].priceList           = "Regular";
            item.ItemPrices[0].pricePerSellingUnit = Functions.RandCashAmount();

            InventoryServicesLedger._SA_Create(item);
            InventoryServicesLedger._SA_Close();

            // Create an Invoice
            SALES_INVOICE sale = new SALES_INVOICE();

            sale.Customer    = cus;
            sale.transNumber = StringFunctions.RandStr("9(8)");

            ROW r = new ROW();

            r.Item            = item;
            r.quantityShipped = Functions.RandCashAmount(2);
            r.price           = Functions.RandCashAmount();

            sale.GridRows.Add(r);

            SalesJournal._SA_Create(sale);
            System.Threading.Thread.Sleep(2000);
            SalesJournal._SA_Close();

//            // tmp
//            CUSTOMER cus = new CUSTOMER();
//            cus.name = "custYXTngnQw";
//            ITEM item = new ITEM();
//            item.invOrServNumber = "aqlUMddep";
//            SALES_INVOICE sale = new SALES_INVOICE();
//            sale.Customer = cus;
//            sale.transNumber = "15883414";
//
            // Create an receipt
            RECEIPT receipt = new RECEIPT();

            receipt.Customer = cus;
            RECEIPT_ROW row1 = new RECEIPT_ROW();

            row1.Invoice = sale;
            receipt.GridRows.Add(row1);

            ReceiptsJournal._SA_Create(receipt);
            System.Threading.Thread.Sleep(1000);
            ReceiptsJournal._SA_Close();
        }
Exemple #7
0
        /// <summary>
        /// Performs the playback of actions in this module.
        /// </summary>
        /// <remarks>You should not call this method directly, instead pass the module
        /// instance to the <see cref="TestModuleRunner.Run(ITestModule)"/> method
        /// that will in turn invoke this method.</remarks>
        void ITestModule.Run()
        {
            Mouse.DefaultMoveTime        = 300;
            Keyboard.DefaultKeyPressTime = 100;
            Delay.SpeedFactor            = 1.0;


            // create record to hold customer data
            CUSTOMER cus = new CUSTOMER();

            if (this.varCustomer == "")
            {
                cus.name = "cust" + StringFunctions.RandStr("X(8)");

                ReceivablesLedger._SA_Create(cus);
                ReceivablesLedger._SA_Close();
            }
            else
            {
                cus.name = this.varCustomer;
            }

            // create an item to use in invoice
            ITEM item = new ITEM();

            item.ItemPrices.Add(new ITEM_PRICE("Canadian Dollars"));
            item.ItemPrices[0].priceList           = "Regular";
            item.ItemPrices[0].pricePerSellingUnit = Functions.RandCashAmount();

            if (this.varCustomer == "")
            {
                item.invOrServNumber = StringFunctions.RandStr("A(9)");
                InventoryServicesLedger._SA_Create(item);
                InventoryServicesLedger._SA_Close();
            }
            else
            {
                item.invOrServNumber = this.varItem;
            }

            // Create an Invoice
            SALES_INVOICE sale = new SALES_INVOICE();

            sale.Customer = cus;



            ROW r = new ROW();

            r.Item            = item;
            r.quantityShipped = Functions.RandCashAmount(2);
            r.price           = Functions.RandCashAmount();

            sale.GridRows.Add(r);

            if (this._varSInvoice == "")
            {
                SalesJournal._SA_Create(sale);
                // sleep is setup in _SA_Close method
                SalesJournal._SA_Close();
            }
            else
            {
                sale.transNumber = this.varSInvoice;
            }

            // Adjust invoice
            ROW adjR = new ROW();

            r.quantityShipped = Functions.RandCashAmount(2);
            sale.GridRows.Add(adjR);

            SalesJournal._SA_Create(sale, true, true);
            SalesJournal._SA_Close();
        }
        /// <summary>
        /// Performs the playback of actions in this module.
        /// </summary>
        /// <remarks>You should not call this method directly, instead pass the module
        /// instance to the <see cref="TestModuleRunner.Run(ITestModule)"/> method
        /// that will in turn invoke this method.</remarks>
        void ITestModule.Run()
        {
            Mouse.DefaultMoveTime        = 300;
            Keyboard.DefaultKeyPressTime = 100;
            Delay.SpeedFactor            = 1.0;

            // Create a customer
            CUSTOMER cus = new CUSTOMER();

            if (this.varCustomer == "")
            {
                cus.name = "cust" + StringFunctions.RandStr("X(8)");

                ReceivablesLedger._SA_Create(cus);
                ReceivablesLedger._SA_Close();
            }
            else
            {
                cus.name = this.varCustomer;
            }

            // Create an item to be used in invoice
            ITEM item = new ITEM();

            item.ItemPrices.Add(new ITEM_PRICE("Canadian Dollars"));
            item.ItemPrices[0].priceList           = "Regular";
            item.ItemPrices[0].pricePerSellingUnit = Functions.RandCashAmount();


            if (this.varItem == "")
            {
                item.invOrServNumber = StringFunctions.RandStr("A(9)");

                InventoryServicesLedger._SA_Create(item);
                InventoryServicesLedger._SA_Close();
            }
            else
            {
                item.invOrServNumber = this.varItem;
            }


            // Create an Invoice
            SALES_INVOICE sale = new SALES_INVOICE();

            sale.Customer = cus;

            ROW r = new ROW();

            r.Item            = item;
            r.quantityShipped = Functions.RandCashAmount(2);
            r.price           = Functions.RandCashAmount();

            sale.GridRows.Add(r);

            if (this.varSInvoice == "")
            {
                SalesJournal._SA_Create(sale);
                System.Threading.Thread.Sleep(1000);
                SalesJournal._SA_Close();
            }
            else
            {
                sale.transNumber = this.varSInvoice;
            }

            // Create a receipt
            RECEIPT receipt = new RECEIPT();

            receipt.Customer = cus;
            RECEIPT_ROW receiptRow = new RECEIPT_ROW();

            receiptRow.Invoice = sale;
            receipt.GridRows.Add(receiptRow);

            ReceiptsJournal._SA_Create(receipt);
            System.Threading.Thread.Sleep(1000);
            ReceiptsJournal._SA_Close();
        }