Имя: Пароль:
1C
1С v8
Формат даты в шаблоне в макете
, ,
0 Zebbar
 
15.12.11
11:30
Добрый день!
Есть ДатаРождения, которая выбирается из поля ДатаРождения справочника ФизическиеЛица и в нем стоит состав даты = Дата

Дата рождения добавляется в макет в виде шаблона
 2. Дата рождения [ДатаРождения]
Беда в том, что на печать она выводится как Дата со временем.
Попытался сделать как в 1С 7.7
[ДатаРождения#ФорматЧисла] и так [ДатаРождения]#ФорматЧисла
Выходит вообще пустая строка вместо даты.
Как правильно отформатировать, чтобы на печати была только дата без времени?
1 Галахад
 
гуру
15.12.11
11:31
Там в свойствах есть формат.
2 Wobland
 
15.12.11
11:35
(1) у него ж шаблон.
(0) Формат() перед выводом наколдуй
3 Zebbar
 
15.12.11
11:50
В квадратных скобках?
4 Zebbar
 
15.12.11
11:55
Ничего из даты не выводит - то, что в квадратных скобках, того нет.
-
 2. Дата рождения [Формат(ДатаРождения,"ДФ=dd.MM.yyyy")]
5 petrowsky
 
15.12.11
11:59
(4) в коде, там где ты данные в макет помещаешь, например

ОбластьШапка.Параметры.ДатаРождения = Формат(ДатаРождения, "ДФ=dd.MM.yyyy");
6 Zebbar
 
15.12.11
12:42
v8: Формат даты в шаблоне в макете
Там в клетке не только ДатаРождения, но еще и текст
7 petrowsky
 
15.12.11
12:45
(6) оторвись от макета, исправь в коде, когда помещаешь данные в макет
8 НЕА123
 
15.12.11
12:45
(6)
ты (5) сделал или не пытался?
9 Shrek_yar
 
15.12.11
12:47
формат(Дата, параметры)
10 Zebbar
 
15.12.11
13:06
У меня там так:

------
   Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
       ОбластьДетальныхЗаписей.Параметры.Заполнить(ВыборкаДетальныеЗаписи);
       ТабДок.Вывести(ОбластьДетальныхЗаписей, ВыборкаДетальныеЗаписи.Уровень());
       ТабДок.ВывестиГоризонтальныйРазделительСтраниц();
   КонецЦикла;

Я попытался написать
  ОбластьДетальныхЗаписей.Параметры.ДатаРождения = Формат(ДатаРождения, "ДФ=dd.MM.yyyy");
но он меня при сохранении обругивает
11 Wobland
 
15.12.11
13:10
(10) телепатирую: ВыборкаДетальныеЗаписи.ДатаРождения
12 Zebbar
 
15.12.11
13:13
---
         ВыборкаДетальныеЗаписи.ДатаРождения = Формат(ВыборкаДетальныеЗаписи.ДатаРождения, "ДФ=dd.MM.yyyy");
Посылает.
Может, мне весь код уже привести, чтобы понятнее было?
13 Wobland
 
15.12.11
13:14
ДатаРождения у тебя откуда?
14 petrowsky
 
15.12.11
13:15
(12)
Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
   ОбластьДетальныхЗаписей.Параметры.Заполнить(ВыборкаДетальныеЗаписи);
   
   ОбластьДетальныхЗаписей.Параметры.ДатаРождения = Формат(ВыборкаДетальныеЗаписи.ДатаРождения, "ДФ=dd.MM.yyyy");
   
   ТабДок.Вывести(ОбластьДетальныхЗаписей, ВыборкаДетальныеЗаписи.Уровень());
   ТабДок.ВывестиГоризонтальныйРазделительСтраниц();
КонецЦикла;
15 Zebbar
 
15.12.11
13:17
(13) Из запроса
16 Zebbar
 
15.12.11
13:18
(14). Ошибку дает
{Форма.ФормаМедсправки.Форма(64)}: Поле объекта не обнаружено (ДатаРождения)
       ОбластьДетальныхЗаписей.Параметры.ДатаРождения = Формат(ВыборкаДетальныеЗаписи.ДатаРождения, "ДФ=dd.MM.yyyy");
17 Wobland
 
15.12.11
13:20
(16) ищи. либо в макете нет, либо в выборке
18 Смешной 1С
 
15.12.11
13:30
Запрос покажи
19 Zebbar
 
15.12.11
13:36
Вот вся процедура:

---
Процедура Подобратьсотрудников(Кнопка)
   //ПараметрыФормы = Новый Структура ("ЗакрыватьПриВыборе", Ложь);
   //ОткрытьФорму ("Справочник.СотрудникиОрганизаций.ФормаВыбора",ПараметрыФормы);
   //{{КОНСТРУКТОР_ЗАПРОСА_С_ОБРАБОТКОЙ_РЕЗУЛЬТАТА
   // Данный фрагмент построен конструктором.
   // При повторном использовании конструктора, внесенные вручную изменения будут утеряны!!!
   ТабДок = Новый ТабличныйДокумент;
   Макет = ПолучитьМакет("Макет");
   СписокСотрудников = Сотрудники.ВыгрузитьКолонку("Сотрудник");
   Запрос = Новый Запрос;
   Запрос.УстановитьПараметр("СписокСотрудников", СписокСотрудников);
   Запрос.Текст =
       "ВЫБРАТЬ
       |    ФизическиеЛица.Наименование КАК ФИО,
       |    ФизическиеЛица.ДатаРождения,
       |    СотрудникиОрганизаций.ПодразделениеОрганизации КАК Участок,
       |    ДолжностиОрганизаций.Наименование КАК Должность,
       |    СпрФизФакторы.Значение КАК ФизФакторы,
       |    СпрХимФакторы.Значение КАК ХимФакторы,
       |    СпрСпецФакторы.Значение КАК СпецФакторы,
       |    СпрТяжести.Значение КАК ФакторТяжести,
       |    СпрБиоФакторы.Значение КАК БиоФакторы
       |ИЗ
       |    Справочник.СотрудникиОрганизаций КАК СотрудникиОрганизаций
       |        ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ДолжностиОрганизаций КАК ДолжностиОрганизаций
       |            ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЗначенияСвойствОбъектов КАК СпрФизФакторы
       |            ПО ДолжностиОрганизаций.Ссылка = СпрФизФакторы.Объект
       |                И (СпрФизФакторы.Свойство.Код = ""0004"")
       |            ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЗначенияСвойствОбъектов КАК СпрБиоФакторы
       |            ПО ДолжностиОрганизаций.Ссылка = СпрБиоФакторы.Объект
       |                И (СпрБиоФакторы.Свойство.Код = ""0005"")
       |            ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЗначенияСвойствОбъектов КАК СпрСпецФакторы
       |            ПО ДолжностиОрганизаций.Ссылка = СпрСпецФакторы.Объект
       |                И (СпрСпецФакторы.Свойство.Код = ""0002"")
       |            ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЗначенияСвойствОбъектов КАК СпрХимФакторы
       |            ПО ДолжностиОрганизаций.Ссылка = СпрХимФакторы.Объект
       |                И (СпрХимФакторы.Свойство.Код = ""0003"")
       |            ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЗначенияСвойствОбъектов КАК СпрТяжести
       |            ПО ДолжностиОрганизаций.Ссылка = СпрТяжести.Объект
       |                И (СпрТяжести.Свойство.Код = ""0006"")
       |        ПО СотрудникиОрганизаций.Должность = ДолжностиОрганизаций.Ссылка
       |        ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ФизическиеЛица КАК ФизическиеЛица
       |        ПО СотрудникиОрганизаций.Физлицо = ФизическиеЛица.Ссылка
       |ГДЕ
       |    СотрудникиОрганизаций.Ссылка В(&СписокСотрудников)
       |
       |УПОРЯДОЧИТЬ ПО
       |    Участок,
       |    ФИО";

   Результат = Запрос.Выполнить();
   ОбластьДетальныхЗаписей = Макет.ПолучитьОбласть("Детали");
   ТабДок.Очистить();
   ТабДок.НачатьАвтогруппировкуСтрок();
   ВыборкаДетальныеЗаписи = Результат.Выбрать();
   Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
       //ВыборкаДетальныеЗаписи.ДатаРождения = Формат(ВыборкаДетальныеЗаписи.ДатаРождения, "ДФ=dd.MM.yyyy");
       ОбластьДетальныхЗаписей.Параметры.Заполнить(ВыборкаДетальныеЗаписи);
       ОбластьДетальныхЗаписей.Параметры.ДатаРождения = Формат(ВыборкаДетальныеЗаписи.ДатаРождения, "ДФ=dd.MM.yyyy");
       ТабДок.Вывести(ОбластьДетальныхЗаписей, ВыборкаДетальныеЗаписи.Уровень());
       ТабДок.ВывестиГоризонтальныйРазделительСтраниц();
   КонецЦикла;
   ТабДок.ЗакончитьАвтогруппировкуСтрок();
   ТабДок.Показать();
   //}}КОНСТРУКТОР_ЗАПРОСА_С_ОБРАБОТКОЙ_РЕЗУЛЬТАТА
КонецПроцедуры
20 Zebbar
 
15.12.11
13:39
Все получилось - у меня от предыдущих опытов в клетке было с Формат()
21 Zebbar
 
15.12.11
13:39
Спасибо всем!
22 Wobland
 
15.12.11
13:39
(19) тогда в макете с датой рождения всё плохо. нет такого параметра
Компьютеры — прекрасное средство для решения проблем, которых до их появления не было.