Форум программистов, компьютерный форум, киберфорум
Наши страницы
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.54/26: Рейтинг темы: голосов - 26, средняя оценка - 4.54
racushka
0 / 0 / 0
Регистрация: 26.10.2010
Сообщений: 40
1

1с 8.2 БГУ изменение внешней печатной формы

21.10.2011, 15:07. Просмотров 4863. Ответов 2
Метки нет (Все метки)

Подскажите пожалуйста новичку в 1с.
Мне нужно в БГУ изменить вид РКО и ПКО для документов НД_РКО и НД_ПКО с помощью внешней обработки.
Пока разбираюсь с РКО:
Я создала внешнюю обработку, скопировала туда макет из общих макетов, изменила внешнюю вид.
Добавила реквизит к обработке с название СсылкаНаОбъект с реквизитом ДокуметСсылка.НД_РКО.
Потом открыла модуль документа, скопировала оттуда функцию Печать() и вставила ее в модуль обработки.
Собственно все это производилось для изменения поля корреспондирующий счет, субсчет.
Как мне нужно переделать эту функцию Печать.
Для начала что бы она заполнялась так же как, когда она вызывается из модуля документа.
Вот текст функции в модуле документа:

1C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
Функция ПечатьРКО()
    
    Общее       = ДанныеДокумента("РКО");  //эта функция находиться в модуле документа, 
//в нее передается параметр Вид, что это такое не понимаю=( и как к ней обратиться? так: 
//СсылкаДокумент.ИмяДокумента.Функция.ДанныеДокумента? или как?
    
    Если (Общее.СчетКассы.Валютный) И НЕ(Общее.пВалюта = Константы.ВалютаРегламентированногоУчета.Получить()) Тогда
        ВыводитьВалютныеСуммы = Истина;
    Иначе
        ВыводитьВалютныеСуммы = Ложь;
    КонецЕсли;
        
    ТабДокумент = Новый ТабличныйДокумент;
    Макет       = ПолучитьОбщийМакет("НД_РКО");// для получения макета из внешней обработки 
//нужно написать так: ПолучитьМакет("ИмяМакета")? или как-то по-другому?
    
    Ордер       = Макет.ПолучитьОбласть("РКО");
 
    Ордер.Параметры.Заполнить(Общее);
    
    РублевыйЭквивалент = ОбщегоНазначения.СформироватьСуммуПрописью(Общее.пСуммаДокумента, ОбщегоНазначения.ПолучитьЗначениеПеременной("глВалютаРегламентированногоУчета"));
    
    Если  ВыводитьВалютныеСуммы Тогда
        Ордер.Параметры.пСуммаПрописью = ОбщегоНазначения.СформироватьСуммуПрописью(Общее.пВалютнаяСуммаДокумента, Общее.пВалюта) + " (" + РублевыйЭквивалент + ")";
    Иначе
        Ордер.Параметры.пСуммаПрописью = РублевыйЭквивалент;
    КонецЕсли;
    
    Ордер.Параметры.Номер                = ОбщегоНазначения.ПолучитьНомерНаПечать(Общее);
    
    // при ведении валютного учета
    Если  ВыводитьВалютныеСуммы Тогда
          Ордер.Параметры.пСуммаДокумента = Формат(Общее.пВалютнаяСуммаДокумента, "ЧЦ=15; ЧДЦ=2; ЧРД=-; ЧГ=0") + " " + Общее.пВалюта + "  (" + Формат(Общее.пСуммаДокумента, "ЧЦ=15; ЧДЦ=2; ЧРД=-; ЧГ=0") + " " + ОбщегоНазначения.ПолучитьЗначениеПеременной("глВалютаРегламентированногоУчета") + ")";
    КонецЕсли;  
    
    // определение корреспондирующего счета
    КорСчВыб = Общее.СтрокиДокумента.Выбрать();
    КорСчВыб.Следующий(); 
        
    Ордер.Параметры.пКодКорСчет  = ПолучениеНСИ.НД_ПолучитьПредставлениеСчета(КорСчВыб.МаксКорСчет, КорСчВыб.МинКорСчет, ""); 
    Ордер.Параметры.пСчетКассы   = ПолучениеНСИ.НД_ПолучитьПредставлениеСчета(Общее.СчетКассы, , "");       
    //Ордер.Параметры.пКодКорСчет  = ПолучениеНСИ.НД_ПолучитьПредставлениеСчета(КорСчВыб.МаксКорСчет, КорСчВыб.МинКорСчет, Общее.КВД); 
    //Ордер.Параметры.пСчетКассы   = ПолучениеНСИ.НД_ПолучитьПредставлениеСчета(Общее.СчетКассы, , Общее.КВД);      
    
    //подписи
    Ордер.Параметры.пГлавБухФИО   = БухгалтерскийУчет.ФИО(Общее.глБухгалтер,    Истина);
    Ордер.Параметры.пКассир       = БухгалтерскийУчет.ФИО(Общее.Кассир,         Истина);
    Ордер.Параметры.пРуководитель = БухгалтерскийУчет.ФИО(Общее.Руководитель,   Истина);
    
    Если ЗначениеЗаполнено(Общее.Руководитель) Тогда
        СтруктураПараметров           = Новый Структура("ДанныеСотрудника", Новый Структура("Должность"));
        ПолучениеНСИ.ПолучитьДанные(Общее.Руководитель, Дата, СтруктураПараметров);
        Ордер.Параметры.пДолжностьРук = СтруктураПараметров.Должность;
    КонецЕсли;
    //-------------------------------------------------------------
    ТабДокумент.ИмяПараметровПечати = "ПечатьНД_РКО";
    ТабДокумент.Вывести(Ордер);
    
    Возврат ТабДокумент;
    
