Bitfeld ("Ja" / "Nein" - Möglichkeit) per OnSave in ein anderes Dezimalfeld entsprechend 0 und 1 befüllen.

답변됨 Bitfeld ("Ja" / "Nein" - Möglichkeit) per OnSave in ein anderes Dezimalfeld entsprechend 0 und 1 befüllen.

  • Dienstag, 21. Februar 2012 14:41
     
     

    Habe ein Bitfeld, dass entweder mit Ja oder mit Nein abgespeichert werden kann.

    Möchte nun beim Speichern ein anderes Feld mit 0 falls Bitfeld = Nein und mit 1, falls Bifeld = Ja ist per Skript befüllen.

    Folgendes Skript funktioniert leider nicht:

    switch (crmForm.all.termine.DataValue)
    {
     case true:
      crmForm.termine.DataValue = true;
      crmForm.besuche.DataValue = 1
    break;
     case false:
      crmForm.termine.DataValue = false;
      crmForm.besuche.DataValue = 0
    break;
    }

    Was mache ich falsch?

    Herkulez

Alle Antworten

  • Dienstag, 21. Februar 2012 18:28
    Moderator
     
     

    Hallo, 

    je nachdem, wie das Bitfeld auf dem Formular angezeigt wird, musst du es unterschiedlich auswerten, siehe http://michaelsulz.wordpress.com/2010/01/22/arbeiten-mit-bitfeldern


    Viele Grüße

    Michael Sulz
    MVP für Microsoft Dynamics CRM
    Blog
    Website

  • Dienstag, 21. Februar 2012 19:25
     
     Beantwortet

    Es handelt sich hoffentlich um ein CRM 4.0 System. Ansonsten gilt es das Script gen 2011 hin anzupassen.

    In dem obigen Code fehlt übrigens immer .all. zwischen crmForm und dem Feldnamen.

    Ansonsten gilt, was Michael schon geschrieben hat.


    Carsten Groth http://carstengroth.wordpress.com Microsoft Certified Technology Specialist

    • Als Antwort markiert Herkulez669 Mittwoch, 22. Februar 2012 07:34
    • Tag als Antwort aufgehoben Herkulez669 Mittwoch, 22. Februar 2012 07:35
    • Als Antwort markiert Herkulez669 Mittwoch, 22. Februar 2012 07:35
    •  
  • Mittwoch, 22. Februar 2012 08:02
     
     

    Das ".all" war der Übeltäter.

    Vielen Dank!

    Herkulez

  • Donnerstag, 23. Februar 2012 11:14
     
     

    switch (crmForm.all.termine.DataValue)
    {
     case true:
      crmForm.all.termine.DataValue = true;
      crmForm.all.besuche.DataValue = 1;
    break;
     case false:
      crmForm.all.termine.DataValue = false;
      crmForm.all.besuche.DataValue = 0;
    break;
    }

    Ich bin möglich inkorrekt, aber ich glaube du brauchst ein strichpunkt nach 0 und 1 - zu sagen, am Ende jede Linie.

    Ich bin auch unsicher warum du möchtest "termine" auch einfüllen wenn es ist sicherlich schon so ausgefüllt? Und die Felde sind wirklich "termine" und "besuche"? Ohne Präfix? ZB crmForm.all.neue_termine.DataValue


    Hope this helps Adam Vero, MCT


    • Bearbeitet Adam Vero Donnerstag, 23. Februar 2012 11:17 "all"
    •