예제 #1
0
        private void ImportNode(appDB.IssueDataTable tempIssues, appDB.IssueRow ir, appDB.IssueRow parentIssue, int rootFileId)
        {
            //this will recreate the issue structure
            //it does not try to synchronize it
            //only to be used to setup test data
            appDB.IssueRow newIR = (appDB.IssueRow)Add(null);

            newIR.ParentIssueId    = parentIssue.IssueId;
            newIR.IssueNameEng     = ir.IssueNameEng;
            newIR.IssueNameFre     = ir.IssueNameFre;
            newIR.SortByFileNumber = ir.SortByFileNumber;

            //create file
            FileManager myFile = myA.CreateFile(myA.GetFile(rootFileId));

            myFile.CurrentFile.NameE = newIR.IssueNameEng;
            myFile.CurrentFile.NameF = newIR.IssueNameFre;

            BusinessProcess bp = myA.GetBP();

            bp.AddForUpdate(myFile.EFile);
            bp.AddForUpdate(myFile.GetFileXRef());
            bp.AddForUpdate(myFile.GetFileOffice());
            bp.AddForUpdate(myFile.GetFileContact());
            bp.AddForUpdate(myFile.EFile);
            bp.Update();

            if (!ir.IsFileIdNull())
            {
                newIR.FileId = myFile.CurrentFile.FileId;
            }
            foreach (appDB.IssueRow cir in ir.GetIssueRows())
            {
                ImportNode(tempIssues, cir, newIR, myFile.CurrentFileId);
            }
        }