Ejemplo n.º 1
0
        private void CmdCheque_Click(object sender, RoutedEventArgs e)
        {
            MVTaxDocument vm = (MVTaxDocument)vw;
            MAccountDoc   ad = CTaxDocumentUtil.TaxDocToAccountDoc(vm, this);

            if (ad == null)
            {
                return;
            }

            if (vm.ChequeID.Equals(""))
            {
                ad.ArApAmt = vm.WhAmount;

                ObservableCollection <MBaseModel> arr = new ObservableCollection <MBaseModel>();
                CCriteriaCheque.ShowAddChequeWindow("2", arr, ad);

                if (arr.Count > 0)
                {
                    MCheque cq = (MCheque)arr[0];
                    vm.ChequeID   = cq.ChequeID;
                    vm.ChequeNo   = cq.ChequeNo;
                    vm.IsModified = true;
                }
            }
            else
            {
                CCriteriaCheque.ShowEditWindow("2", null, ad);
            }
        }
Ejemplo n.º 2
0
        private void CmdAddProduct_Click(object sender, RoutedEventArgs e)
        {
            MVTaxDocument td = (MVTaxDocument)vw;

            if (td.TaxDocID.Equals(""))
            {
                CHelper.ShowErorMessage("", "ERROR_PLEASE_SAVE_FIRST", null);
                return;
            }

            Boolean result = validateData();

            if (!result)
            {
                return;
            }

            TaxDocumentType tdt = (TaxDocumentType)CUtil.StringToInt(td.DocumentType);

            String tt = "53";

            if (tdt == TaxDocumentType.TaxDocRev3)
            {
                tt = "3";
            }

            CTable t = vw.GetDbObject();

            t.SetFieldValue("RV_TAX_TYPE", tt);

            CUtil.EnableForm(false, this);
            CTable obj = OnixWebServiceAPI.SubmitObjectAPI("PopulateWhItems", t);

            CUtil.EnableForm(true, this);

            if (obj == null)
            {
                CHelper.ShowErorMessage("", "ERROR_NO_ITEM_FOUND", null);
                return;
            }

            if (obj != null)
            {
                td.ItemCount        = obj.GetFieldValue("ITEM_COUNT");
                td.WhAmount         = obj.GetFieldValue("WH_AMOUNT");
                td.ExpenseAmount    = obj.GetFieldValue("EXPENSE_REVENUE_AMT");
                td.PreviousRunMonth = obj.GetFieldValue("PREVIOUS_RUN_MONTH");
                td.PreviousRunYear  = obj.GetFieldValue("PREVIOUS_RUN_YEAR");

                ArrayList arr = obj.GetChildArray("WH_ITEMS");
                if (arr.Count <= 0)
                {
                    //Just notify
                    CHelper.ShowErorMessage("", "ERROR_NO_ITEM_FOUND", null);
                }

                td.PopulateWhItems(arr);
                td.IsModified = true;
            }
        }
