Гость
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / Local Time in Web Serve / 2 сообщений из 2, страница 1 из 1
28.06.2016, 13:09
    #39263714
vichka
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Local Time in Web Serve
Здравствуйте!

Подскажите пожалуйста, как получить местное время в SOAP.WebService вместо UTC, которое имеет Z на конце : hh:mm:ssZ WebMethod
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
Method RequestClinicRemSch() As %XML.DataSet [ WebMethod ]
{
 ... 
   set query = ##class(%XML.DataSet).%New("%DynamicQuery:SQL")
   Set sql = "Select CRS.ClinicCode, CT.TemplateID,CRS.ReminderScheduleDay, CAST(CRS.SendAtTime AS Time) As SendAtTime"    
   set sql = sql _ " From Client.ClinicReminderSchedule CRS"
   set sql = sql _ " inner join Client.ClinicTemplates CT"
 ...   
   do query.Prepare(sql)
   quit query   
   
}
XML
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
-<s:schema xmlns:s=" http://www.w3.org/2001/XMLSchema"  xmlns="" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" elementFormDefault="qualified" attributeFormDefault="qualified" id="DefaultDataSet">


-<s:element msdata:IsDataSet="true" name="DefaultDataSet">
-<s:complexType>
-<s:choice maxOccurs="unbounded">
-<s:element name="SQL">
-<s:complexType>
-<s:sequence>

<s:element name="ClinicCode" minOccurs="0" type="s:string"/>

<s:element name="TemplateID" minOccurs="0" type="s:string"/>

<s:element name="ReminderScheduleDay" minOccurs="0" type="s:long"/>

<s:element name="SendAtTime" minOccurs="0" type="s:time"/>

</s:sequence>
</s:complexType>
</s:element>
</s:choice>
</s:complexType>
</s:element>
</s:schema>

-<diffgr:diffgram xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" xmlns:diffgr="urn:schemas-microsoft-com:xml-diffgram-v1">
-<DefaultDataSet xmlns="">
-<SQL diffgr:id="SQL1" msdata:rowOrder="0">

<ClinicCode>100</ClinicCode>

<TemplateID>FAST BLOOD</TemplateID>

<ReminderScheduleDay>3</ReminderScheduleDay>

<SendAtTime>09:30:00Z</SendAtTime>

</SQL>


-<SQL diffgr:id="SQL2" msdata:rowOrder="1">

<ClinicCode>300</ClinicCode>

<TemplateID>XRAY</TemplateID>

<ReminderScheduleDay>2</ReminderScheduleDay>

<SendAtTime>08:30:00Z</SendAtTime>

</SQL>


-<SQL diffgr:id="SQL3" msdata:rowOrder="2">

<ClinicCode>59999</ClinicCode>

<TemplateID>EMOBILE-CLINIC</TemplateID>

<ReminderScheduleDay>2</ReminderScheduleDay>

<SendAtTime>10:00:00Z</SendAtTime>

</SQL>

</DefaultDataSet>

</diffgr:diffgram>
PS

Applying XMLTIMEZONE = "IGNORE" to the Time property of the class did not work
Код: plaintext
1.
2.
3.
4.
5.
Class Client.ClinicReminderSchedule Extends %Persistent
{
...
Property SendAtTime As %Time(XMLTIMEZONE = "IGNORE");
...
}
...
Рейтинг: 0 / 0
29.06.2016, 08:54
    #39264400
servit
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Local Time in Web Serve
vichka ,

Код: plaintext
  • Extends %Persistent -> Extends (%Persistent, %XML.Adaptor)
  • CAST(CRS.SendAtTime AS Time) As SendAtTime -> CRS.SendAtTime
или
Код: plaintext
CAST(CRS.SendAtTime AS Time) As SendAtTime -> %external(CRS.SendAtTime) as SendAtTime
...
Рейтинг: 0 / 0
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / Local Time in Web Serve / 2 сообщений из 2, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]