[gelöst] Mit PageAction aus Customer einen neuen Customer

23. August 2013 09:14

Hallo,
ich will aus einem Customer A001 heraus einen neuen Customer B002 mittels einer PageAction anlegen. Customer B002 soll dann quasi ein Kind von Customer A001 sein.
Customer B002 hat dann ein Feld parent mit dem Wert "A001". Dieses Feld will ich in meiner PageAction natürlich automatisch befüllen.
Dazu habe ich eine PagaAction mit folgenden Eigenschaften erstellt:
RunPageMode: Create
RunObject: Page Customer Card
RunpageLink: parent=FIELD(No.)

Soweit ich es verstanden habe, müsste man über die Eigenschaft RunPageLink dem neu erstellten Datensatz bestimmte Daten mitgeben können.
Wenn ich nun aber diese PageAction aufrufe, werden die Felder nicht befüllt. Stattdessen kommt die Meldung:
"Die Ansicht ist gefiltert, und der Posten befinet sich außerhalb des Filters. Unter Umständen sind nicht alle Aktionen verfügbar."

Kann mir jemand helfen meinen Customer B002 zu erstellen und dabei das parent-Feld zu befüllen?

Vielen Dank schon mal

Julian
Zuletzt geändert von julianbertels am 5. September 2013 22:23, insgesamt 1-mal geändert.

Re: Mit PageAction aus Customer einen neuen Customer erstell

28. August 2013 13:16

Wenn Du Create hast, wird nur eine leere Page angezeigt wo man dann per enter oder klick in ein anderen Feld den Datensatz erzeugt.
Was Du eher möchtest ist wohl das Erstellen eines neuen Datensatz, das Feld füllen und danach den neuen Datensatz in der Karte anzeigen.

Ich frage mich aber wo der Sinn dahinter ist.
Sobald ein Kunde theoretisch unter 2 Kunden angesiedelt ist, ist das Datenmodell hinfällig.
Verbandsstrukturen wie Einkäuferverbände o.ä. können so nicht realisiert werden, da ja ein Kunde in verschiedenen Strukturen sein kann und nicht nur in einer.
Evtl. reichen für Dich auch Kontakte oder das Feld Bill-To Customer No. im Kundenstamm für die Umsetzung.

Re: Mit PageAction aus Customer einen neuen Customer erstell

3. September 2013 12:59

Danke für die Antwort.
Dann habe ich wohl die Create-Funktion falsch verstanden.
Nehmen wir an, ich möchte irgend einen neuen Datensatz aus einem Kunden heraus anlegen und ihn mit Werten befüllen und dann in einer Card Page anzeigen. Wie mache ich das dann?
Gibt es dafür eine Standardfunktion in NAV oder muss ich da etwas programmieren? Welche Anleitung sollte ich mir dazu durchlesen?

Vielen Dank schon jetzt für die Hilfe.

Julian

Re: Mit PageAction aus Customer einen neuen Customer erstell

5. September 2013 19:21

Per Programmierung einen neuen Datensatz anlegen und dann mit der Page runnen.

zB hinter die PageAction:

clear(neuerDatensatz);
neuerDatensatz.Feld1 := Wert1;
neuerDatensatz.Feld2 := Wert2;
neuerDatensatz.INSERT;
Page.RUN(deinePage,neuerDatensatz);

Re: Mit PageAction aus Customer einen neuen Customer erstell

5. September 2013 22:09

Vielen vielen Dank,
das hat super funktioniert.

Schönen Gruß

Julian