Ejemplo n.º 3
0
        private void populateAmount(ArrayList arr)
        {
            int[] types = new int[20];
            //ซื้อ - 1, ขาย - 0, อื่น ๆ ไม่คิดคำนวณ - 2
            types[(int)AccountDocumentType.AcctDocCashSale]       = 0;
            types[(int)AccountDocumentType.AcctDocDebtSale]       = 0;
            types[(int)AccountDocumentType.AcctDocCrNote]         = 0;
            types[(int)AccountDocumentType.AcctDocDrNote]         = 0;
            types[(int)AccountDocumentType.AcctDocCashPurchase]   = 1;
            types[(int)AccountDocumentType.AcctDocDebtPurchase]   = 1;
            types[(int)AccountDocumentType.AcctDocCrNotePurchase] = 1;
            types[(int)AccountDocumentType.AcctDocDrNotePurchase] = 1;
            types[(int)AccountDocumentType.AcctDocArReceipt]      = 2;
            types[(int)AccountDocumentType.AcctDocApReceipt]      = 2;
            types[(int)AccountDocumentType.AcctDocMiscRevenue]    = 0;
            types[(int)AccountDocumentType.AcctDocMiscExpense]    = 1;
            types[(int)AccountDocumentType.AcctDocCashDepositAr]  = 2;
            types[(int)AccountDocumentType.AcctDocCashDepositAp]  = 2;
            types[(int)AccountDocumentType.AcctDocSaleOrder]      = 2;
            types[(int)AccountDocumentType.AcctDocBillSummary]    = 2;

            Tupple sale     = new Tupple();
            Tupple purchase = new Tupple();
            Tupple others   = new Tupple();

            Tupple[] temps = new Tupple[3];

            temps[0] = sale;
            temps[1] = purchase;
            temps[2] = others;

            foreach (CTable dat in arr)
            {
                int    dt  = CUtil.StringToInt(dat.GetFieldValue("DOCUMENT_TYPE"));
                double vat = CUtil.StringToDouble(dat.GetFieldValue("VAT_AMT"));
                double amt = CUtil.StringToDouble(dat.GetFieldValue("REVENUE_EXPENSE_FOR_VAT_AMT"));

                int factor = 1;
                if ((dt == (int)AccountDocumentType.AcctDocCrNote) || (dt == (int)AccountDocumentType.AcctDocCrNotePurchase))
                {
                    factor = -1;
                }

                int idx = types[dt];

                Tupple t = temps[idx];
                t.VatAmt = t.VatAmt + factor * vat;
                t.Amount = t.Amount + factor * amt;
            }

            MVTaxDocument vm   = (MVTaxDocument)vw;
            MVTaxFormPP30 pp30 = vm.TaxFormPP30;

            pp30.SaleAmt             = sale.Amount.ToString();
            pp30.SaleVatAmt          = sale.VatAmt.ToString();
            pp30.PurchaseEligibleAmt = purchase.Amount.ToString();
            pp30.PurchaseVatAmt      = purchase.VatAmt.ToString();

            pp30.NotifyPopulatedFields();
        }
Ejemplo n.º 4
0
        public override Tuple <CTable, ObservableCollection <MBaseModel> > QueryData()
        {
            MVTaxDocument ad = (model as MVTaxDocument);
            CTable        tb = ad.GetDbObject();

            tb.SetFieldValue("DOCUMENT_TYPE_SET", "(4)");

            items = OnixWebServiceAPI.GetListAPI("GetTaxDocList", "TAX_DOC_LIST", tb);
            lastObjectReturned = OnixWebServiceAPI.GetLastObjectReturned();

            itemSources.Clear();
            int idx = 0;

            foreach (CTable o in items)
            {
                MVTaxDocument v = new MVTaxDocument(o);

                v.RowIndex = idx;
                itemSources.Add(v);
                idx++;
            }

            Tuple <CTable, ObservableCollection <MBaseModel> > tuple = new Tuple <CTable, ObservableCollection <MBaseModel> >(lastObjectReturned, itemSources);

            return(tuple);
        }
Ejemplo n.º 5
0
        protected override bool isEditable()
        {
            MVTaxDocument mv = (MVTaxDocument)loadParam.ActualView;

            if (mv != null)
            {
                return(mv.IsEditable);
            }

            return(true);
        }
Ejemplo n.º 6
0
        protected override MBaseModel createObject()
        {
            MVTaxDocument mv = new MVTaxDocument(new CTable(""));

            mv.DocumentType   = ((int)TaxDocumentType.TaxDocRev1Kor).ToString();
            mv.DocumentStatus = "1";

            mv.DocumentDate = DateTime.Now;

            return(mv);
        }
