Hot News:

Unser Angebot:

  Foren auf CAD.de (alle Foren)
  TM - Plant Simulation
  Quelle soll Aufträge lt. Lite erzeugen

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
Autor Thema:  Quelle soll Aufträge lt. Lite erzeugen (720 mal gelesen)
littlelady
Mitglied



Sehen Sie sich das Profil von littlelady an!   Senden Sie eine Private Message an littlelady  Schreiben Sie einen Gästebucheintrag für littlelady

Beiträge: 14
Registriert: 18.06.2008

erstellt am: 07. Jul. 2008 19:13    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Ich habe eine Tabelle (Liste) mit egig langen Datensätzen. In Spalte 2 steht die Auftragsnummer, in Spalte 4 die Artikelnummer.

Die Quelle soll nun einen Karton erzeugen, dem als Attribut(Auftragsliste) Teile der Liste angehängt werden. D.h. die Tabelle eines Kartons soll die Artikelnummer enthalten für Auftragsnummer 2. Die Tabelle des nächsten Kartons die Daten für Auftragsnummer 3 usw.

i: ist die Zeile
j: ist die Auftragsnummer

is
j:integer;
i:integer;
do
i:=1;
j:=2;
while  liste[2,i]=j loop
Einzelstation.inhalt.auftragsliste[1,i]:=liste[4,i];
i:=i+1;
end;

j:=j+1;

end;

Fehlermeldung ist, dass die Operanden nicht kompatibel sind.
Was hab ich falsch gemacht?

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

der simulant
Mitglied



Sehen Sie sich das Profil von der simulant an!   Senden Sie eine Private Message an der simulant  Schreiben Sie einen Gästebucheintrag für der simulant

Beiträge: 71
Registriert: 28.02.2007

-----------
der simulant

erstellt am: 08. Jul. 2008 11:13    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für littlelady 10 Unities + Antwort hilfreich

Hallo littlelady,

schau Dir die Hilfe mal zum Thema Quelle an. Hier kannst Du mit Reihenfolgetabelle genau die Attribute an Deine Kartons hängen, die Du willst. Das Ganze kannst Du sowohl per Hand (kann sehr mühsam sein), aber auch per Methode machen

Gruß

der simulant

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

littlelady
Mitglied



Sehen Sie sich das Profil von littlelady an!   Senden Sie eine Private Message an littlelady  Schreiben Sie einen Gästebucheintrag für littlelady

Beiträge: 14
Registriert: 18.06.2008

erstellt am: 08. Jul. 2008 15:07    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Meine Quelle erzeugt im Moment auch BEs nach einer Tabelle, so wie in der Hilfe beschrieben.

Allerdings habe ich jetzt ca. 50000 Datensätze, die nicht alle per Hand eintppen kann :-)

Daher suche ich jetzt eine Methode als Ausgangssteuerung für die Quelle.
In Spalte 2 der Datensätze (Tabelle heißt im Modell Liste) stehen die Auftragsnummern, in Spalte 3 die Artikelnummern.

Die Methode soll nun einen Karton produzieren, dem, solange die Auftragsnummer z.B. 3 ist alle Attribute anhängen, die in der Liste in Spalte 3 stehen.

Ich finde leider in der Hilfe nicht wie ich die Mehtode aufbauen muss.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

der simulant
Mitglied



Sehen Sie sich das Profil von der simulant an!   Senden Sie eine Private Message an der simulant  Schreiben Sie einen Gästebucheintrag für der simulant

Beiträge: 71
Registriert: 28.02.2007

-----------
der simulant

erstellt am: 08. Jul. 2008 15:28    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für littlelady 10 Unities + Antwort hilfreich

Hallo littlelady,

anbei eine kleine Methode zum befuellen einer Reihenfolgetabelle:

is
i : integer;
do
for i := 1 to anzahl_tabelleneintraege loop
reihenfolgetabelle [1,reihenfolgetabelle.ydim+1] := erzeugungszeitpunkt;--z.B. 216000 entspricht 6:00h morgens
reihenfolgetabelle [2,reihenfolgetabelle.ydim] := lpart;--hier musst Du Dein Klassenbauteil angeben
reihenfolgetabelle [3,reihenfolgetabelle.ydim] := anzahl_bauteile;--hier gibst Du an, wieviel von deinen Bauteilen erzeugt werden
reihenfolgetabelle [4,reihenfolgetabelle.ydim] := bauteilname;--hier kannst Du einen Bauteilnamen vergeben
--ab hier erfolgt die attributezuweisung
reihenfolgetabelleb.createnestedlist (5,reihenfolgetabelle.ydim);
reihenfolgetabelle[5,reihenfolgetabelle.ydim].setname("x");
reihenfolgetabelle [5,reihenfolgetabelle.ydim][4,1] := "blau";--z.B. Farbzuweisung
reihenfolgetabelle [5,reihenfolgetabelle.ydim][3,2] := true;--z.B. Zustandszuweisung
next;
end;
-- end of method


