Beispiel #1
0
        makeCutSheet(string strDocName)
        {
            string strPath     = Path.GetDirectoryName(BaseObjs.docFullName);
            string strPathX    = string.Format("{0}\\Survey\\Cutsheets\\Staking\\", strPath);
            string strFileName = strPathX + strDocName;

            if (!File.Exists(strPathX))
            {
                try
                {
                    Directory.CreateDirectory(strPath);
                }
                catch (System.Exception)
                {
                    if (!Directory.Exists(strPath + "\\Survey"))
                    {
                        Directory.CreateDirectory(strPath + "\\Survey");
                    }
                    if (!Directory.Exists(strPath + "\\Survey\\Cutsheets"))
                    {
                        Directory.CreateDirectory(strPath + "\\Survey\\Cutsheets");
                    }
                    Directory.CreateDirectory(strPath + "\\Survey\\Cutsheets\\Staking");
                }
            }

            if (File.Exists(strFileName + ".docx") == true)
            {
                DialogResult response = System.Windows.Forms.MessageBox.Show(string.Format("File {0}.docx exists! Make Backup??", strFileName), "FILE EXISTS", MessageBoxButtons.YesNo);

                switch (response)
                {
                case DialogResult.Yes:

                    File.Copy(strFileName + ".docx", strFileName + "_bak" + ".docx", true);

                    break;

                case DialogResult.No:

                    File.Delete(strFileName + ".docx");

                    break;
                }
            }
            Microsoft.Office.Interop.Word.Application objWordApp = new Microsoft.Office.Interop.Word.Application();

            objWordApp.Visible = true;
            Microsoft.Office.Interop.Word.Document objWordDoc = objWordApp.Documents.Add("R:\\TSet\\Template\\SURVEY\\Staking\\CutSheet.dotx");
            objWordDoc.Activate();
            objWordDoc.SaveAs(strFileName);

            return(objWordDoc);
        }
Beispiel #2
0
        addResultsToCutSheet(List <FieldData> fd, string strPath)
        {
            string strTxtTarget = FileManager.getFilesWithEditor("SELECT CUTSHEET", "UPDATE CUTSHEET", "Word Document (*.docx)|*.docx", strPath, "Select CutSheet to update: ");

            Microsoft.Office.Interop.Word.Application objWordApp = new Word();
            Microsoft.Office.Interop.Word.Document    objWordDoc = objWordApp.Documents.Open(strTxtTarget);

            objWordApp.Visible = true;

            Microsoft.Office.Interop.Word.Table objWordTable = objWordDoc.Tables[2];

            for (int i = 0; i < fd.Count; i++)
            {
                for (int j = 2; j <= objWordTable.Rows.Count; j++)
                {
                    Microsoft.Office.Interop.Word.Cell objWordCell = objWordTable.Cell(j, 2);
                    string strCellText = objWordCell.Range.Text;

                    string strPntNum = "";
                    int    k         = 1;
                    do
                    {
                        byte[] asciiBytes = Encoding.ASCII.GetBytes(strCellText.Substring(k, 1));
                        if (asciiBytes[0] == 13)
                        {
                            break;
                        }
                        strPntNum = strPntNum + strCellText.Substring(k, 1);
                        k         = k + 1;
                    } while (true);

                    string strGrade = "";
                    if (fd[i].PntNum == strPntNum)
                    {
                        objWordCell = objWordTable.Cell(j, 3);
                        strCellText = objWordCell.Range.Text;

                        k = 1;
                        do
                        {
                            byte[] asciiBytes = Encoding.ASCII.GetBytes(strCellText.Substring(k, 1));
                            if (asciiBytes[0] == 13)
                            {
                                break;
                            }
                            strGrade = strGrade + strCellText.Substring(k, 1);
                            k        = k + 1;
                        } while (true);

                        double dblGrade = double.Parse(strGrade);
                        double dblStake = System.Math.Round(fd[i].ElevStake, 4);

                        objWordCell = objWordTable.Cell(j, 4);
                        objWordCell.Range.InsertBefore(Convert.ToString(dblStake));

                        double dblDiff = System.Math.Round(dblGrade - dblStake, 2);

                        if (dblDiff < 0)
                        {
                            objWordCell = objWordTable.Cell(j, 5);
                            objWordCell.Range.InsertBefore(Convert.ToString(dblDiff * -1));
                        }
                        else
                        {
                            objWordCell = objWordTable.Cell(j, 6);
                            objWordCell.Range.InsertBefore(Convert.ToString(dblDiff));
                        }
                        break;
                    }
                }
            }
        }
Beispiel #3
0
        processCutsheetData(string strSource)
        {
            List <CmdControls> cCntls     = fExport.cntls;
            List <DataSet>     varDataSet = fExport.dataSet;
            List <DataSet>     varDataSum = fExport.dataSum;

            System.Windows.Forms.Button cmdBtn = default(System.Windows.Forms.Button);

            List <ObjectId> objCutSheetPnts = new List <ObjectId>();
            List <uint>     lngPntNums      = new List <uint>();

            uint lngPntNum = 0;

            CogoPointCollection objPnts = Autodesk.Civil.ApplicationServices.CivilApplication.ActiveDocument.CogoPoints;
            ObjectId            objPnt  = ObjectId.Null;

            List <string> strLayers = new List <string>();

            switch (strSource)
            {
            case "EXPORTPOINTS":

                for (int i = 0; i < cCntls.Count; i++)
                {
                    if (cCntls[i].chkBox1.Checked)
                    {
                        strLayers.Add(cCntls[i].chkBox1.Text);

                        cmdBtn = cCntls[i].cmdBtn;

                        switch (cmdBtn.Text.Substring(11, 3))
                        {
                        case "SRT":
                            varDataSet = fExport.dataSet;
                            lngPntNums = varDataSet[i].Nums;
                            break;

                        case "SUM":
                            varDataSum = fExport.dataSum;
                            lngPntNums = varDataSum[i].Nums;
                            break;
                        }

                        //do partial
                        if (cCntls[i].chkBox2.Checked)
                        {
                            for (int j = int.Parse(cCntls[i].tBxLowerB.Text); j <= int.Parse(cCntls[i].tBxUpperB.Text); j++)
                            {
                                for (int k = 0; k < lngPntNums.Count; k++)
                                {
                                    lngPntNum = lngPntNums[k];
                                    if ((uint)j == lngPntNum)
                                    {
                                        try
                                        {
                                            objPnt = objPnts.GetPointByPointNumber(lngPntNum);
                                            objCutSheetPnts.Add(objPnt);
                                        }
                                        catch (System.Exception)
                                        {
                                        }

                                        break;
                                    }
                                }
                            }

                            //do full list
                        }
                        else
                        {
                            for (int k = 0; k < lngPntNums.Count; k++)
                            {
                                lngPntNum = lngPntNums[k];
                                try
                                {
                                    objPnt = objPnts.GetPointByPointNumber(lngPntNum);
                                    objCutSheetPnts.Add(objPnt);
                                }
                                catch (System.Exception)
                                {
                                }
                            }
                        }
                    }
                }

                break;

            case "POINTLIST":

                for (int j = 0; j < fPoints.lbxPoints.CheckedItems.Count; j++)
                {
                    lngPntNum = (uint)fPoints.lbxPoints.Items[j];
                    try
                    {
                        objPnt = objPnts.GetPointByPointNumber(lngPntNum);
                        objCutSheetPnts.Add(objPnt);
                    }
                    catch (System.Exception)
                    {
                    }
                }
                fPoints.Hide();
                break;
            }

            Microsoft.Office.Interop.Word.Document objCutSheet      = setupCutSheet(strLayers);
            Microsoft.Office.Interop.Word.Table    objCutSheetTable = objCutSheet.Tables[2];

            if (addCutSheetData(objCutSheetTable, objCutSheetPnts))
            {
                Autodesk.AutoCAD.ApplicationServices.Application.ShowAlertDialog("Cutsheet created at: " + objCutSheet.Path + "\\" + objCutSheet.Name);
            }
            else
            {
                Autodesk.AutoCAD.ApplicationServices.Application.ShowAlertDialog("Cutsheet operation failed - check if points were selected.....");
            }
        }
Beispiel #4
0
        setupCutSheet(List <string> strLayers)
        {
            string strProjNum = BaseObjs.jobNumber();

            string strDate = String.Format("{0}", DateTime.Today);

            string strFileName = string.Format("{0}_CutSheet{1}_{2}", strProjNum, strLayers, strDate);

            Microsoft.Office.Interop.Word.Document objCutSheet   = makeCutSheet(strFileName);
            Microsoft.Office.Interop.Word.Table    objWordTable1 = objCutSheet.Tables[1];

            Microsoft.Office.Interop.Word.Cell objCell = objWordTable1.Cell(6, 4);
            objCell.Range.InsertBefore(Convert.ToString(DateTime.Today));

            objCell = objWordTable1.Cell(7, 4);

            objCell.Range.InsertBefore(strProjNum);

            ProjectData varProjectData = Stake_GetProjectData.getProjectData(strProjNum);

            objCell = objWordTable1.Cell(8, 2);
            objCell.Range.InsertBefore(varProjectData.Name);

            objCell = objWordTable1.Cell(9, 2);
            objCell.Range.InsertBefore(varProjectData.Location);

            objCell = objWordTable1.Cell(10, 2);
            objCell.Range.InsertBefore(varProjectData.Coordinator);

            string strUserName = "";

            string strUser = Environment.UserName;

            switch (strUser)
            {
            case "john":
                strUserName = "******";
                break;

            case "luis":
                strUserName = "******";
                break;

            case "brianp":
                strUserName = "******";
                break;

            case "michael":
                strUserName = "******";
                break;

            case "briant":
                strUserName = "******";
                break;

            default:
                strUserName = strUser;
                break;
            }

            objCell = objWordTable1.Cell(9, 4);
            objCell.Range.InsertBefore(strUserName);

            return(objCutSheet);
        }