Пример #1
0
        private string promptDiameter()
        {
            string userDiameter = "";

            _Ed.PromptIntegerOptions promptOptions = new _Ed.PromptIntegerOptions("Diameter:");

            promptOptions.AllowNone = true;
            _Ed.PromptIntegerResult promptResult = _c.ed.GetInteger(promptOptions);

            if (promptResult.Status == _Ed.PromptStatus.OK)
            {
                userDiameter = promptResult.Value.ToString();
            }

            return(userDiameter);
        }
Пример #2
0
        public void DelPariProj()
        {
            log.Info("DelPariProj");
            try
            {
                var doc = Application.DocumentManager.MdiActiveDocument;

                _AcEd.PromptIntegerOptions inOpts = new _AcEd.PromptIntegerOptions("\nId des Projekts, das gelöscht werden soll: ");
                inOpts.AllowNegative = false;
                inOpts.AllowNone     = false;
                var intRes = doc.Editor.GetInteger(inOpts);
                if (intRes.Status != _AcEd.PromptStatus.OK)
                {
                    return;
                }
                int projektId = intRes.Value;

                var factory         = new Factory();
                var database        = factory.CreatePariDatabase();
                int nrOfDeletedRows = database.DeleteProjekt(projektId);
                if (nrOfDeletedRows == 0)
                {
                    var msg = string.Format(CultureInfo.CurrentCulture, "\nEs wurde kein Projekt mit der Id {0} gefunden.", projektId);
                    log.Warn(msg);
                    doc.Editor.WriteMessage(msg);
                }
                else
                {
                    var msg = string.Format(CultureInfo.CurrentCulture, "Anzahl gelöschter Datensätze für ProjektId {1}: {0}", nrOfDeletedRows, projektId);
                    log.Info(msg);
                    doc.Editor.WriteMessage(msg);
                }
            }
            catch (Exception ex)
            {
                log.Error(ex.Message, ex);
                Application.ShowAlertDialog(ex.Message);
            }
        }
Пример #3
0
        public void ExcelPari()
        {
            log.Info("ExcelPari");
            try
            {
                var fact          = new Factory();
                var excelExporter = fact.CreateVisualOutputHandler();
                var database      = fact.CreatePariDatabase();

                var dwgPrefix = Application.GetSystemVariable("DwgPrefix").ToString();
                var dwgName   = Application.GetSystemVariable("DwgName").ToString();

                int projektId = -1;
                var doc       = Application.DocumentManager.MdiActiveDocument;
                _AcEd.PromptIntegerOptions inOpts = new _AcEd.PromptIntegerOptions("\nId des Projekts, für das eine Exceldatei erstellt werden soll <Return für aktuelles>: ");
                inOpts.AllowNegative = false;
                inOpts.AllowNone     = true;
                var intRes = doc.Editor.GetInteger(inOpts);
                if (intRes.Status == _AcEd.PromptStatus.OK)
                {
                    projektId = intRes.Value;
                    var pi = database.ListProjInfos().FirstOrDefault(x => x.ProjektId == projektId);
                    if (pi == null)
                    {
                        var msg = string.Format(CultureInfo.CurrentCulture, "Das Projekt mit Id {0} existiert nicht in der Datenbank!", projektId);
                        log.Error(msg);
                        Application.ShowAlertDialog(msg);
                        return;
                    }
                }
                else if (intRes.Status == _AcEd.PromptStatus.None)
                {
                    var blockReader = new BlockReader();
                    blockReader.ReadBlocksFromModelspace();
                    var projektInfo = blockReader.ProjektInfo;
                    if (projektInfo == null)
                    {
                        var msg = string.Format(CultureInfo.CurrentCulture, "Der ProjektInfo-Block existiert nicht in der Zeichnung!");
                        log.Error(msg);
                        Application.ShowAlertDialog(msg);
                        return;
                    }

                    projektInfo.DwgName   = dwgName;
                    projektInfo.DwgPrefix = dwgPrefix;

                    projektId = database.GetProjektId(projektInfo);
                    if (projektId < 0)
                    {
                        var msg = string.Format(CultureInfo.CurrentCulture, "Das Projekt wurde nicht gefunden in der Datenbank!");
                        log.Error(msg);
                        Application.ShowAlertDialog(msg);
                        return;
                    }
                }

                doc.Editor.WriteMessage("\nExport wird gestartet...");
                //var targetFile = Path.Combine(dwgPrefix, Path.GetFileNameWithoutExtension(dwgName) + "_NW" + ".xlsx");
                excelExporter.ExportNW(database, null, projektId);
                excelExporter.ExportNF(database, null, projektId);
                doc.Editor.WriteMessage("\nExport fertiggestellt.");
            }
            catch (Exception ex)
            {
                log.Error(ex.Message, ex);
                Application.ShowAlertDialog(ex.Message);
            }
        }