none
Picture-Klausel

    Frage

  • Hallo,

    gibt es ein Möglichkeit, eine Art Picture-Klausel auf ein Feld zu legen, so dass im Formular und in Ansichten eine Zahl formatiert dargestellt wird. Beispiel: der DB-Wert 12345678 wird als 123-456/78 angezeigt und editiert.

    Danke für Eure Hinweise und Tipps.

    Alex

    Donnerstag, 6. März 2014 10:20

Alle Antworten

  • Hallo Alex,

    per JavaScript könnte man so etwas realisieren. Du müsstest das aber dann nicht nur auf der Form machen, sondern auch in Grids, Reports, etc. was das ganze doch sehr aufwendig macht. Am einfachsten ist es wahrscheinlich, wenn du einfach ein Hilfsfeld erstellst und in diesem den Wert so speicherst, wie du ihn gerne angezeigt bekommen möchtest.


    Viele Grüße

    Michael Sulz
    MVP für Microsoft Dynamics CRM
    Blog
    Website XING LinkedIn Facebook Twitter

    Freitag, 7. März 2014 10:24
    Moderator
  • Hallo Michael,

    vielen Dank für Deine Antwort.
    Ich kann mir das mit dem Hilfsfeld gut vorstellen, das würde die Anzeige in Grids und Reports erheblich vereinfachen.
    Wie wäre aber eine Picture-Klausel in Forms realisierbar ? So, dass Sonderzeichen sichtbar sind, und die Eingabe tatsächlich dazwischen erfolgt ?

    Nochmals danke für Hinweise.

    Alex

    Dienstag, 11. März 2014 08:26
  • Hallo zusammen,

    leider noch keine Antwort.

    Dann gehe ich mal davon aus, dass das so noch keiner gemacht hat ... ?

    Danke trotzdem

    Alex

    Montag, 17. März 2014 09:05
  • Hallo Alex,

    sorry, habe ich völlig überlesen.

    Anbei ein Link, wie du eine Field Mask erzeugen kannst. Der Artikel ist noch für CRM 4.0, muss also eventuell für eure CRM Version angepasst werden.

    http://mscrm4ever.blogspot.com

    Und hier noch der Code:

    function OnCrmPageLoad()
    {
    Mask( "gi_name" , "+###-#-#######" );
    }
    
    function Mask( fieldId , mask )
    {
    field = document.getElementById(fieldId);
    field.mask = mask.split('');
    field.title += " " + mask;
    field.attachEvent( "onchange" , MaskOnFieldChange );
    }
    
    function MaskOnFieldChange()
    {
    var field = event.srcElement;
    if( field.DataValue == null )
    return;
    
    var arrDataValue = field.DataValue.split('');
    var arrResult = [];
    
    for(var i=0 , j=0 ; i < field.mask.length ;i++)
    {
    if( field.mask[i] == arrDataValue[j] ) j++;
    arrResult[i] = (field.mask[i] != '#') ? field.mask[i] : arrDataValue[j++];
    }
    
    field.DataValue = arrResult.join('');
    }
    
    OnCrmPageLoad(); 

    Viele Grüße

    Michael Sulz
    MVP für Microsoft Dynamics CRM
    Blog
    Website XING LinkedIn Facebook Twitter

    Montag, 17. März 2014 11:54
    Moderator