JAM_EDIT: Feld Kapazitaet (Attribut CAPACITY) fuer DB_JamArea aus sps_skel
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
+46
-5
@@ -9,6 +9,12 @@
|
|||||||
;; (stabiler Schluessel, nicht aendern)
|
;; (stabiler Schluessel, nicht aendern)
|
||||||
;; AREA unsichtbar - Kennung der TRO-JSON (J0039)
|
;; AREA unsichtbar - Kennung der TRO-JSON (J0039)
|
||||||
;; AUTO unsichtbar - von sps_skel abgeleitete Nummer NNNN_k
|
;; AUTO unsichtbar - von sps_skel abgeleitete Nummer NNNN_k
|
||||||
|
;; KEY unsichtbar - stabiler Schluessel fuer --read-jams
|
||||||
|
;; CAPACITY unsichtbar - Kapazitaet (Traegerplaetze), leer = offen;
|
||||||
|
;; wird nCapacityMax/nCapacitySet und der Wert
|
||||||
|
;; der Konstante cJam<NNNN>_<k> im DB_JamArea<NNNN>
|
||||||
|
;;
|
||||||
|
;; Alte Zeichnungen ohne CAPACITY: Feld gesperrt, Hinweis - neu beschriften.
|
||||||
;;
|
;;
|
||||||
;; Aufruf JAM_EDIT:
|
;; Aufruf JAM_EDIT:
|
||||||
;; - Doppelklick auf den Staubereich -> ***DOUBLECLICK [INSERT] -> SSG_BLOCKEDIT
|
;; - Doppelklick auf den Staubereich -> ***DOUBLECLICK [INSERT] -> SSG_BLOCKEDIT
|
||||||
@@ -18,8 +24,11 @@
|
|||||||
;; "JAM_*" hierher.
|
;; "JAM_*" hierher.
|
||||||
;;
|
;;
|
||||||
;; Der Dialog aendert nur die Zeichnung. In die SCL kommt die Aenderung mit
|
;; Der Dialog aendert nur die Zeichnung. In die SCL kommt die Aenderung mit
|
||||||
;; tro_annotate.bat --file <csv> --read-jams (-> cfg/<csv>_jam_names.ini)
|
;; tro_annotate.bat --file <csv> --read-jams (-> cfg/<csv>_jam_names.ini,
|
||||||
|
;; [jam] und [capacity])
|
||||||
;; scl_skeleton.bat --json <csv>_anlage.json --templates
|
;; scl_skeleton.bat --json <csv>_anlage.json --templates
|
||||||
|
;; (-> <csv>_FB_Main.scl, <csv>_DB_JamArea.scl,
|
||||||
|
;; <csv>_JamArea_Konstanten.xlsx)
|
||||||
;;
|
;;
|
||||||
;; Setzt ssg_core.lsp (ssg-start/ssg-end, ssg-attrib-*) und ssg_lang.lsp voraus.
|
;; Setzt ssg_core.lsp (ssg-start/ssg-end, ssg-attrib-*) und ssg_lang.lsp voraus.
|
||||||
;; ============================================================
|
;; ============================================================
|
||||||
@@ -33,6 +42,26 @@
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
|
;; ------------------------------------------------------------
|
||||||
|
;; Ein Attribut setzen, auch auf "" (ssg-attrib-set-on laesst leere
|
||||||
|
;; Werte aus - eine geloeschte Kapazitaet muss aber leer werden)
|
||||||
|
;; ------------------------------------------------------------
|
||||||
|
(defun jam-attrib-setzen (ent tag wert / obj ed fertig)
|
||||||
|
(setq obj (entnext ent) fertig nil)
|
||||||
|
(while (and obj (not fertig))
|
||||||
|
(setq ed (entget obj))
|
||||||
|
(cond
|
||||||
|
((= (cdr (assoc 0 ed)) "SEQEND") (setq fertig t))
|
||||||
|
((and (= (cdr (assoc 0 ed)) "ATTRIB") (= (strcase (cdr (assoc 2 ed))) tag))
|
||||||
|
(entmod (subst (cons 1 wert) (assoc 1 ed) ed))
|
||||||
|
(entupd obj)
|
||||||
|
(setq fertig t))
|
||||||
|
)
|
||||||
|
(setq obj (entnext obj))
|
||||||
|
)
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
;; ------------------------------------------------------------
|
;; ------------------------------------------------------------
|
||||||
;; Name aus Foerderer und Nummer: "0054" "3" -> "Jam0054_3"
|
;; Name aus Foerderer und Nummer: "0054" "3" -> "Jam0054_3"
|
||||||
;; ------------------------------------------------------------
|
;; ------------------------------------------------------------
|
||||||
@@ -73,6 +102,7 @@
|
|||||||
(defun c:JAM_EDIT ( / ss ent ed bname attribs
|
(defun c:JAM_EDIT ( / ss ent ed bname attribs
|
||||||
alt-conv alt-nr auto tro entry area
|
alt-conv alt-nr auto tro entry area
|
||||||
neu-conv neu-nr auto-conv auto-nr pos
|
neu-conv neu-nr auto-conv auto-nr pos
|
||||||
|
alt-kap neu-kap hat-kap
|
||||||
dcl-pfad dat ergebnis name andere)
|
dcl-pfad dat ergebnis name andere)
|
||||||
|
|
||||||
;; Implied Selection VOR ssg-start pruefen (ssg-start hebt Selektion auf)
|
;; Implied Selection VOR ssg-start pruefen (ssg-start hebt Selektion auf)
|
||||||
@@ -112,7 +142,9 @@
|
|||||||
auto (cond ((cdr (assoc "AUTO" attribs))) (""))
|
auto (cond ((cdr (assoc "AUTO" attribs))) (""))
|
||||||
tro (cond ((cdr (assoc "TRO" attribs))) ("?"))
|
tro (cond ((cdr (assoc "TRO" attribs))) ("?"))
|
||||||
entry (cond ((cdr (assoc "ENTRY" attribs))) ("?"))
|
entry (cond ((cdr (assoc "ENTRY" attribs))) ("?"))
|
||||||
area (cond ((cdr (assoc "AREA" attribs))) ("?")))
|
area (cond ((cdr (assoc "AREA" attribs))) ("?"))
|
||||||
|
hat-kap (assoc "CAPACITY" attribs)
|
||||||
|
alt-kap (cond ((cdr hat-kap)) ("")))
|
||||||
|
|
||||||
;; AUTO "0054_3" -> Foerderer "0054", Nummer "3"
|
;; AUTO "0054_3" -> Foerderer "0054", Nummer "3"
|
||||||
(setq auto-conv "" auto-nr "")
|
(setq auto-conv "" auto-nr "")
|
||||||
@@ -135,17 +167,21 @@
|
|||||||
(set_tile "bereich" (ssg-textf "jam-edit-bereich" (list area tro entry)))
|
(set_tile "bereich" (ssg-textf "jam-edit-bereich" (list area tro entry)))
|
||||||
(set_tile "auto" (ssg-textf "jam-edit-auto"
|
(set_tile "auto" (ssg-textf "jam-edit-auto"
|
||||||
(list (if (= auto "") "-" (jam-name auto-conv auto-nr)))))
|
(list (if (= auto "") "-" (jam-name auto-conv auto-nr)))))
|
||||||
(set_tile "hinweis" (ssg-text "jam-edit-hinweis"))
|
(set_tile "hinweis" (ssg-text (if hat-kap "jam-edit-hinweis" "jam-edit-ohne-kapazitaet")))
|
||||||
(set_tile "conveyor" alt-conv)
|
(set_tile "conveyor" alt-conv)
|
||||||
(set_tile "number" alt-nr)
|
(set_tile "number" alt-nr)
|
||||||
|
(set_tile "capacity" alt-kap)
|
||||||
(if (= auto "") (mode_tile "reset" 1))
|
(if (= auto "") (mode_tile "reset" 1))
|
||||||
|
;; alte Zeichnung: Block ohne CAPACITY - nichts, wohin der Wert koennte
|
||||||
|
(if (not hat-kap) (mode_tile "capacity" 1))
|
||||||
|
|
||||||
(setq neu-conv alt-conv neu-nr alt-nr)
|
(setq neu-conv alt-conv neu-nr alt-nr neu-kap alt-kap)
|
||||||
(action_tile "reset"
|
(action_tile "reset"
|
||||||
"(set_tile \"conveyor\" auto-conv) (set_tile \"number\" auto-nr)")
|
"(set_tile \"conveyor\" auto-conv) (set_tile \"number\" auto-nr)")
|
||||||
(action_tile "accept"
|
(action_tile "accept"
|
||||||
(strcat "(setq neu-conv (vl-string-trim \" \" (get_tile \"conveyor\"))"
|
(strcat "(setq neu-conv (vl-string-trim \" \" (get_tile \"conveyor\"))"
|
||||||
" neu-nr (vl-string-trim \" \" (get_tile \"number\")))"
|
" neu-nr (vl-string-trim \" \" (get_tile \"number\"))"
|
||||||
|
" neu-kap (vl-string-trim \" \" (get_tile \"capacity\")))"
|
||||||
"(done_dialog 1)"))
|
"(done_dialog 1)"))
|
||||||
(action_tile "cancel" "(done_dialog 0)")
|
(action_tile "cancel" "(done_dialog 0)")
|
||||||
|
|
||||||
@@ -159,12 +195,17 @@
|
|||||||
(alert (ssg-text "jam-edit-foerderer-ungueltig")))
|
(alert (ssg-text "jam-edit-foerderer-ungueltig")))
|
||||||
((not (and (jam-ziffern-p neu-nr) (> (atoi neu-nr) 0)))
|
((not (and (jam-ziffern-p neu-nr) (> (atoi neu-nr) 0)))
|
||||||
(alert (ssg-text "jam-edit-nummer-ungueltig")))
|
(alert (ssg-text "jam-edit-nummer-ungueltig")))
|
||||||
|
((not (or (= neu-kap "") (and (jam-ziffern-p neu-kap) (> (atoi neu-kap) 0))))
|
||||||
|
(alert (ssg-text "jam-edit-kapazitaet-ungueltig")))
|
||||||
(t
|
(t
|
||||||
(setq neu-nr (itoa (atoi neu-nr))
|
(setq neu-nr (itoa (atoi neu-nr))
|
||||||
name (jam-name neu-conv neu-nr))
|
name (jam-name neu-conv neu-nr))
|
||||||
(ssg-attrib-set-on ent (list (cons "CONVEYOR" neu-conv)
|
(ssg-attrib-set-on ent (list (cons "CONVEYOR" neu-conv)
|
||||||
(cons "NUMBER" neu-nr)
|
(cons "NUMBER" neu-nr)
|
||||||
(cons "NAME" name)))
|
(cons "NAME" name)))
|
||||||
|
(if hat-kap
|
||||||
|
(jam-attrib-setzen ent "CAPACITY"
|
||||||
|
(if (= neu-kap "") "" (itoa (atoi neu-kap)))))
|
||||||
(entupd ent)
|
(entupd ent)
|
||||||
(princ (ssg-textf "jam-edit-gespeichert" (list name area)))
|
(princ (ssg-textf "jam-edit-gespeichert" (list name area)))
|
||||||
(if (setq andere (jam-name-belegt name ent))
|
(if (setq andere (jam-name-belegt name ent))
|
||||||
|
|||||||
+1
-1
@@ -903,7 +903,7 @@ Staubereiche zeichnet sps_skel (`tro_annotate.py --anlage`) als Block `JAM_AREA`
|
|||||||
|
|
||||||
| Befehl | Beschreibung |
|
| Befehl | Beschreibung |
|
||||||
| --- | --- |
|
| --- | --- |
|
||||||
| `c:JAM_EDIT` | Foerderer und laufende Nummer per Dialog (`dcl/jam_edit.dcl`) aendern; Knopf zurueck auf den abgeleiteten Wert, Warnung bei doppeltem Namen. Auch per Doppelklick (`SSG_BLOCKEDIT`, `JAM_*`) |
|
| `c:JAM_EDIT` | Foerderer, laufende Nummer und Kapazitaet (Attribut `CAPACITY`, leer = offen; wird `nCapacityMax`/`nCapacitySet` und Konstante `cJam<NNNN>_<k>` im `DB_JamArea<NNNN>` aus sps_skel) per Dialog (`dcl/jam_edit.dcl`) aendern; Knopf zurueck auf den abgeleiteten Wert, Warnung bei doppeltem Namen. Auch per Doppelklick (`SSG_BLOCKEDIT`, `JAM_*`) |
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
|||||||
+9
-1
@@ -1,6 +1,6 @@
|
|||||||
// ============================================================
|
// ============================================================
|
||||||
// jam_edit.dcl - Staubereich bearbeiten
|
// jam_edit.dcl - Staubereich bearbeiten
|
||||||
// Aendert Foerderer und laufende Nummer eines JAM_AREA-Blocks, den die
|
// Aendert Foerderer, laufende Nummer und Kapazitaet eines JAM_AREA-Blocks, den die
|
||||||
// Beschriftung aus sps_skel (lib/tro_annotate.py --anlage) eingefuegt hat.
|
// Beschriftung aus sps_skel (lib/tro_annotate.py --anlage) eingefuegt hat.
|
||||||
// Aufruf ueber c:JAM_EDIT (Lisp/Jam_Edit.lsp).
|
// Aufruf ueber c:JAM_EDIT (Lisp/Jam_Edit.lsp).
|
||||||
// ============================================================
|
// ============================================================
|
||||||
@@ -28,6 +28,14 @@ jam_edit : dialog {
|
|||||||
edit_width = 8;
|
edit_width = 8;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Traegerplaetze: nCapacityMax/nCapacitySet und Konstante cJam<NNNN>_<k>
|
||||||
|
// im DB_JamArea<NNNN> (scl_skeleton); leer = noch offen
|
||||||
|
: edit_box {
|
||||||
|
key = "capacity";
|
||||||
|
label = "Kapazitaet (Traeger):";
|
||||||
|
edit_width = 8;
|
||||||
|
}
|
||||||
|
|
||||||
: row {
|
: row {
|
||||||
: text {
|
: text {
|
||||||
key = "auto";
|
key = "auto";
|
||||||
|
|||||||
+1
-1
@@ -132,7 +132,7 @@ Gross-/Kleinschreibung spielt an der Kommandozeile keine Rolle.
|
|||||||
| `TRO_EDIT` | Kennung, Typ und Bauteile je Slot (Separatoren, Weichen, Scanner, Lagerlinien) eines TRO-Markers per Dialog aendern; Bauteile im Plan waehlbar |
|
| `TRO_EDIT` | Kennung, Typ und Bauteile je Slot (Separatoren, Weichen, Scanner, Lagerlinien) eines TRO-Markers per Dialog aendern; Bauteile im Plan waehlbar |
|
||||||
| `CONNECTION_INSERT` | Verbindungspfeil (Fluss) zwischen zwei Elementen zeichnen |
|
| `CONNECTION_INSERT` | Verbindungspfeil (Fluss) zwischen zwei Elementen zeichnen |
|
||||||
| `CONNECTION_EDIT` | Quelle/Ziel einer Verbindung aendern |
|
| `CONNECTION_EDIT` | Quelle/Ziel einer Verbindung aendern |
|
||||||
| `JAM_EDIT` (`Jam_Edit.lsp`) | Staubereich (`JAM_AREA` aus sps_skel) bearbeiten: Foerderer und laufende Nummer; auch per Doppelklick |
|
| `JAM_EDIT` (`Jam_Edit.lsp`) | Staubereich (`JAM_AREA` aus sps_skel) bearbeiten: Foerderer, laufende Nummer und Kapazitaet (fuer `DB_JamArea<NNNN>`); auch per Doppelklick |
|
||||||
|
|
||||||
### Export und IDs (`export.lsp`, `ssg_id.lsp`, `count_sep_scan.lsp`, `check_hoehen.lsp`)
|
### Export und IDs (`export.lsp`, `ssg_id.lsp`, `count_sep_scan.lsp`, `check_hoehen.lsp`)
|
||||||
|
|
||||||
|
|||||||
@@ -968,6 +968,8 @@
|
|||||||
"jam-edit-nummer-ungueltig": "Die laufende Nummer muss eine ganze Zahl ab 1 sein - nichts geaendert.",
|
"jam-edit-nummer-ungueltig": "Die laufende Nummer muss eine ganze Zahl ab 1 sein - nichts geaendert.",
|
||||||
"jam-edit-gespeichert": "\nStaubereich gespeichert: %1 (%2)",
|
"jam-edit-gespeichert": "\nStaubereich gespeichert: %1 (%2)",
|
||||||
"jam-edit-doppelt": "\nACHTUNG: %1 gibt es schon in dieser Zeichnung (%2).",
|
"jam-edit-doppelt": "\nACHTUNG: %1 gibt es schon in dieser Zeichnung (%2).",
|
||||||
|
"jam-edit-kapazitaet-ungueltig": "Die Kapazitaet muss leer oder eine ganze Zahl ab 1 sein - nichts geaendert.",
|
||||||
|
"jam-edit-ohne-kapazitaet": "Zeichnung ohne Feld CAPACITY - mit tro_annotate --anlage neu beschriften.",
|
||||||
"vfl-abbruch-gesichert": "\n>>> Linienzug abgebrochen: %1 Objekt(e) als Block gesichert (per Doppelklick editierbar/fortsetzbar).",
|
"vfl-abbruch-gesichert": "\n>>> Linienzug abgebrochen: %1 Objekt(e) als Block gesichert (per Doppelklick editierbar/fortsetzbar).",
|
||||||
"vfl-zurueck-glied-verworfen": "\n>>> Zurueck: letztes Kettenglied wird verworfen - bitte neu beantworten.",
|
"vfl-zurueck-glied-verworfen": "\n>>> Zurueck: letztes Kettenglied wird verworfen - bitte neu beantworten.",
|
||||||
"vfl-abbruch-nichts-gebaut": "\n>>> Abgebrochen - es wurde noch keine Geometrie erzeugt.",
|
"vfl-abbruch-nichts-gebaut": "\n>>> Abgebrochen - es wurde noch keine Geometrie erzeugt.",
|
||||||
|
|||||||
@@ -968,6 +968,8 @@
|
|||||||
"jam-edit-nummer-ungueltig": "The running number must be a whole number from 1 - nothing changed.",
|
"jam-edit-nummer-ungueltig": "The running number must be a whole number from 1 - nothing changed.",
|
||||||
"jam-edit-gespeichert": "\nJam area saved: %1 (%2)",
|
"jam-edit-gespeichert": "\nJam area saved: %1 (%2)",
|
||||||
"jam-edit-doppelt": "\nWARNING: %1 already exists in this drawing (%2).",
|
"jam-edit-doppelt": "\nWARNING: %1 already exists in this drawing (%2).",
|
||||||
|
"jam-edit-kapazitaet-ungueltig": "The capacity must be empty or a whole number from 1 - nothing changed.",
|
||||||
|
"jam-edit-ohne-kapazitaet": "Drawing has no CAPACITY field - annotate again with tro_annotate --anlage.",
|
||||||
"vfl-abbruch-gesichert": "\n>>> Chain cancelled: %1 object(s) saved as a block (editable/resumable via double-click).",
|
"vfl-abbruch-gesichert": "\n>>> Chain cancelled: %1 object(s) saved as a block (editable/resumable via double-click).",
|
||||||
"vfl-zurueck-glied-verworfen": "\n>>> Back: discarding the last chain element - please answer it again.",
|
"vfl-zurueck-glied-verworfen": "\n>>> Back: discarding the last chain element - please answer it again.",
|
||||||
"vfl-abbruch-nichts-gebaut": "\n>>> Cancelled - no geometry was created yet.",
|
"vfl-abbruch-nichts-gebaut": "\n>>> Cancelled - no geometry was created yet.",
|
||||||
|
|||||||
Reference in New Issue
Block a user