main char pfad[50]; char pro[32]; char liste[20]="LAYOUT"; char liste2[20]="LAYOUT2"; char tab[20]="PART"; long anzahl; long recs[4678]; short stueck; short aktuell; short sheet_ist_da; short layout_tabelle_ist_da; short fehler=[0]; /*** Aktuelles Projekt ermitteln ***/ get ge_path(pfad); get ge_pro(pro); check_box title("FUNKTIONSABFRAGE") title_text("Ausgabeabfrage") ("Stckliste fr Aufbaupl„ne neu",stueck) ("Stckliste fr Aufbaupl„ne aktualisieren",aktuell); if ((stueck=[0]) and (aktuell=[1])) exist (layout_tabelle_ist_da, pfad, pro, liste); if (layout_tabelle_ist_da=[0]) confirm_box text ("Es ist keine Tabelle angelegt") bitmap_no ([3]) button ("&OK"); else_if (layout_tabelle_ist_da=[1]) use (pfad,pro,liste); table (tab); endif endif exist sheet (sheet_ist_da,pfad,pro,"\Z74","1"); if (sheet_ist_da=[0]) call formblatt (pfad, pro); endif /*** Anlegen der Layoutliste ***/ if ((stueck=[1]) and (aktuell=[0])) create (pfad,pro,liste)! table (tab) struktur(name "Anlage" code [1] length[16]), (name "Messstelle" code [2] length[16]), (name "Einbauort" code [3] length[16]), (name "Betriebsmittel" code [4] length[16]), (name "Kommentar" code [40] length[40]), (name "Darstellung" code [10] length[16]), (name "Aufbauplan platziert" code [3020] length[1]), (name "Artikelnummer" code [80] length[25]), (name "Menge" code [149] length[6] typ[1]), (name "Art" code [508] length[1] typ[82]), (name "Wertebereich" code [125] length[3] typ[82]), (name "Typ" code [505] length[50]), (name "Bezeichnung 1" code [500] length[120]), (name "Bezeichnung 2" code [501] length[120]), (name "Hersteller" code [512] length[25] typ[80]), (name "Bestellnummer" code [506] length[50]), (name "Lieferant" code [145] length[24] typ[80]), (name "Zusatzinfo 1" code [3050] length[120]), (name "Zusatzinfo 2" code [3051] length[120]), (name "Spannung" code [30] length[10]), (name "Strom" code [31] length[10]), (name "Leistung" code [32] length[8]), (name "Drehzahl" code [33] length[10]), (name "Frequenz" code [50] length[10]), (name "Widerstand" code [34] length[10]), (name "Kapazitaet" code [35] length[10]), (name "Induktivitaet" code [36] length[10]), (name "Farbe" code [39] length[10] typ[92]), (name "Gewicht" code [52] length[10]), (name "Technische Daten 1" code [42] length[32]), (name "Technische Daten 2" code [43] length[32]), (name "Klemmen Querschnitt" code [23] length[6],[2] typ[2]), (name "Preis Landeswaehrung" code [100] length[12],[2] typ[2]), (name "Preis EURO" code [513] length[14],[2] typ[2]), (name "Datum Preisangabe" code [101] length[10] typ[3]), (name "Lohnkosten" code [102] length[10],[2] typ[2]), (name "Aufbauplansymbol" code [4001] length[16] typ[0] upc[1]), (name "Hoehe mm" code [4003] length[10],[2] typ[2]), (name "Breite mm" code [4004] length[10],[2] typ[2]), (name "Tiefe mm" code [4005] length[10],[2] typ[2]), (name "Platzbedarf" code [53] length[10],[2] typ[2]), (name "Beschreibungsdatei" code [5030] length[138] typ[20]), (name "Klemmennummer" code [21] length[6]), (name "CD Blattnummer" code [5000] length[8]), (name "CD lfd Nummer" code [5050] length[5] typ[1]), (name "LA Blattnummer" code [5060] length[8]), (name "LA lfd Nummer" code [5061] length[5] typ[1]), (name "Bezeichnung 3" code [502] length[120]), (name "Beistellflag" code [433] length[1]), (name "Disponierflag" code [434] length[1]), (name "Kennung1" code [507] length[1]), (name "Lagerartikel" code [509] length[1]), (name "Kennung2" code [510] length[1]), (name "Kennung3" code [511] length[1]), (name "Meeinkauf" code [514] length[10]), (name "Seite" code [62] length[16]), (name "Planart" code [60] length[32]), (name "Anlagenteil" code [61] length[8]), (name "Funktionsgruppe" code [63] length[32]) level ("S-Key") (7,1,3,10,4), ("BMK") unique (1,2,3,4); use (pfad,pro,liste); table (tab); /*** Daten einfuegen ***/ append sheet; /*** Abgleich mit Stckliste ***/ relation ("i:/cae/elcad/geraete","procos","STAMMDATEN-PROCOS") table ("DABA"); modify; change (38), (39) to ([100]), ([100]); table close all; endif if ((stueck=[0]) and (aktuell=[1])) create (pfad,pro,liste2)! table (tab) struktur(name "Anlage" code [1] length[16]), (name "Messstelle" code [2] length[16]), (name "Einbauort" code [3] length[16]), (name "Betriebsmittel" code [4] length[16]), (name "Kommentar" code [40] length[40]), (name "Darstellung" code [10] length[16]), (name "Aufbauplan platziert" code [3020] length[1]), (name "Artikelnummer" code [80] length[25]), (name "Menge" code [149] length[6] typ[1]), (name "Art" code [508] length[1] typ[82]), (name "Wertebereich" code [125] length[3] typ[82]), (name "Typ" code [505] length[50]), (name "Bezeichnung 1" code [500] length[120]), (name "Bezeichnung 2" code [501] length[120]), (name "Hersteller" code [512] length[25] typ[80]), (name "Bestellnummer" code [506] length[50]), (name "Lieferant" code [145] length[24] typ[80]), (name "Zusatzinfo 1" code [3050] length[120]), (name "Zusatzinfo 2" code [3051] length[120]), (name "Spannung" code [30] length[10]), (name "Strom" code [31] length[10]), (name "Leistung" code [32] length[8]), (name "Drehzahl" code [33] length[10]), (name "Frequenz" code [50] length[10]), (name "Widerstand" code [34] length[10]), (name "Kapazitaet" code [35] length[10]), (name "Induktivitaet" code [36] length[10]), (name "Farbe" code [39] length[10] typ[92]), (name "Gewicht" code [52] length[10]), (name "Technische Daten 1" code [42] length[32]), (name "Technische Daten 2" code [43] length[32]), (name "Klemmen Querschnitt" code [23] length[6],[2] typ[2]), (name "Preis Landeswaehrung" code [100] length[12],[2] typ[2]), (name "Preis EURO" code [513] length[14],[2] typ[2]), (name "Datum Preisangabe" code [101] length[10] typ[3]), (name "Lohnkosten" code [102] length[10],[2] typ[2]), (name "Aufbauplansymbol" code [4001] length[16] typ[0] upc[1]), (name "Hoehe mm" code [4003] length[10],[2] typ[2]), (name "Breite mm" code [4004] length[10],[2] typ[2]), (name "Tiefe mm" code [4005] length[10],[2] typ[2]), (name "Platzbedarf" code [53] length[10],[2] typ[2]), (name "Beschreibungsdatei" code [5030] length[138] typ[20]), (name "Klemmennummer" code [21] length[6]), (name "CD Blattnummer" code [5000] length[8]), (name "CD lfd Nummer" code [5050] length[5] typ[1]), (name "LA Blattnummer" code [5060] length[8]), (name "LA lfd Nummer" code [5061] length[5] typ[1]), (name "Bezeichnung 3" code [502] length[120]), (name "Beistellflag" code [433] length[1]), (name "Disponierflag" code [434] length[1]), (name "Kennung1" code [507] length[1]), (name "Lagerartikel" code [509] length[1]), (name "Kennung2" code [510] length[1]), (name "Kennung3" code [511] length[1]), (name "Meeinkauf" code [514] length[10]), (name "Seite" code [62] length[16]), (name "Planart" code [60] length[32]), (name "Anlagenteil" code [61] length[8]), (name "Funktionsgruppe" code [63] length[32]) level ("S-Key") (7,1,3,10,4), ("BMK") unique (1,2,3,4); use (pfad,pro,liste2); table (tab); /*** Daten einfuegen ***/ append sheet; /*** Abgleich mit Stckliste ***/ relation (pfad,pro,liste) table (tab); modify s_key ("S-Key") (7,1,3,10,4); change (38), (39) to ([100]), ([100]); table close all; endif end sub formblatt (char pfad, char pro) char name1[50]="\Z74"; char name2[50]="1"; char name3[50]; char name4[50]; char name5[50]; char fbName[16]="LA_PU_A_REV"; short overwrite=[1]; short editFb=[0]; use symbol 1 ("i:/cae/elcad.7/Sym_Elcad7/elektro"); /*** 1. Formblatt anlegen ***/ CrPlotTemplateEx (pfad,pro,name1,name2,name3,name4,name5,fbName,overwrite,editFb); call symb_free(); subend