0

Problem mit cnt brauche Hilfe

Hallo liebe Ninoxfreunde,

ich habe ein kleines Problem mit dem cnt Befehl. In einer verknüpften Tabelle erzeuge ich mit einem Button in der Tabelle "Angebote" ein Angebot. Mit mehreren Schleifen werden Produkte aus unterschiedlichen Tabellen ausgesucht und in der Untertabelle "Angebotspositionen" die Produkte angelegt. 

Leider erscheint in der Spalte "AN-Pos." nur eine 0. Obwohl ich in der Untertabelle "Angebotspositionen" bei Trigger beim neuen Datensatz folgende Formel habe: 

let me := this;
'AN-Pos.' := cnt(Angebot.Angebotspositionen)

Wenn ich einen Datensatz mit dem + hinzufüge funktioniert es. 

Also muss ich was in der Formel von dem Button hinzufügen. Kann mir da einer helfen? Diese Formel verwende ich beim Button.

let Ku := Kunde;
let newA := (create Angebot);
Angebot := newA;
newA.(Kunde := Ku);
for a in 'K2System-Stückzahl' do
    let myPr := first(select Produkte where 'Art-Nr.' = a.'Art-Nr.');
    let newPos := (create Angebotspositionen);
    newPos.('AN-Pos.' := cnt(Angebot.Angebotspositionen));
    newPos.(Produkte := myPr);
    newPos.(Angebot := newA);
    newPos.(Menge := a.Anzahl)
end;
for b in Wechselrichter do
    let myP := first(select Produkte where Produktname = b.Produktname);
    let newPos := (create Angebotspositionen);
    newPos.(Produkte := myP);
    newPos.(Angebot := newA)
end;
for c in Speicher do
    let myPro := first(select Produkte where Produktname = c.Produktname);
    let newPos := (create Angebotspositionen);
    newPos.(Produkte := myPro);
    newPos.(Angebot := newA)
end;
for d in Wallbox do
    let myPro := first(select Produkte where Produktname = d.Produktname);
    let newPos := (create Angebotspositionen);
    newPos.(Produkte := myPro);
    newPos.(Angebot := newA)
end;
for e in 'PV-String' do
    let newPos := (create Angebotspositionen);
    newPos.(Produkte := e.Produkte);
    newPos.(Menge := e.'Stückzahl');
    newPos.(Angebot := newA)
end

Danke!

3 Antworten

null
    • chalvi // WERBEAGENTUR GbR
    • VS2021
    • vor 1 Jahr
    • Gemeldet - anzeigen

    Hab es jetzt so gelöst! Ein Problem es fängt mit 0 aufwärts zu nummerieren. Hat einer eine Idee, wie es mit der 1 starten kann? Das Bild verdeutlich das Problem. Danke!

    let Ku := Kunde;
    let newA := (create Angebot);
    Angebot := newA;
    newA.(Kunde := Ku);
    for a in 'K2System-Stückzahl' do
        let myPro := first(select Produkte where 'Art-Nr.' = a.'Art-Nr.');
        let newPos := (create Angebotspositionen);
        let ne := count(Angebot.Angebotspositionen);
        newPos.('AN-Pos.' := ne);
        newPos.(Produkte := myPro);
        newPos.(Angebot := newA);
        newPos.(Menge := a.Anzahl)
    end;
    for b in Wechselrichter do
        let myPro := first(select Produkte where Produktname = b.Produktname);
        let newPos := (create Angebotspositionen);
        let ne := count(Angebot.Angebotspositionen);
        newPos.('AN-Pos.' := ne);
        newPos.(Produkte := myPro);
        newPos.(Angebot := newA)
    end;
    for c in Speicher do
        let myPro := first(select Produkte where Produktname = c.Produktname);
        let newPos := (create Angebotspositionen);
        let ne := count(Angebot.Angebotspositionen);
        newPos.('AN-Pos.' := ne);
        newPos.(Produkte := myPro);
        newPos.(Angebot := newA)
    end;
    for d in Wallbox do
        let myPro := first(select Produkte where Produktname = d.Produktname);
        let newPos := (create Angebotspositionen);
        let ne := count(Angebot.Angebotspositionen);
        newPos.('AN-Pos.' := ne);
        newPos.(Produkte := myPro);
        newPos.(Angebot := newA)
    end;
    for e in 'PV-String' do
        let newPos := (create Angebotspositionen);
        let ne := count(Angebot.Angebotspositionen);
        newPos.('AN-Pos.' := ne);
        newPos.(Produkte := e.Produkte);
        newPos.(Menge := e.'Stückzahl');
        newPos.(Angebot := newA)
    end

      • Kruna
      • vor 1 Jahr
      • Gemeldet - anzeigen

      VS2021 ich bin mir nicht sicher, ob das funktioniert und/oder richtig ist, aber ganz spontan würde ich es so

       

          newPos.('AN-Pos.' := ne +1 );

      versuchen.

      Gruß Kruna

      • chalvi // WERBEAGENTUR GbR
      • VS2021
      • vor 1 Jahr
      • Gemeldet - anzeigen

      Kruna Vielen Dank funktioniert!