7.7 Изменение формы таблицы

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 7.7"", создана пользователем vitaliy_v, 31 авг 2009.

  1. TopicStarter Overlay
    vitaliy_v
    Offline

    vitaliy_v

    Регистрация:
    31 авг 2009
    Сообщения:
    3
    Симпатии:
    0
    Баллы:
    1
    Добрый день.


    Ситуация следующая : Внес изменения в форму документа .

    Вопрос: Как описать в процедуре вывод и старой таблицы и новой в зависимости от даты создания документа на примере "расходной кассовый ордер"? Заранее благодарен.

    Процедура до изменения.

    Код:
    Процедура Печать()
    Таб = СоздатьОбъект("Таблица");  
    ИмяФайлаПечатнойФормы = КаталогИБ()+"ExtForms\PrnForms\RK_ru.mxl";		
    Если ФС.СуществуетФайл(ИмяФайлаПечатнойФормы) = 1 Тогда
    Таб.ИсходнаяТаблица(ИмяФайлаПечатнойФормы);
    Иначе
    Таб.ИсходнаяТаблица("Таблица_1");
    КонецЕсли;
    глУстПропись(РСчет.Валюта,"У");
    Выдать = "";
    Если Счет.КоличествоСубконто() > 0 Тогда
    Выдать= ?(Субконто.Вид() = "Сотрудники", СокрЛП(Субконто.Фамилия)
    +" "+СокрЛП(Субконто.Имя)+" "+Субконто.Отчество,
    ?(Субконто.Вид() = "Контрагенты", Субконто.ПолнНаименование, Субконто.Наименование));
    КонецЕсли;
    Таб.Вывести();
    Таб.Опции(0,0,0,0,"");
    Таб.Защита(Константа.ФлагЗащитыТаблиц);
    Таб.ТолькоПросмотр(1);
    Таб.Показать("Расходный кассовый ордер","");
    глУстПропись(рубль);
    КонецПроцедуры
    
  2. Хряк
    Offline

    Хряк Профессионал в 1С

    Регистрация:
    26 сен 2007
    Сообщения:
    1.447
    Симпатии:
    37
    Баллы:
    54
    Код:
    Если ФС.СуществуетФайл(ИмяФайлаПечатнойФормы) = 1 Тогда
    Таб.ИсходнаяТаблица(ИмяФайлаПечатнойФормы);
    Иначе
    //здесь предполагается, что внешней формы-то и нету (это которая КаталогИБ()+"ExtForms\PrnForms\RK_ru.mx)
    если ДатаДок<'01.01.09' тогда
    Таб.ИсходнаяТаблица("Таблица_1");
    иначе
    Таб.ИсходнаяТаблица("Таблица_2");
    конецесли
    КонецЕсли;
    
  3. TopicStarter Overlay
    vitaliy_v
    Offline

    vitaliy_v

    Регистрация:
    31 авг 2009
    Сообщения:
    3
    Симпатии:
    0
    Баллы:
    1
    Получается что форма таблицы берется из : КаталогИБ()+"ExtForms\PrnForms\RK_ru.mx)

    Тогда как правильно поменять форму таблицы?
    (я новичок, так что если вопрос некорректный поправьте пожалуйста)
  4. Vlad
    Offline

    Vlad Модераторы Команда форума Модератор

    Регистрация:
    16 авг 2006
    Сообщения:
    3.517
    Симпатии:
    19
    Баллы:
    29
    Закомментируй вот это

    Код:
    ИмяФайлаПечатнойФормы = КаталогИБ()+"ExtForms\PrnForms\RK_ru.mxl"; 
    Если ФС.СуществуетФайл(ИмяФайлаПечатнойФормы) = 1 Тогда
    Таб.ИсходнаяТаблица(ИмяФайлаПечатнойФормы);
    Иначе
    
    
    а дальше как Хряк сказал.
  5. Хряк
    Offline

    Хряк Профессионал в 1С

    Регистрация:
    26 сен 2007
    Сообщения:
    1.447
    Симпатии:
    37
    Баллы:
    54
    Не, ну если ты внешнюю форму RK_ru.mxl изменил(добавил),
    можно так
    ИмяФайлаПечатнойФормы = КаталогИБ()+"ExtForms\PrnForms\RK_ru.mxl";
    если ДатаДок>='01.01.09' тогда
    ИмяФайлаПечатнойФормы = КаталогИБ()+"ExtForms\PrnForms\RK_ruНовая.mxl";
    конецесли
    Если ФС.СуществуетФайл(ИмяФайлаПечатнойФормы) = 1 Тогда
    ...
  6. TopicStarter Overlay
    vitaliy_v
    Offline

    vitaliy_v

    Регистрация:
    31 авг 2009
    Сообщения:
    3
    Симпатии:
    0
    Баллы:
    1
    Запустил через внешний файл, все работает.
    Всем Спасибо.

Поделиться этой страницей