Ejemplo n.º 7
0
        private void populateFormValue(AcroFields pdfFormFields)
        {
            MCompanyProfile cmp  = CMasterReference.Instance.CompanyProfile;
            MVTaxDocument   vm   = (MVTaxDocument)vw;
            MVTaxFormPP30   pp30 = vm.TaxFormPP30;

            //pdfFormFields.SetField("Text1.0", "0 1155 48000 18 6");
            pdfFormFields.SetField("Text1.0", CTaxDocumentUtil.FormatTaxIDField(cmp.TaxID));
            pdfFormFields.SetField("Text1.01", cmp.RegistrationName);
            pdfFormFields.SetField("Text1.3", cmp.RegistrationAddress);
            pdfFormFields.SetField("Text1.4", cmp.BuildingName);
            pdfFormFields.SetField("Text1.5", cmp.RoomNo);
            pdfFormFields.SetField("Text1.6", cmp.FloorNo);
            pdfFormFields.SetField("Text1.7", cmp.VillageName);
            pdfFormFields.SetField("Text1.8", cmp.HomeNo);
            pdfFormFields.SetField("Text1.9", cmp.Moo);
            pdfFormFields.SetField("Text1.10", cmp.Soi);
            pdfFormFields.SetField("Text1.11", cmp.Road);
            pdfFormFields.SetField("Text1.12", cmp.District);
            pdfFormFields.SetField("Text1.13", cmp.Town);
            pdfFormFields.SetField("Text1.14", cmp.Province);
            pdfFormFields.SetField("Text1.15", cmp.Zip);
            pdfFormFields.SetField("Text1.16", cmp.Telephone);

            pdfFormFields.SetField("Text1.22", vm.TaxYearBD);

            pdfFormFields.SetField("Text2.1", CTaxDocumentUtil.FormatNumberField(pp30.SaleAmt));
            pdfFormFields.SetField("Text2.2", CTaxDocumentUtil.FormatNumberField(pp30.SaleZeroPctAmt, "0 00"));
            pdfFormFields.SetField("Text2.3", CTaxDocumentUtil.FormatNumberField(pp30.SaleExemptAmt, "0 00"));
            pdfFormFields.SetField("Text2.4", CTaxDocumentUtil.FormatNumberField(pp30.SaleEligibleAmt, "0 00"));
            pdfFormFields.SetField("Text2.5", CTaxDocumentUtil.FormatNumberField(pp30.SaleVatAmt, "0 00"));

            pdfFormFields.SetField("Text2.6", CTaxDocumentUtil.FormatNumberField(pp30.PurchaseEligibleAmt));
            pdfFormFields.SetField("Text2.7", CTaxDocumentUtil.FormatNumberField(pp30.PurchaseVatAmt));

            pdfFormFields.SetField("Text2.8", CTaxDocumentUtil.FormatNumberField(pp30.VatClaimAmt));
            pdfFormFields.SetField("Text2.9", CTaxDocumentUtil.FormatNumberField(pp30.VatExtraAmt));
            pdfFormFields.SetField("Text2.10", CTaxDocumentUtil.FormatNumberField(pp30.VatPreviousFwdAmt));

            pdfFormFields.SetField("Text2.11", CTaxDocumentUtil.FormatNumberField(pp30.VatClaimTotalAmt));
            pdfFormFields.SetField("Text2.12", CTaxDocumentUtil.FormatNumberField(pp30.VatExtraTotalAmt));

            pdfFormFields.SetField("Text2.13", CTaxDocumentUtil.FormatNumberField(pp30.AdditionalAmt));
            pdfFormFields.SetField("Text2.14", CTaxDocumentUtil.FormatNumberField(pp30.PenaltyAmt));

            pdfFormFields.SetField("Text2.15", CTaxDocumentUtil.FormatNumberField(pp30.VatClaimGrandAmt));
            pdfFormFields.SetField("Text2.16", CTaxDocumentUtil.FormatNumberField(pp30.VatExtraGrandAmt));

            int month    = CUtil.StringToInt(vm.TaxMonth);
            int monthIdx = monthMap[month];

            pdfFormFields.SetField("Radio Button3", monthIdx.ToString(), true);
        }
        public WinTaxDocRendererProgress(CWinLoadParam param) : base(param)
        {
            pdfName = String.Format("{0}{1}", Path.GetTempPath(), "rev3_53.pdf");
            InitializeComponent();

            actualView = (MVTaxDocument)loadParam.ActualView;
            company    = CMasterReference.Instance.CompanyProfile;

            taxDocType = (TaxDocumentType)CUtil.StringToInt(actualView.DocumentType);

            initMonthMap();
        }
Ejemplo n.º 9
0
        protected override MBaseModel createObject()
        {
            MVTaxDocument mv = new MVTaxDocument(new CTable(""));

            mv.DocumentType   = ((int)TaxDocumentType.TaxDocPP30).ToString();
            mv.DocumentStatus = "1";

            mv.DocumentDate = DateTime.Now;

            if (loadParam.Mode.Equals("A"))
            {
                mv.AddDefaultTaxPP30();
            }

            return(mv);
        }
