예제 #1
0
        private void butCopy_Click(object sender, System.EventArgs e)
        {
            if (listClaimForms.SelectedIndex == -1)
            {
                MessageBox.Show(Lan.g(this, "Please select an item first."));
                return;
            }
            ClaimForm ClaimFormCur    = ClaimForms.ListLong[listClaimForms.SelectedIndex].Copy();
            long      oldClaimFormNum = ClaimFormCur.ClaimFormNum;

            ClaimFormCur.UniqueID = "";          //designates it as a user added claimform
            ClaimForms.Insert(ClaimFormCur);     //this duplicates the original claimform, but no items.
            long newClaimFormNum = ClaimFormCur.ClaimFormNum;

            //ClaimFormItems.GetListForForm(ClaimForms.ListLong[listClaimForms.SelectedIndex].ClaimFormNum);
            for (int i = 0; i < ClaimFormCur.Items.Length; i++)
            {
                //ClaimFormItems.Cur=ClaimFormItems.ListForForm[i];
                ClaimFormCur.Items[i].ClaimFormNum = newClaimFormNum;
                ClaimFormItems.Insert(ClaimFormCur.Items[i]);
            }
            ClaimFormItems.RefreshCache();
            changed = true;
            FillList();
        }
예제 #2
0
        ///<Summary>Can be called externally as part of the update sequence.  Surround with try catch.  Returns the ClaimFormNum of the new ClaimForm if it inserted a new claimform.</Summary>
        public static int ImportForm(string path, bool isUpdateSequence)
        {
            if (!File.Exists(path))
            {
                throw new ApplicationException(Lan.g("FormClaimForm", "File does not exist."));
            }
            ClaimForm     tempClaimForm = new ClaimForm();
            XmlSerializer serializer    = new XmlSerializer(typeof(ClaimForm));

            try{
                using (TextReader reader = new StreamReader(path)){
                    tempClaimForm = (ClaimForm)serializer.Deserialize(reader);
                }
            }
            catch {
                throw new ApplicationException(Lan.g("FormClaimForm", "Invalid file format"));
            }
            int  retVal = 0;
            bool isNew  = true;

            if (tempClaimForm.UniqueID != "")          //if it's blank, it's always inserted.
            {
                for (int i = 0; i < ClaimForms.ListLong.Length; i++)
                {
                    if (ClaimForms.ListLong[i].UniqueID == tempClaimForm.UniqueID)
                    {
                        isNew = false;
                    }
                }
            }
            if (isNew)
            {
                ClaimForms.Insert(tempClaimForm);                //now we have a primary key.
                retVal = tempClaimForm.ClaimFormNum;
                for (int j = 0; j < tempClaimForm.Items.Length; j++)
                {
                    tempClaimForm.Items[j].ClaimFormNum = tempClaimForm.ClaimFormNum;
                    ClaimFormItems.Insert(tempClaimForm.Items[j]);
                }
            }
            else
            {
                if (!isUpdateSequence)
                {
                    if (MessageBox.Show(tempClaimForm.Description + " already exists.  Replace?", "",
                                        MessageBoxButtons.OKCancel) != DialogResult.OK)
                    {
                        return(0);
                    }
                }
                ClaimForms.UpdateByUniqueID(tempClaimForm);
            }
            return(retVal);           //only if uniqueID
        }
예제 #3
0
        ///<summary>Copy an internal form over to a new custom form.</summary>
        private void butCopy_Click(object sender, EventArgs e)
        {
            if (gridInternal.GetSelectedIndex() == -1)
            {
                MessageBox.Show(Lan.g(this, "Please select an item from the internal grid to copy over to the custom grid."));
                return;
            }
            //just insert it into the db.
            ClaimForm claimFormInternal = (ClaimForm)gridInternal.Rows[gridInternal.GetSelectedIndex()].Tag;
            long      claimFormNum      = ClaimForms.Insert(claimFormInternal, true);

            FillGridCustom();
        }
예제 #4
0
        ///<summary>Duplicate a custom claim form.</summary>
        private void butDuplicate_Click(object sender, System.EventArgs e)
        {
            if (gridCustom.GetSelectedIndex() == -1)
            {
                MsgBox.Show(this, "Please select a Custom Claim Form first.");
                return;
            }
            ClaimForm claimFormCur    = (ClaimForm)gridCustom.Rows[gridCustom.GetSelectedIndex()].Tag;
            long      oldClaimFormNum = claimFormCur.ClaimFormNum;

            //claimFormCur.UniqueID="";//designates it as a user added claimform
            ClaimForms.Insert(claimFormCur, true);           //this duplicates the original claimform, but no items.
            changed = true;
            FillGridCustom();
        }
예제 #5
0
        ///<summary>Add a custom claim form.</summary>
        private void butAdd_Click(object sender, System.EventArgs e)
        {
            ClaimForm ClaimFormCur = new ClaimForm();

            ClaimForms.Insert(ClaimFormCur, false);
            ClaimFormCur.IsNew = true;
            FormClaimFormEdit FormCFE = new FormClaimFormEdit(ClaimFormCur);

            FormCFE.ShowDialog();
            if (FormCFE.DialogResult != DialogResult.OK)
            {
                return;
            }
            changed = true;
            FillGridCustom();
        }
예제 #6
0
        private void butAdd_Click(object sender, System.EventArgs e)
        {
            ClaimForm ClaimFormCur = new ClaimForm();

            ClaimForms.Insert(ClaimFormCur);
            FormClaimFormEdit FormCFE = new FormClaimFormEdit();

            FormCFE.ClaimFormCur = ClaimFormCur;
            FormCFE.IsNew        = true;
            FormCFE.ShowDialog();
            if (FormCFE.DialogResult != DialogResult.OK)
            {
                return;
            }
            changed = true;
            //ClaimFormItems refreshed within FormCFE
            FillList();
        }
예제 #7
0
        ///<summary>Import an XML file into the custom claim forms list.</summary>
        private void butImport_Click(object sender, System.EventArgs e)
        {
            OpenFileDialog openDlg = new OpenFileDialog();

            openDlg.InitialDirectory = PrefC.GetString(PrefName.ExportPath);
            ClaimForm claimForm;

            if (openDlg.ShowDialog() != DialogResult.OK)
            {
                return;
            }
            try{
                claimForm = ClaimForms.DeserializeClaimForm(openDlg.FileName, "");
            }
            catch (ApplicationException ex) {
                MessageBox.Show(ex.Message);
                return;
            }
            ClaimForms.Insert(claimForm, true);           //now we have a primary key.
            MsgBox.Show(this, "Imported");
            changed = true;
            FillGridCustom();
        }