ich hoffe Du kommst damit klar

Gruß

der simulant

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

littlelady
Mitglied



Sehen Sie sich das Profil von littlelady an!   Senden Sie eine Private Message an littlelady  Schreiben Sie einen Gästebucheintrag für littlelady

Beiträge: 14
Registriert: 18.06.2008

erstellt am: 09. Jul. 2008 13:32    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo Simulant, komme irgendwie nicht weiter, vielleicht magst du mir ja nochmal helfen?

Also meine Tabelle (tabelle1) sieht so aus:
1  345
1  567
1  345
2  983
2  547
2  456
3  128
3  579
3  491

Beim BE Austritt aus der Quelle soll nun dem ersten BE die Artikelnummern angehangen werden, vor denen eine 1 steht, dem zweiten BE alle Nummern vor denen eine 2 steht usw.

Ich hab mir folgendes vorgestellt, was natürlich nicht funktioniert:-)

for i:=1 to tabelle1.yDim loop
if tabelle1[1,i]=2 then

                tabelle1.kopiereBereichNach({1,i}...{2,i},@.tabelle);
end;
next;

Es sollen Daten von einer Tabelle1 in die Tabelle2 des BEs übertragen werden.
Bin wirklich für jede Hilfe dankbar, da ich keine 5000 Datensätze per Hand eingeben kann!!

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

littlelady
Mitglied



Sehen Sie sich das Profil von littlelady an!   Senden Sie eine Private Message an littlelady  Schreiben Sie einen Gästebucheintrag für littlelady

Beiträge: 14
Registriert: 18.06.2008

erstellt am: 09. Jul. 2008 16:06    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

so bin etwas weiter mit meinem Latein.

Nun wird wenigstens die erste Auftragsnummer (2) in die Liste des BEs übertragen.
j müsste eigentlich immer eine Zahl weiter wandern bis 8000.
Vielleicht hat ja jemand eine Idee wie ich das hinbekomme. Und ein weiteres Problem ist, dass die Daten in der BE tabelle natürlich auch in der Zeile gespeichert werden in der sich die Originaldaten befinden.
D.h. irgendwann finde ich meine Daten in Zeile 8000 und nicht mehr ganz oben. ...

is
i:integer;
j:integer;

do
j:=einzelstation.inhalt.j +1;
j:=einzelstation.inhalt.j;


for i:=1 to tabelle.yDim loop
if tabelle[1,i]=j then
einzelstation.inhalt.tabelle[1,i]:=tabelle[2,i]
  end;
 
next;


end;

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

der simulant
Mitglied



Sehen Sie sich das Profil von der simulant an!   Senden Sie eine Private Message an der simulant  Schreiben Sie einen Gästebucheintrag für der simulant

Beiträge: 71
Registriert: 28.02.2007

-----------
der simulant

erstellt am: 10. Jul. 2008 08:03    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für littlelady 10 Unities + Antwort hilfreich

Hallo littlelady,

habs leider gestern nicht mehr geschafft. Hier Deine Methode die Du in die Ausgangssteuerung der Quelle hängen musst(Hecksteuerung). Die Quelle erzeugt nur Deine Kartons. Diesen Kartons musst Du natürlich in der Klasse eine Tabelle als benutzerdefiniertes Attribut anhängen:

is
  lsearch : integer;
  gefunden : boolean;
  ycur : integer;
do
  lsearch := @.id;
  gefunden := true;
  tablefile.setcursor(1,1);
  while gefunden loop
    if tablefile.find ({1,1}..{1,*},lsearch) then
      ycur := tablefile.cursory;
      @.tab_attri [1,@.tab_attri.ydim+1] := tablefile [2,ycur];
    else
      gefunden := false;
    end;
  end;
end;

ps: tablefile ist Deine vorhandene Liste
    @.tab_attri ist die angehängte Tabelle vom Karton
    die jeweiligen Tabellenformate muessen integer,real sein
Gruß

der simulant

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2023 CAD.de | Impressum | Datenschutz