Artikelstamm-Einzellager um Chargen-Grid erweitern [erl.]

Alles über Formulare, deren Erstellung und deren eventueller Austausch

Moderator: SYNERPY

Antworten
koch
Beiträge: 97
Registriert: Mo Dez 11, 2006 1:28 pm

Artikelstamm-Einzellager um Chargen-Grid erweitern [erl.]

Beitrag von koch »

Hallo,

ich hänge mal wieder fest, mein Problem ist (wahrscheinlich ;) : Wie kann ich an einer Prozedur zwei Parameter übergeben?

Habe folgendes gemacht:

In der Maske FRMV_BARTLH einen dritten Tabsheet eingefügt und auf diesen ein Grid plaziert.
Desweiteren habe ich in das Ereignis 'GRID_V_BARTLHOnEnter' nachfolgenden Code geschrieben:

Code: Alles auswählen

Begin
DebugOn := True;
wo := GRID_V_BARTLHOnEnter;

  MyDisplay := TRANSLATE('UP_GLBINFO_CHARGE_IM_LAGER.*', frmData.nSprache); 
  Q_3.close();
  Q_3.SQL.Text := 'SELECT * FROM UP_GLBINFO_CHARGE_IM_LAGER(:BSA_ID, :BLAGER_ID)';
  Q_3.MasterParamLinks.Text := 'BSA_ID=V_BARTLH.BSA_ID_LINKKEY';
  Q_3.MasterParamLinks.Text := 'BLAGER_ID=V_BARTLH.BLAGER_ID_LAGERNR';
  Q_3.MasterLinks.Text := '';
  Q_3.DISPLAYLABEL(MyDisplay);
  Q_3.open();
  GRID_V_BARTLH.DataSource := D_3;
End;

Leider bleibt die Gridansicht leer :cry:
Mit der Prozedur UP_GLBINFO_LAGERANSEHEN, klappt das wunderbar, benötigt aber auch nur einen Eingabeparameter.
Diese Prozedur zeigt mir aber alle Lager an, deshalb möchte ich die UP_GLBINFO_CHARGE_IM_LAGER nutzen.

Irgendwelche Ideen?
Vielen Dank im voraus ...

Werner
Zuletzt geändert von koch am Mo Mär 01, 2010 8:26 pm, insgesamt 1-mal geändert.
SYN20
Beiträge: 95
Registriert: Do Aug 23, 2007 1:54 pm

Beitrag von SYN20 »

Hallo

Zum Übergeben mehrerer Parameter können Sie folgenden Code verwenden:

Code: Alles auswählen

  q_3.MasterParamLinks.Text := CRLF('BSA_ID=V_BARTLH.BSA_ID_LINKKEY')+
                                    'BLAGER_ID=V_BARTLH.BLAGER_ID_LAGERNR';  
Gruß,
Syn20
koch
Beiträge: 97
Registriert: Mo Dez 11, 2006 1:28 pm

Beitrag von koch »

Treffer 8)

Das hat ja mal wieder wunderbar geklappt, kurze Antwort, grosser Erfolg ...

Wenn man den Code jetzt noch zusätzlich auf das 'AfterSearch' Ereignis setzt,
wird schon nach der ersten Suche die richtige Grid-Ansicht eingestellt und nicht erst nachdem man auf das Grid klickt.

Nochmal vielen Dank für die prompte Antwort...ich mach jetzt Feierabend :)

Gruß

Werner
admin
Site Admin
Beiträge: 2673
Registriert: Di Feb 10, 2004 5:48 am
Wohnort: Bayreuth

Beitrag von admin »

koch hat geschrieben:
Wenn man den Code jetzt noch zusätzlich auf das 'AfterSearch' Ereignis setzt,
wird schon nach der ersten Suche die richtige Grid-Ansicht eingestellt und nicht erst nachdem man auf das Grid klickt.

Werner
Der Code gehört - wenn man so verfährt - hauptsächlich ins OnDataChange (Vorher noch DataChangeAlert der Maske auf True).

Generell würde man das aber anders machen: Die Q_3 fest bestücken, also nicht über Code belegen, sondern direkt im OnjectInspector. Alles abhängig von der q_1 (MasterDataSource) machen. Dann brauch man keine einzige Zeile Quellcode...
koch
Beiträge: 97
Registriert: Mo Dez 11, 2006 1:28 pm

Beitrag von koch »

Generell würde man das aber anders machen: Die Q_3 fest bestücken, also nicht über Code belegen, sondern direkt im OnjectInspector. Alles abhängig von der q_1 (MasterDataSource) machen. Dann brauch man keine einzige Zeile Quellcode...
Hatte ich auch erst vor ... dann ein Blick in den Artikelstamm und in die Kundenauftragspositionen
um zu schauen wie dort die Lageransichten verwirklicht werden und hier bin ich :lol:

Habe gerade probiert die 'Select Anweisung' in eine neue Querie - Q_4 zu schreiben
und die MasterParamLinks angepasst, aber die Gridansicht bleibt leer.

Folgenden Code habe ich in MasterParamLinks kopiert:

Code: Alles auswählen

CRLF('BSA_ID=V_BARTLH.BSA_ID_LINKKEY')+
'BLAGER_ID=V_BARTLH.BLAGER_ID_LAGERNR'; 
:?:


Gruß
SYN20
Beiträge: 95
Registriert: Do Aug 23, 2007 1:54 pm

Beitrag von SYN20 »

Hallo,

wenn Sie direkt in die MasterParamLinks schreiben, dann folgendermaßen:

Code: Alles auswählen

BSA_ID=V_BARTLH.BSA_ID_LINKKEY
BLAGER_ID=V_BARTLH.BLAGER_ID_LAGERNR
Gruß,
Syn20
koch
Beiträge: 97
Registriert: Mo Dez 11, 2006 1:28 pm

Beitrag von koch »

Hallo,

so nun habe ich mich einmal im Kreis gedreht ...

wenn Sie direkt in die MasterParamLinks schreiben, dann folgendermaßen:

Code:
BSA_ID=V_BARTLH.BSA_ID_LINKKEY
BLAGER_ID=V_BARTLH.BLAGER_ID_LAGERNR
Das war genau mein erster Versuch, in dem das Grid leer blieb und immer noch ist.
Jetzt habt Ihr mich wirklich neugierig gemacht, wo fehlt der berühmte Haken?

Gruß
koch
Beiträge: 97
Registriert: Mo Dez 11, 2006 1:28 pm

Beitrag von koch »

Ich habe noch eine zusätzliche Info:
Wenn ich im Qbject Inspector die q_1 von False auf Active setzte und danach meine Querie q_3
auf Active- werden mir im Designer, die Chargen im Grid angezeigt :roll:
Antworten