0

Auswahlfeld Szenarien wenn 1,2 etc.

Guten Morgen,

hier mein kleines Montags-Problem.

Wie funktioniert der Code richtig? 

let myA1 := "MUSTERMANN GmbH + Co. KG";
let myA2 := "TEST GmbH + Co. KG";
if 'Lieferung an' = 1 then
'Lieferadresse Mandant' := first(select Adressen where 'Firma/Unternehmen' = myA1);
if 'Lieferung an' = 2 then
'Lieferadresse Mandant' := first(select Adressen where 'Firma/Unternehmen' = myA2)
end
end

6 Antworten

null
    • Ninox-Professional
    • planoxpro
    • vor 4 Jahren
    • Gemeldet - anzeigen

    let myA1 := "MUSTERMANN GmbH + Co. KG";
    let myA2 := "TEST GmbH + Co. KG";
    if 'Lieferung an' = 1 then
        'Lieferadresse Mandant' := first(select Adressen where 'Firma/Unternehmen' = myA1)
    else
        if 'Lieferung an' = 2 then
            'Lieferadresse Mandant' := first(select Adressen where 'Firma/Unternehmen' = myA2)
        end
    end

     

    Oder als Alternative:

     

    if 'Lieferung an' then
        let myA := switch number('Lieferung an') do
            case 1: "MUSTERMANN GmbH + Co. KG"
            case 2: "TEST GmbH & Co. KG"
        end
        first(select Adressen where 'Firma/Unternehmen' = myA)
    end

    • Ninox-Professional
    • planoxpro
    • vor 4 Jahren
    • Gemeldet - anzeigen

    Ups, bei der Alternative fehlt die Feldzuweisung:

     

    if 'Lieferung an' then
        let myA := switch number('Lieferung an') do
            case 1: "MUSTERMANN GmbH + Co. KG"
            case 2: "TEST GmbH & Co. KG"
        end;
        'Lieferadresse Mandant" := first(select Adressen where 'Firma/Unternehmen' = myA)
    end

    • Ninox-Professional
    • planoxpro
    • vor 4 Jahren
    • Gemeldet - anzeigen

    I don't like Mondays ... Jetzt steht bei 'Lieferadresse Mandant" ein doppeltes Anführungszeichen. Bitte selbst korrigieren, bevor ich noch weitere Fehler einbaue.

    • Ninox-Professional
    • planoxpro
    • vor 4 Jahren
    • Gemeldet - anzeigen

    Na ja, wenn wir schon dabei sind - so würd's auch gehen:

     

    if 'Lieferung an' then
       'Lieferadresse Mandant' := (
          let myA := switch 'Lieferung an' do
             case 1: "MUSTERMANN GmbH & Co. KG"
             case 2: "TEST GmbH & Co. KG"
          end;
          first(select Adressen where 'Firma/Unternehmen' = myA)
       )
    end

     

    Allerdings frage ich mich nach genauerer Betrachtung, was 'Lieferung an' wohl für ein Feldtyps ist, da mit dem first() ja  nur die ID aus dem Adressdatensatz übernommen wird.

    • Andre_P
    • vor 4 Jahren
    • Gemeldet - anzeigen

    Hallo Copytexter,

    wie immer super Arbeit!

    "Lieferung an" ist ein Auswahlfeld.

    • Ninox-Professional
    • planoxpro
    • vor 4 Jahren
    • Gemeldet - anzeigen

    Klar, sorry, hab mich vertan. Mit der Frage nach dem Feldtyp meinte ich das Feld "Lieferadresse Mandant".