PDA

Просмотр полной версии : Формат Даты в запросе



Mexxe
08.02.2017, 09:17
Добрый день помогите пожалуйста новичку, как можно в запросе формат даты без времени вывести?
Вот код


Запрос.Текст = "ВЫБРАТЬ
| ДанныеКлиентаСрезПоследни х.ПаспортСерия КАК Серия,
| ДанныеКлиентаСрезПоследни х.ПаспортНомер КАК Номер,
| ДанныеКлиентаСрезПоследни х.ПаспортВыдан КАК Выдан,
| ДанныеКлиентаСрезПоследни х.ВидДокумента,
| ДанныеКлиентаСрезПоследни х.ДатВыдачиПаспорта КАК ДатаВыдачи,
|ИЗ
| Справочник.Клиенты КАК Клиенты
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ДанныеКли� �нта.СрезПоследних(, Клиент = &Клиент) КАК ДанныеКлиентаСрезПоследни х
| ПО Клиенты.Ссылка = ДанныеКлиентаСрезПоследни х.Клиент
|ГДЕ
| Клиенты.Ссылка = &Клиент";

Запрос.УстановитьПараметр("Клиент",СсылкаНаОбъект.КлиентЗака зчик);
Выборка = Запрос.Выполнить().Выбрать() ;

Дата выводится "ДатВыдачиПаспорта" формата "dd.mm.yyyy чч.мм.сс", а нужно что бы выводилось в печатной форме как "dd.mm.yyyy", как это возможно сделать?
Подскажите пожалуйста. Спасибо!

avm3110
08.02.2017, 11:50
а нужно что бы выводилось в печатной форме как "dd.mm.yyyy", как это возможно сделать?
Подскажите пожалуйста. Спасибо!
А что мешает установить формат поля отчета в нужном виде? Или выводить в отчет "как строку" после функции Формат() и указанием нужной форматной строки?

Mexxe
08.02.2017, 13:43
А что мешает установить формат поля отчета в нужном виде? Или выводить в отчет "как строку" после функции Формат() и указанием нужной форматной строки?

Через формат ячейки без проблем, но нужно что бы в 1 ячейке все паспортные данные были, соответственно для даты формат ячейки не подходит, про функцию формат не совсем понял, новичок в этом деле

avm3110
09.02.2017, 15:12
Дайте ваш кусок кода где вы эту дату выводите (ну чтобы подсказать "конкретно", если общая подсказка не ясна). Только то место где формируется сам вывод отчета

Mexxe
10.02.2017, 08:35
Дайте ваш кусок кода где вы эту дату выводите (ну чтобы подсказать "конкретно", если общая подсказка не ясна). Только то место где формируется сам вывод отчета
Вот такой запрос


Запрос = Новый Запрос;
Запрос.Текст = "ВЫБРАТЬ
| ДанныеКлиентаСрезПоследни х.ПаспортСерия КАК Серия,
| ДанныеКлиентаСрезПоследни х.ПаспортНомер КАК Номер,
| ДанныеКлиентаСрезПоследни х.ПаспортВыдан КАК Выдан,
| ДанныеКлиентаСрезПоследни х.ВидДокумента,
| ДанныеКлиентаСрезПоследни х.ДатВыдачиПаспорта,
|ИЗ
| Справочник.Клиенты КАК Клиенты
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ДанныеКли� �нта.СрезПоследних(, Клиент = &Клиент) КАК ДанныеКлиентаСрезПоследни х
| ПО Клиенты.Ссылка = ДанныеКлиентаСрезПоследни х.Клиент
|ГДЕ
| Клиенты.Ссылка = &Клиент";


Запрос.УстановитьПараметр("Клиент",СсылкаНаОбъект.КлиентЗака зчик);
Выборка = Запрос.Выполнить().Выбрать() ;

Область = Макет.ПолучитьОбласть("Шапка");
Область.Параметры.ДатВыдач иПаспорта = Формат(СсылкаНаОбъект.Дата ,"ДФ=dd.MM.yyyy");

Спасибо за попытку помочь!

avm3110
10.02.2017, 16:25
Ну во-первых, у вас левое соединение, а значит "данные клиента" можете не найти и это нужно обрабатывать (в этом случае данные по паспорту будут NULL)
Во-вторых, у вас может не быть клиента (поле СсылкаНаОбъект.КлиентЗака� �чик может быть пустым), тогда выборка будет пустой (это нужно обрабатывать.

Ну а так.. нужно сделать типа такого
Пока Выборка.Следующий() Цикл

Область.Параметры.ДатВыдач иПаспорта = Формат(Выборка.ДатВыдачиПа спорта,"ДФ=dd.MM.yyyy");
Область.Параметры.ПаспортС ерия = Выборка.Серия;
Область.Параметры.Номер= Выборка.Номер;
Область.Параметры.Выдан= Выборка.Выдан;

КонецЦикла;

--------------------------------------------
Надеюсь понятно...

Mexxe
10.02.2017, 20:56
Ну во-первых, у вас левое соединение, а значит "данные клиента" можете не найти и это нужно обрабатывать (в этом случае данные по паспорту будут NULL)
Во-вторых, у вас может не быть клиента (поле СсылкаНаОбъект.КлиентЗака� �чик может быть пустым), тогда выборка будет пустой (это нужно обрабатывать.

Ну а так.. нужно сделать типа такого
Пока Выборка.Следующий() Цикл

Область.Параметры.ДатВыдач иПаспорта = Формат(Выборка.ДатВыдачиПа спорта,"ДФ=dd.MM.yyyy");
Область.Параметры.ПаспортС ерия = Выборка.Серия;
Область.Параметры.Номер= Выборка.Номер;
Область.Параметры.Выдан= Выборка.Выдан;

КонецЦикла;

--------------------------------------------
Надеюсь понятно...

Да спасибо огромное, получилось!!! Спасибо!