• Познакомьтесь с пентестом веб-приложений на практике в нашем новом бесплатном курсе

    «Анализ защищенности веб-приложений»

    🔥 Записаться бесплатно!

  • CTF с учебными материалами Codeby Games

    Обучение кибербезопасности в игровой форме. Более 200 заданий по Active Directory, OSINT, PWN, Веб, Стеганографии, Реверс-инжинирингу, Форензике и Криптографии. Школа CTF с бесплатными курсами по всем категориям.

Как преобразовать дату в текст в нужном формате?

  • Автор темы Sandro
  • Дата начала
S

Sandro

Как сделать, что бы функция Today формировалась в формате даты региональной настройки клиента ? Перерыл хэлп ничего не нашёл ((((
 
N

nvyush

Функция Today возвращает значение типа дата. Для вывода значения даты в нужном формате у поля/столбца нужно установить соответствующие свойства. Для преобразования даты в строку на ЛС есть функция Format.
 
S

Sandro

Формат пробовал, но он всё равно берёт формат с сервера, если вставлять дату в поле и оттуда брать в отчёт всё нормально, но плодить tmp поля не хочется, на сколько понимаю это сказывается и на производительности и на объёме БД. Формат поля тоже не известен, потому как некоторые используют dd/mm/yyyy, некоторые dd.mm.yyyy, некоторые dd.mm.yy , вот и интересуюсь можно ли получить дату и конвертировать её в форме локальных настроек пользователя
 
N

nvyush

Дату нужно хранить в поле типа дата, тогда и проблем не будет. Если у Вас пользователи сохраняют дату в текстовом формате, то задача в принципе не решаема, т.к. Вы никогда не узнаете 05.06.2010 — это пятое июня или шестое мая.
 
H

hosm

еще скриптом иожно получить разделитель для дат и формат даты (isDateDMY) через Notessession.International или Notessession.InternationalSettings (всё по памяти - сейчас нет лотуса под рукой)
 
A

Akupaka

nvy
ToxaRat
Это вы мне код показали? :ya_lamo:
Т.е. вас не смутило заявление, что функция Format() "берёт формат с сервера"?
 
S

Sandro

да ну? а можно код поглядеть такой?

есть еще класс NotesDateTime


Туплю наверно, но когда работаю с базой на локальной машине всё работает как надо, размещаю на сервере, выдаёт буржуйский формат, выдаёт это значит выводится в excel, делаю MessageBox с переменной которую вставляю, формат нормальный, а в эксель вставляется В БУРЖУЙСКОМ, тип поля в excel - Общий , ничего не понимаю, буду разбираться. Дело не в сервере похоже, сорри за дезу.
 
N

nvyush

Akupaka
Прошу обратить внимание на дату/время наших сообщений #6 и #7.
Что касается "берёт формат с сервера" — то должны браться настройки по месту исполнения кода. Если отчёт формируется серверным агентом, то и дата будет в формате сервера. В принципе и это можно обойти, "подсунуть" агенту дату в формате клиента через документ или даже просто передать формат в аргументе NoteID метода RunOnServer.


Добавлено:
Туплю наверно, но когда работаю с базой на локальной машине всё работает как надо, размещаю на сервере, выдаёт буржуйский формат, выдаёт это значит выводится в excel, делаю MessageBox с переменной которую вставляю, формат нормальный, а в эксель вставляется В БУРЖУЙСКОМ, тип поля в excel - Общий , ничего не понимаю, буду разбираться. Дело не в сервере похоже, сорри за дезу.
Сделайте тип поля в Excel текстовый. Если сделать тип дата, опять надо будет плясать с настройками отображения, но уже для Excel.
 
A

Akupaka

ошу обратить внимание на дату/время наших сообщений #6 и #7.
гыыы

В принципе и это можно обойти, "подсунуть" агенту дату в формате клиента через документ
Иногда желательно прийти к решению оформлять дату в едином стиле в рамках одной организации, имхо.
Соотв, где надо приводить формат явно.
 

lmike

нет, пердело совершенство
Lotus Team
27.08.2008
7 933
609
BIT
177
если сувать в хехель "по месту" как дату - усё будет ок на локальном компе
с цифирьками не раз проверето
не раз ужо делали так - цитрикс в дании, там ахапта, выгруз в хехель, копирование файло в москву, циферьки получаются в местном формате
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!