КонецФункции
И как теперь обращаться ко всем параметрам из документа?
Прошу прощения не нашла как выделить код 1с=(
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.10.2011, 15:07
Ответы с готовыми решениями:

Закрытие формы документа из внешней печатной формы
Нужно после печати документа, закрыть его форму. Управляемое приложение. Никак не могу понять прошу...

Создание внешней печатной формы
Возникла такая проблема, мне дали задание на создание внешней печатной формы для документа...

Создание внешней печатной формы 1с 8.2
Ммм собственно совсем "малыш" в вопросе 1с, только начал изучать, попробовал воспользоваться тут...

Разработка внешней печатной формы
Есть документ, для которого необходимо сформировать печатную форму. примерно такой: Номенклатура ...

Создание внешней печатной формы
Здравствуйте. Получила первое задание по 1С создание внешней печатной формы. Инструкцию по...

2
Dethmontt
Модератор
Эксперт 1С
2650 / 2440 / 418
Регистрация: 10.03.2011
Сообщений: 8,742
Записей в блоге: 1
Завершенные тесты: 1
21.10.2011, 17:28 2
Цитата Сообщение от racushka Посмотреть сообщение
Общее = ДанныеДокумента("РКО"); //эта функция находиться в модуле документа, //в нее передается параметр Вид, что это такое не понимаю=( и как к ней обратиться? так: //СсылкаДокумент.ИмяДокумента.Функция.ДанныеДокумента? или как?
Если у этой функции стоит постфикс ЭКСПОРТ то можно и так.
Или же просто ее тоже скопируй в обработку

Добавлено через 1 час 25 минут
Цитата Сообщение от racushka Посмотреть сообщение
Макет = ПолучитьОбщийМакет("НД_РКО");// для получения макета из внешней обработки //нужно написать так: ПолучитьМакет("ИмяМакета")? или как-то по-другому?
Макет = СсылканаОбъект.ПолучитьМакет("ИмяМакета");

Добавлено через 2 минуты
Это если макет в документе

Добавлено через 15 секунд
Если общий макет, тогда так же
1
racushka
0 / 0 / 0
Регистрация: 26.10.2010
Сообщений: 40
22.10.2011, 00:47  [ТС] 3
Цитата Сообщение от Dethmontt Посмотреть сообщение

Добавлено через 2 минуты
Это если макет в документе

Добавлено через 15 секунд
Если общий макет, тогда так же
А если это макет внешней обработки?
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.10.2011, 00:47

Создание внешней печатной формы
Создаю внешнюю печатную форму. Поле ввода - Индентификатор "Док" тип "Документ" Кнопка Печать ...

Редактирование внешней печатной формы в 1С V7.7
День добрый всем спецам! Прошу помощи! Нужно чтобы во внешней печатной форме в столбце "ТМЦ" (в...

Дополнительная форма для внешней печатной формы
Создала внешнюю печатную форму для документа. Но перед выводом данного отчета мне нужно у...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru