Имя: Пароль:
1C
 
Как в скд красиво вывести регистратор?
,
0 Мисти
 
04.12.17
18:00
Списание с расчетного счета 0000-007328 от 04.08.2017 16:12:49
Мне бы - "Списание № 007328 от 04.08.2017"
Где это прописывается?
1 nordbox
 
04.12.17
18:06
Не поверишь, Синоним
2 nordbox
 
04.12.17
18:07
+1 дату и номер надеюсь прикрутишь туда ? )
3 Вафель
 
04.12.17
18:08
только не синоним, а представление
4 Мисти
 
04.12.17
18:13
Не, давайте подробнее! Это не представление документа, я хочу сократить, дата с форматом, номер с изменениями...
куда это всё?
5 xxTANATORxx
 
04.12.17
18:16
в СКД заполняешь поле Выражение представления
6 nordbox
 
04.12.17
18:19
ОбъектМетаданных: Документ (MetadataObject: Document)
Синоним (Synonym)
Использование:

Только чтение.
Описание:

Тип: Строка.
Строка произвольных символов - синоним имени объекта метаданных.

Доступность:

Сервер, толстый клиент, внешнее соединение, мобильное приложение(сервер).
7 Петрович 2018
 
04.12.17
18:19
(4) В строку, через "+"!
ВЫБОР
  КОГДА ТвойРегистр.Регистратор ССЫЛКА Документ.Списание
    ТОГДА "Списание №"
  КОГДА ТвойРегистр.Регистратор ССЫЛКА Документ.КакойТоДокумент
    ТОГДА "Какой-то докмент №"
  ИНАЧЕ ""
КОНЕЦ
+ Регистратор.Номер
+ " от "
+ ВЫРАЗИТЬ(ДЕНЬ(Регистратор.Дата) КАК СТРОКА(2))
+ "."

...и так далее..
8 Мисти
 
04.12.17
20:05
Вах! Спасибо! И не лень же писать!
Зачтется в карму!!
9 jsmith82
 
04.12.17
20:46
(7) А лидирующие нули?
10 nordbox
 
04.12.17
20:49
(9) Ну ты еще скажи что это надо курсивом или прописью с завитушками как у Пушкина ))
11 jsmith82
 
04.12.17
20:50
И с каких пор в запросе можно дату в строку преобразовать?
12 Петрович 2018
 
04.12.17
20:50
(9) ну типа "ой!" ))

ВЫБОР
  КОГДА ДЕНЬ(Регистратор.Дата) < 10
    ТОГДА "0" + ВЫРАЗИТЬ(ДЕНЬ(Регистратор.Дата) КАК СТРОКА(1))
  ИНАЧЕ ВЫРАЗИТЬ(ДЕНЬ(Регистратор.Дата) КАК СТРОКА(2))
КОНЕЦ

Ваша душенька довольна? ))
13 Петрович 2018
 
04.12.17
20:50
(11) Число преобразовываю. Число!
14 jsmith82
 
04.12.17
20:52
(13) Число в строку можно?
15 jsmith82
 
04.12.17
20:53
Ты сам пробовал это в СКД провернуть?
16 Мимохожий Однако
 
04.12.17
21:02
СтрЗаменить("Списание с расчетного счета 0000-",Списание № )
))
17 jsmith82
 
04.12.17
21:03
Функция общего модуля, если в СКД нельзя провернуть фокус с преобразованием типов
18 Мисти
 
04.12.17
21:07
ВЫБОР
        КОГДА АР_РасходыПоСобственникам.Регистратор ССЫЛКА Документ.СписаниеСРасчетногоСчета
            ТОГДА "Списание №"
        ИНАЧЕ ""
    КОНЕЦ + АР_РасходыПоСобственникам.Регистратор.Номер + " от " + "20" + ПОДСТРОКА(&ЧислоСтрокой, (ГОД(АР_РасходыПоСобственникам.Регистратор.Дата) - 2000) * 2 + 1, 2)+ "/" + ПОДСТРОКА(&ЧислоСтрокой, МЕСЯЦ(АР_РасходыПоСобственникам.Регистратор.Дата) * 2 + 1, 2) + "/" + ПОДСТРОКА(&ЧислоСтрокой, ДЕНЬ(АР_РасходыПоСобственникам.Регистратор.Дата) * 2 + 1, 2) КАК РегистраторДок,
Вот такой нарыла вариант, работает
19 Мисти
 
04.12.17
21:08
ЧислоСтрокой = "00";

    Для N = 0 По 99 Цикл
        ЧислоСтрокой = ЧислоСтрокой + Формат(N,"ЧЦ=2; ЧВН=");
    КонецЦикла;
20 Мисти
 
04.12.17
21:09
И номер мне нужен без первых 5 знаков
21 jsmith82
 
04.12.17
21:14
(20) ПОДСТРОКА(Регистратор.Номер, 6, 6)
22 Мисти
 
04.12.17
21:15
спасибочки!
23 jsmith82
 
04.12.17
21:18
Можно ещё так
Создать общий модуль. Прописать функцию

Функция ДатаСтрокой(Дата) Экспорт
    
    Возврат Формат(Дата, "ДЛФ=D");
    
КонецФункции

В самом отчёте в модуле

Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка)
    
    СтандартнаяОбработка = Ложь;
    НастройкиСКД = КомпоновщикНастроек.ПолучитьНастройки();
    
    КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных;
    МакетКомпоновки = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных, НастройкиСКД, ДанныеРасшифровки);
    
    ПроцессорКомпоновки = Новый ПроцессорКомпоновкиДанных;
    ПроцессорКомпоновки.Инициализировать(МакетКомпоновки, , ДанныеРасшифровки, Истина);
            
    ДокументРезультат.Очистить();
    
    ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент;
    ПроцессорВывода.УстановитьДокумент(ДокументРезультат);    
    ПроцессорВывода.Вывести(ПроцессорКомпоновки);
    
КонецПроцедуры

В поле (вычисляемом или выражении представления) написать

"Списание №" + ПОДСТРОКА(Регистратор.Номер, 6, 6) + " от " + МойМодуль.ДатаСтрокой(Регистратор.Дата)
24 Лефмихалыч
 
04.12.17
22:21
(0) перестаньте этого хотеть. Это вредно. Пустая трата мегагерцев и человеко-часов.
25 Мимохожий Однако
 
04.12.17
23:26
(24) Девочки любят бантики и финтифлюшки
26 Гипервизор
 
05.12.17
07:16
Формат и без общего модуля работает в выражении представления:
" № " + Документ.Номер + " от " + Формат(Документ.Дата, "ДФ=dd.MM.yyyy")
Компьютер — устройство, разработанное для ускорения и автоматизации человеческих ошибок.