0

Daten aus Untertabelle mit Beziehung zur Haupttabelle in neuen Datensatz per Button übernehmen

Hallo liebe Ninox-Freunde,

ich drehe mich im Kreis und komme bei einer offensichtlich simplen Sache einfach nicht weiter. Und zwar habe ich folgendes:

 

Haupttabelle: "Projekte"

Untertabelle: "Aufträge"

 

In der Untertabelle habe ich Aufträge/Aufgaben, die zu einem zugewiesenen Projekt gehören. Ein Projekt kann mehrere Aufträge/Aufgaben haben.

In der Haupttabelle "Projekte" gibt es eine Spalte namens "Projektnummer".

Wenn ich nun in der Untertabelle "Aufträge" im Formular eines bestehenden Auftrags per Button einen Folgeauftrag anlegen möchte, soll die entsprechende "Projektnummer", die aus der Haupttabelle "Projekte" stammt, mit in den neuen Auftrag (Folgeauftrag) übernommen werden.

Ich dachte es mir eigentlich so:

let me := this;
let projektnummerUebernahme := me.Projekt.Projektnummer;
let newRec := (create 'Aufträge');
newRec.Projekt.Projektnummer := projektnummerUebernahme;
newRec.(Behandlung := "Nachbehandlung");
newRec.('Vorplanung (ungefähr)' := today() + 28);
popupRecord(newRec)

Irgendwie schaffe ich es nicht, die Projektnummer mit zu übernehmen. Ich hoffe jemand kann mir bei meinem Denkfehler helfen.

 

Vielen Dank!

3 Antworten

null
    • UweG
    • vor 1 Jahr
    • Gemeldet - anzeigen

    Wenn ich es richtig deute, existiert im bestehenden Auftrag, aus dem der Folgeauftrag erzeugt werden soll bereits die Projektnummer oder ID zu dem Projekt mit der Projektnummert. Man sollte dann diese  dem neu erzeugten Record zuweisen.

    Aber so richtig verstanden habe ich das Datenmodell nicht und welche Beziehungen vorliegen.

    • Ninox-Professional
    • planoxpro
    • vor 1 Jahr
    • Gemeldet - anzeigen

    Hallo KSmith, wenn sich der Button in der Untertabelle 'Aufträge' befindet, würde ich es so versuchen:

    let myP := Projekt;
    let newRec := (create 'Aufträge');
    newRec.(Projekt := myP);
    newRec.(Projektnummer := myP.Projektnummer);
    newRec.(Behandlung := "Nachbehandlung");
    newRec.('Vorplanung (ungefähr)' := today() + 28);
    popupRecord(newRec)
    

    Vorausgesetzt, die Verknüpfung zur Haupttabelle heißt tatsächlich 'Projekt', und nicht 'Projekte', wie die Haupttabelle selbst. Ansonsten den Namen halt ändern.

      • NinoxNewbie
      • schmitz86
      • vor 1 Jahr
      • Gemeldet - anzeigen

      planox. pro Stimmt, es lautete Projekte! Und du hast mir sehr geholfen, ich konnte es nun wie folgt lösen, hier fehlte nur noch ein "Projekte" vor der Projektnummer:

      let myP := Projekte;
      let newRec := (create 'Aufträge');
      newRec.(Projekte := myP);
      newRec.Projekte.(Projektnummer := myP.Projektnummer);
      newRec.(Behandlung := "Nachbehandlung");
      newRec.('Vorplanung (ungefähr)' := today() + 28);
      popupRecord(newRec)
      

      Vielen, vielen Dank Planox! 💪💪😁 

      UweG

      Hier soll jedes Projekt und jeder Auftrag eine eigene laufende Nummer haben. So kann jede Projektnummer mehrere Aufträge/Auftragsnummern enthalten. Vielen Dank auch für deine Hilfe und schnelle Antwort!

      Super, so kann ich weitermachen! Beste Grüße und bis dahin!

Content aside

  • vor 1 JahrZuletzt aktiv
  • 3Antworten
  • 86Ansichten
  • 3 Folge bereits