2017-08-16 13 views
0

Acumativa v6のWeb Api経由で画面からInfoデータを取得しています。Acumatica AR303000 "First Due Date" DateTimeフォーマット

一般設定、ロケール、およびユーザープロファイルのロケール形式は両方ともen-Us:短い日付 "YYYY-MM-DD" LongTime "HH:MM:SS"です。

画面とGIはうまく動作し、ロケール形式で日付が取得されます。

しかし、この特定のScreen AR303000では、「First Due Date」データフィールドを読むと、返されるフォーマットは「MM/DD/YYY h:m:ss AM」です。私はこれがAcumaticaによって迂回されたMSSQLの方法だと確信しています

Q:MSSQL形式を "YYYY-MM-DD HH:MM:SS"に変更するにはどうすればよいですか?

か、Acumaticaの設定またはパラメータで行うことができますか?

答えて

1

C#を使用している場合は、返された文字列値を直接使用することをお勧めします。 両方の形式を同じコードを持つDateTimeオブジェクトに変換できます。テキスト文字列をDateTimeオブジェクトに変換すると、データは検証され、サニタイズされ、必要な形式に自由に変換できます。

これは、日付文字列がAPIから受信した場合でも、動作しますが、フォーマットを変更:ここ

enter image description here

私は同じ方法が最も標準的なフォーマットのために働く表示するようにフォーマットを反転:

これにより

enter image description here

、あなたコードは入力文字列の形式に依存せず、プログラムはそれを破る可能性のある構成の変更に対してより耐性があります。 ネイティブ EDIT追加WINDEVコード:

sDate est une chaîne 
sDate = DateSys() 
Res = ChaîneVersDate(sDate, "YYYY-MM-DD HH:MM:SS") 

標準:私の側にWINDEVを使用して

sDate is string   
sDate = DateSys() 
Res = StringToDate(sDate, "YYYY-MM-DD HH:MM:SS") 
+0

。しかし、私はあなたが使っていたaproachが好きです。 TryParseメソッドを模倣します。また、「最初の期日」はREADONLYなので、レコードの挿入/更新時にそのフィールドを空白にします。しかし、TryParseは私に義務を果たします。ありがとうございました! – carabez

+0

Windev WLanguageでは、同等のメソッドはStringToDateまたはDateVersChaineまたは日期转换为字符串です。 Ref:https://help.windev.com/?3027013 –

+0

間違ったもの:ChaineVersDateでないことDateVersChaine –

関連する問題