|
БП 3 Как программно внести изменения в печатную форму отчета перед(после) вывода на экран? | ☑ | ||
---|---|---|---|---|
0
Serg12_19
18.03.20
✎
11:25
|
Подскажите пожалуйста, может где есть пример подобного?
Бухгалтерии приспичило в книге покупок видеть по-другому данные о счет-фактурах... |
|||
1
SleepyHead
гуру
18.03.20
✎
11:27
|
(0) - по-другому - понятие растяжимое.
Отвечу в меру того, как я понял 1. До вывода отчета на экран у тебя есть табличный документ. Делай с ним все, что он позволяет делать с собой программно, описание в синтаксис-помощнике 2. После вывода на экран его можно программно сохранить и снова делать с ним что хочешь любыми программными средствами. |
|||
2
Serg12_19
18.03.20
✎
11:30
|
Бухам нужно чтобы вместо " от " выводилось ";". Хочу добавить расширение и там сделать что-то типа стрЗаменить для всех ячеек табличного документа.
|
|||
3
SleepyHead
гуру
18.03.20
✎
11:33
|
(2) У табличного документа есть метод НайтиТекст(), так что нет ничего невозможного..
|
|||
4
1c TTT
18.03.20
✎
11:43
|
может исковеркать название организаций, нужно проходить только нужные колонки.
|
|||
5
ГдеСобака Зарыта
18.03.20
✎
11:45
|
Вот же заботы у товарищей. Люди гибнут сотнями каждый день, страны изолируются друг от друга, паника в соцсетях. А они думают как свой МПХ из одной руки в другую переложить.
|
|||
6
Serg12_19
18.03.20
✎
16:23
|
Добавил в отчет.КнигаПокупок в процедуру ПоказатьВыбранныйЛист поиск и замену
&НаСервере Процедура ПоказатьВыбранныйЛист(НомерРаздела) Результат.Очистить(); ТекущийНомерРаздела = НомерРаздела; // ИнтернетПоддержкаПользователей.РаботаСКонтрагентами ПроверкаКонтрагентов.ВывестиРазделОтчета(ЭтотОбъект, Результат, ТекущийНомерРаздела); // Конец ИнтернетПоддержкаПользователей.РаботаСКонтрагентами //мои исправления е=1; Пока е=1 Цикл Рез1=Результат.НайтиТекст(" от "); Если Рез1 = Неопределено Тогда Прервать; КонецЕсли; Рез1.Текст=СтрЗаменить(Рез1.Текст," от ",";"); КонецЦикла; //мои исправления Результат.ЧерноБелаяПечать = Истина; РассчитатьОбластьПечати(); КонецПроцедуры На секунду проскакивают заветные точки с запятой, а затем опять выводится " от ". Подозреваю что после проверки контрагентов происходит перезаполнение таблицы Результат, но не могу найти где. Подскажите пожалуйста, люди добрые... |
|||
7
1c TTT
18.03.20
✎
16:30
|
(6) зачем тебе найти текст проходи по ячейкам табличного документа и все
|
|||
8
yurikmellon2
18.03.20
✎
16:54
|
(6) в модуле менеджера отчета в Процедуре ЗаполнитьСтрокуКнигиПокупок
пред СоставСтроки.Вставить("НомерОтДата", ПредставлениеСФ.НомерОтДата); добавить ПредставлениеСФ.НомерОтДата=СтрЗаменить(ПредставлениеСФ.НомерОтДата," от ",";"); |
|||
9
Serg12_19
18.03.20
✎
17:07
|
Спасибо!
|
|||
10
yurikmellon2
18.03.20
✎
17:08
|
или чтобы уж совсем было красиво, там же заменить эту строчку
СоставСтроки.Вставить("НомерОтДата", СтрЗаменить(ПредставлениеСФ.НомерОтДата," от ",";")); //СоставСтроки.Вставить("НомерОтДата", ПредставлениеСФ.НомерОтДата); |
|||
11
Serg12_19
19.03.20
✎
20:36
|
Вдруг кому-то пригодится...
Все-таки сделал через замену в табличном документе, т.к. бухам понадобилось то же и в книге продаж, и в доп. листах В общих модулях ПроверкаКонтрагентов Процедура ВывестиРазделОтчета(Форма, ПолеТабличногоДокумента, НомерРаздела) Экспорт СтандартнаяОбработка = Истина; РаботаСКонтрагентамиПереопределяемый.ВывестиРазделОтчета(Форма, ПолеТабличногоДокумента, НомерРаздела, СтандартнаяОбработка); // Если действия переопределили, то стандартную обработку не выполняем. Если НЕ СтандартнаяОбработка Тогда Возврат; КонецЕсли; ПолеТабличногоДокумента.Очистить(); РазделыОтчета = РазделыОтчетаВФорме(Форма); СтрокаРаздела = РазделыОтчета.Найти(НомерРаздела, "НомерРаздела"); Если СтрокаРаздела = Неопределено Тогда Возврат; КонецЕсли; РезультатФормированияОтчета = СтрокаРаздела.ХранилищеОтчета.Получить(); //СМ Рез0= РезультатФормированияОтчета.ИмяПараметровПечати; Если (Рез0= "ПАРАМЕТРЫ_ПЕЧАТИ_КнигаПокупок") или (Рез0= "ПАРАМЕТРЫ_ПЕЧАТИ_КнигаПродаж") Тогда е=1; Пока е=1 Цикл Рез1=РезультатФормированияОтчета.НайтиТекст(" от "); Если Рез1 = Неопределено Тогда Прервать; КонецЕсли; Рез1.Текст=СтрЗаменить(Рез1.Текст," от ",";"); КонецЦикла; КонецЕсли; //СМ ПолеТабличногоДокумента.Вывести(РезультатФормированияОтчета); КонецПроцедуры |
|||
12
Сияющий в темноте
20.03.20
✎
02:38
|
а открыть шаблон и посмотреть?
|
|||
13
Мимохожий Однако
20.03.20
✎
06:44
|
Осталось выяснить, что уходит в файл отчетности в электронном виде. Насколько я знаю, это важнее бумажки.
|
|||
14
Креатив
22.03.20
✎
22:52
|
(0)Срочно учиться говорить бухам:"Нет". На всякую фигню.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |