Вход | Регистрация



Как в скд красиво вывести регистратор?

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

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

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

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

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

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

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

Ваша душенька довольна? ))
   Петрович 2018
 
13 - 04.12.17 - 20:50
(11) Число преобразовываю. Число!
   jsmith82
 
14 - 04.12.17 - 20:52
(13) Число в строку можно?
   jsmith82
 
15 - 04.12.17 - 20:53
Ты сам пробовал это в СКД провернуть?
   МимохожийОднако
 
16 - 04.12.17 - 21:02
СтрЗаменить("Списание с расчетного счета 0000-",Списание № ) 
))
   jsmith82
 
17 - 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 знаков
   jsmith82
 
21 - 04.12.17 - 21:14
(20) ПОДСТРОКА(Регистратор.Номер, 6, 6)
   Мисти
 
22 - 04.12.17 - 21:15
спасибочки!
   jsmith82
 
23 - 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")


Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует