Example #1
0
        /// <summary>
        /// Update an existing invoice
        /// </summary>
        private void btnUpdate_Click(object sender, EventArgs e)
        {
            if (myScreen == null)
            {
                MessageBox.Show("You must load an entry first!");
                return;
            }

            myScreen.myPJInvDet     = (ctDynamicsSL.project.flexibleBillings.input.projectInvoiceAndAdjustmentMaintenance.PJInvDet[])dgvRegular.DataSource;
            myScreen.myPJInvDet_TRD = (ctDynamicsSL.project.flexibleBillings.input.projectInvoiceAndAdjustmentMaintenance.PJInvDet[])dgvTRD.DataSource;

            var validate = myIAMService.editScreen("VALIDATEONLY", myScreen);

            if (validate.errorMessage.Trim() != "")
            {
                MessageBox.Show("Error: " + validate.errorMessage);
            }
            else
            {
                var result = myIAMService.editScreen("UPDATE", myScreen);
                if (result.errorMessage.Trim() != "")
                {
                    MessageBox.Show("Error: " + validate.errorMessage);
                }
                else
                {
                    myScreen        = result;
                    tbDraftNum.Text = myScreen.myPJINVHDR.draft_num.Trim();
                    btnLoad_Click(null, null);
                    MessageBox.Show("Complete!");
                }
            }
        }
Example #2
0
        /// <summary>
        /// Load an existing invoice
        /// </summary>
        private void btnLoad_Click(object sender, EventArgs e)
        {
            dgvRegular.DataSource = null;
            dgvTRD.DataSource     = null;

            try
            {
                myScreen = myIAMService.getScreenByDraftNumber(tbDraftNum.Text.ToUpper().Trim());
                if (myScreen.errorMessage.Trim() != "")
                {
                    throw new Exception(myScreen.errorMessage.Trim());
                }
                if (myScreen.myPJINVHDR == null)
                {
                    throw new Exception("Draft Number not found!");
                }
                tbProjectID.Text      = myScreen.myPJINVHDR.project_billwith.Trim().ToUpper();
                tbDraftNum.Text       = myScreen.myPJINVHDR.draft_num.Trim().ToUpper();
                dgvRegular.DataSource = myScreen.myPJInvDet;
                dgvTRD.DataSource     = myScreen.myPJInvDet_TRD;
                tbScreen.Text         = ctStandardLib.ctHelper.serializeObject(myScreen).Replace("><", ">" + Environment.NewLine + "<");
            }catch (Exception ex)
            {
                MessageBox.Show("Error loading: " + ex.Message);
            }
        }
Example #3
0
        /// <summary>
        /// This creates a new generic Invoice Entry
        /// </summary>
        private void btnNew_Click(object sender, EventArgs e)
        {
            try
            {
                if (tbProjectID.Text.Trim() == "")
                {
                    MessageBox.Show("You must select a valid billing project first!");
                    return;
                }
                else
                {
                    var tmpProject = myIAMService.getProjectsByExactID(tbProjectID.Text.Trim());
                    if (tmpProject == null)
                    {
                        MessageBox.Show("Invalid ProjectID!");
                        return;
                    }
                    else
                    {
                        tbProjectID.Text = tmpProject.project.Trim().ToUpper();
                    }
                }

                ctDynamicsSL.project.flexibleBillings.input.projectInvoiceAndAdjustmentMaintenance.screen newScreen = new ctDynamicsSL.project.flexibleBillings.input.projectInvoiceAndAdjustmentMaintenance.screen();
                newScreen.myPJINVHDR                  = new ctDynamicsSL.project.flexibleBillings.input.projectInvoiceAndAdjustmentMaintenance.PJINVHDR();
                newScreen.myPJINVHDR.CpnyId           = System.Configuration.ConfigurationManager.AppSettings["CPNYID"];
                newScreen.myPJINVHDR.project_billwith = tbProjectID.Text;
                newScreen = myIAMService.getNewscreen(newScreen); //load defaults global, cpnyID and project specific

                if (newScreen.errorMessage.Trim() != "")
                {
                    MessageBox.Show(newScreen.errorMessage);
                    return;
                }

                newScreen.myPJINVHDR.customer = myIAMService.getCustomersByID("C315")[0].CustId.Trim(); // custID required, picking first entry as example;
                newScreen.myPJINVHDR.doctype  = "IN";                                                   //IN,AD *required
                newScreen.myPJINVHDR.end_date = System.DateTime.Now.AddDays(1);                         //required

                newScreen.myPJInvDet                     = new ctDynamicsSL.project.flexibleBillings.input.projectInvoiceAndAdjustmentMaintenance.PJInvDet[1];
                newScreen.myPJInvDet[0]                  = new ctDynamicsSL.project.flexibleBillings.input.projectInvoiceAndAdjustmentMaintenance.PJInvDet();
                newScreen.myPJInvDet[0].CpnyId           = newScreen.myPJINVHDR.CpnyId;
                newScreen.myPJInvDet[0].source_trx_date  = System.DateTime.Now;
                newScreen.myPJInvDet[0].project          = newScreen.myPJINVHDR.project_billwith;
                newScreen.myPJInvDet[0].project_billwith = newScreen.myPJINVHDR.project_billwith;

                //load any defaults based on values already set
                newScreen.myPJInvDet[0]            = myIAMService.getNewPJInvDet(newScreen.myPJInvDet[0]);
                newScreen.myPJInvDet[0].li_type    = "I";                                                                                            //I,O required
                newScreen.myPJInvDet[0].acct       = myIAMService.getAccountCategoriesForProjectByAcct(newScreen.myPJInvDet[0].project, "")[0].acct; //required, picking first entry as example.
                newScreen.myPJInvDet[0].pjt_entity = myIAMService.getTasks(newScreen.myPJInvDet[0].project, "")[0].pjt_entity;                       //required, picking first entry as example.

                newScreen.myPJInvDet_TRD                     = new ctDynamicsSL.project.flexibleBillings.input.projectInvoiceAndAdjustmentMaintenance.PJInvDet[1];
                newScreen.myPJInvDet_TRD[0]                  = new ctDynamicsSL.project.flexibleBillings.input.projectInvoiceAndAdjustmentMaintenance.PJInvDet();
                newScreen.myPJInvDet_TRD[0].CpnyId           = newScreen.myPJINVHDR.CpnyId;
                newScreen.myPJInvDet_TRD[0].source_trx_date  = System.DateTime.Now;
                newScreen.myPJInvDet_TRD[0].project          = newScreen.myPJINVHDR.project_billwith;
                newScreen.myPJInvDet_TRD[0].project_billwith = newScreen.myPJINVHDR.project_billwith;

                //load any defaults based on values already set
                newScreen.myPJInvDet_TRD[0]            = myIAMService.getNewPJInvDet(newScreen.myPJInvDet_TRD[0]);
                newScreen.myPJInvDet_TRD[0].li_type    = "R";                                                                          //T,R,B,D,A required
                newScreen.myPJInvDet_TRD[0].acct       = myIAMService.getTRDAccountCategoriesByAcct("")[0].acct;                       //required, picking first entry as example.
                newScreen.myPJInvDet_TRD[0].pjt_entity = myIAMService.getTasks(newScreen.myPJInvDet_TRD[0].project, "")[0].pjt_entity; //required, picking first entry as example.

                tbScreen.Text = ctStandardLib.ctHelper.serializeObject(newScreen).Replace("><", ">" + System.Environment.NewLine + "<");

                var validatedScreen = myIAMService.editScreen("VALIDATEONLY", newScreen);
                if (validatedScreen.errorMessage.Trim() != "")
                {
                    MessageBox.Show("Validation Error: " + validatedScreen.errorMessage);
                    return;
                }
                else
                {
                    var savedScreen = myIAMService.editScreen("ADD", newScreen);
                    if (savedScreen.errorMessage.Trim() != "")
                    {
                        MessageBox.Show("Adding Error: " + savedScreen.errorMessage);
                        return;
                    }
                    else
                    {
                        myScreen              = savedScreen;
                        tbProjectID.Text      = myScreen.myPJINVHDR.project_billwith;
                        tbDraftNum.Text       = myScreen.myPJINVHDR.draft_num;
                        dgvRegular.DataSource = null;
                        dgvTRD.DataSource     = null;
                        dgvRegular.DataSource = myScreen.myPJInvDet;
                        dgvTRD.DataSource     = myScreen.myPJInvDet_TRD;
                    }
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show("Unknown Error: " + ex.Message);
            }
        }