Dezimale Zeitwert (88,5) Std. als rechtsbĂĽndige 88:30 text

Bild Microsoft Dynamics NAV 2013 (aka "NAV 7")

Dezimale Zeitwert (88,5) Std. als rechtsbĂĽndige 88:30 text

Beitragvon Cesarion » 22. Juli 2016 14:13

Hallo,
ich möchte Dezimale Zeitwert (88,5) Std. als formatierte, rechtsbündigen Text anzeigen. Beispiel dafür: 88:30.
MG
Cesarion
Cesarion
 
Beiträge: 1
Registriert: 22. Juli 2016 13:37
Realer Name: Cezary
Microsoft Dynamics Version: 2013

Re: Dezimale Zeitwert (88,5) Std. als rechtsbĂĽndige 88:30 te

Beitragvon Danjo » 22. Juli 2016 16:18

Hi,

da wirst du dir eine eigene Funktion fĂĽr schreiben mĂĽssen.

NAV kennt den Datentyp DURATION, dieser stellt eine Zeitspanne in Milisekunden da.

DotNet bietet auch eniges wenn es um Zeiten geht.
Hier kannst du dir ja mal diese Variablen anschauen:
DateTime
System.DateTime.'mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'

TimeSpan
System.TimeSpan.'mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'
"Das Denken ist zwar allen Menschen erlaubt, aber vielen bleibt es erspart." - Johann Wolfgang von Goethe

MCNPS - MBSS - MBSP - MCTS - SA
Mein NAV-Blog
Benutzeravatar
Danjo
Microsoft Partner
Microsoft Partner
 
Beiträge: 694
Registriert: 30. Mai 2009 16:12
Wohnort: FĂĽrther Landkreis
Realer Name: Daniel Fugel
Arbeitsort: NĂĽrnberg
Bezug zu Microsoft Dynamics: Microsoft Partner
Microsoft Dynamics Produkt: Microsoft Dynamics NAV
Microsoft Dynamics Version: NAV 2.60 - BC, CRM 8 - 9.1

Re: Dezimale Zeitwert (88,5) Std. als rechtsbĂĽndige 88:30 te

Beitragvon Cezary » 28. Juli 2016 10:27

Hi Danjo,
danke fĂĽr Tipp, Du hast Recht. Dieser Schritt funktioniert.

Code: Alles auswählen
       
protected override Control CreateControl()        {
            TextBox = new System.Windows.Forms.TextBox()
            {
                TextAlign = HorizontalAlignment.Right
            };
            return TextBox;
        }
        public override string Value
        {
            get { if (((System.Windows.Forms.TextBox)this.Control).Text != "")
                       this.RaiseControlAddInEvent(1, ((System.Windows.Forms.TextBox)this.Control).Text);
                    return ((System.Windows.Forms.TextBox)this.Control).Text; }

            set { ((System.Windows.Forms.TextBox)this.Control).Text = Convert.ToString(value) != "" ? value : "error"; }
        }


Im nächsten Schritt ich will alle so farmatierte Text-Zellen in der Liste rechtsbündig anzuzeigen. Sie sind aber nicht sichtbar :cry:
Cezary
 
Beiträge: 1
Registriert: 24. November 2015 11:57
Bezug zu Microsoft Dynamics: SchĂĽler / Student
Microsoft Dynamics Produkt: Microsoft Dynamics NAV
Microsoft Dynamics Version: 8

Re: Dezimale Zeitwert (88,5) Std. als rechtsbĂĽndige 88:30 te

Beitragvon Danjo » 1. August 2016 13:24

Hast du die ein ClientAddin gebaut und als Saplte eingebunden?
Es sollte genĂĽgen eine globale Variable vom Typ Text zu nehmen und das Ergebnis DotNET-Komponenten mit Hilfe von FORMAT oder ToString dort abzulegen.
Die Variable kannst du dann als Spalte anzeigen.
"Das Denken ist zwar allen Menschen erlaubt, aber vielen bleibt es erspart." - Johann Wolfgang von Goethe

MCNPS - MBSS - MBSP - MCTS - SA
Mein NAV-Blog
Benutzeravatar
Danjo
Microsoft Partner
Microsoft Partner
 
Beiträge: 694
Registriert: 30. Mai 2009 16:12
Wohnort: FĂĽrther Landkreis
Realer Name: Daniel Fugel
Arbeitsort: NĂĽrnberg
Bezug zu Microsoft Dynamics: Microsoft Partner
Microsoft Dynamics Produkt: Microsoft Dynamics NAV
Microsoft Dynamics Version: NAV 2.60 - BC, CRM 8 - 9.1


ZurĂĽck zu NAV 2013

Wer ist online?

Mitglieder in diesem Forum: Unbekannter Robot und 1 Gast