Ejemplo n.º 10
0
        protected override MBaseModel createObject()
        {
            MVTaxDocument mv = new MVTaxDocument(new CTable(""));

            if (loadParam.GenericType.Equals("2"))
            {
                mv.DocumentType = ((int)TaxDocumentType.TaxDocRev3).ToString();
            }
            else
            {
                mv.DocumentType = ((int)TaxDocumentType.TaxDocRev53).ToString();
            }
            mv.DocumentStatus = "1";

            mv.DocumentDate = DateTime.Now;

            return(mv);
        }
Ejemplo n.º 11
0
        public void ShowEditWindowEx(MVTaxDocument actDoc)
        {
            if (!CHelper.VerifyAccessRight("HR_TAXFORM_EDIT"))
            {
                return;
            }

            CWinLoadParam   param = new CWinLoadParam();
            TaxDocumentType dt    = (TaxDocumentType)CUtil.StringToInt(actDoc.DocumentType);

            if (dt == TaxDocumentType.TaxDocRev1)
            {
                param.Caption    = CUtil.TaxDocTypeToString(dt);
                param.Mode       = "E";
                param.ActualView = actDoc;
                FactoryWindow.ShowWindow("WinAddEditTaxFormPRV1", param);
            }
        }
Ejemplo n.º 12
0
        private Boolean isDataConsistent()
        {
            MVTaxDocument td = (MVTaxDocument)vw;

            if (td.PreviousRunYear.Equals(""))
            {
                //Add mode
                return(true);
            }

            if (td.PreviousRunYear.Equals(td.TaxYear) && td.PreviousRunMonth.Equals(td.TaxMonth))
            {
                return(true);
            }

            CHelper.ShowErorMessage("", "ERROR_PLEASE_RE_CALCULATE", null);

            return(false);
        }
Ejemplo n.º 13
0
        private void CmdCalculate_Click(object sender, System.Windows.RoutedEventArgs e)
        {
            Boolean result = CHelper.ValidateTextBox(lblYear, txtYear, false);

            if (!result)
            {
                return;
            }

            result = CHelper.ValidateComboBox(lblMonth, cboMonth, false);
            if (!result)
            {
                return;
            }

            MVTaxDocument vm = (MVTaxDocument)vw;

            String mm = "";
            int    m  = CUtil.StringToInt(vm.TaxMonth);

            if (m < 10)
            {
                mm = "0" + m;
            }
            else
            {
                mm = "" + m;
            }

            String yyyymm = vm.TaxYear + mm;

            CTable t = new CTable("");

            t.SetFieldValue("DOCUMENT_STATUS", "2");
            t.SetFieldValue("DOCUMENT_YYYY", vm.TaxYear);
            t.SetFieldValue("DOCUMENT_YYYYMM", yyyymm);
            CUtil.EnableForm(false, this);
            ArrayList arr = OnixWebServiceAPI.GetListAPI("GetVatAmountByDocTypeInMonth", "DOCTYPE_SUMMARY_LIST", t);

            populateAmount(arr);
            CUtil.EnableForm(true, this);
        }
Ejemplo n.º 14
0
        private void CmdPreview_Click(object sender, RoutedEventArgs e)
        {
            MVTaxDocument td = (MVTaxDocument)vw;

            Boolean result = validateData();

            if (!result)
            {
                return;
            }

            CWinLoadParam parm = new CWinLoadParam();

            parm.ActualView = td;
            WinTaxDocRendererProgress trp = new WinTaxDocRendererProgress(parm);

            trp.ShowDialog();

            WinPDFViewer wp = new WinPDFViewer(trp.PDFName, this.Title);

            wp.ShowDialog();
            wp = null;
        }
Ejemplo n.º 15
0
        private void CmdApprove_Click(object sender, RoutedEventArgs e)
        {
            MVTaxDocument mv = (MVTaxDocument)vw;

            if (mv.ChequeID.Equals(""))
            {
                CHelper.ShowErorMessage("", "ERROR_CREATE_CHEQUE_FIRST", null);
                return;
            }

            Boolean r = approveData();

            if (r)
            {
                //Approve cheque as well
                CUtil.EnableForm(false, this);
                CTaxDocumentUtil.ApproveChequeFromTaxDoc(mv);
                CUtil.EnableForm(true, this);

                vw.IsModified = false;
                this.Close();
            }
        }