Имя: Пароль:
1C
1C 7.7
v7: Где найти таблицу переоценки?
,
0 Georg68
 
14.01.23
16:25
При проведении документа вылазит таблица переоценки, наименования длинные и не видно половины, надо раздвинуть, но никак не могу найти эту форму.
Не печатную форму, а именно ту, которая вылазит на экране, информационную.
1 Zamestas
 
14.01.23
16:28
(0) В модули документы/формы залезть и поискать там ОткрытьФорму( не предлагать?
2 Zamestas
 
14.01.23
16:30
+(1) И если там нет, то пройтись отладчиком по проведению?
3 MWWRuza
 
гуру
14.01.23
16:43
(1) Не.. Это вообще не форма чего-то, а ТаблицаЗначений:

        ТЗПереоценка = СоздатьОбъект("ТаблицаЗначений");
        ТЗПереоценка.НоваяКолонка("Номенклатура", "Справочник.Номенклатура");
        ТЗПереоценка.НоваяКолонка("Количество", "Число",,,,10);
        ТЗПереоценка.НоваяКолонка("ЦенаСтарая", "Число",,,"Цена (стар.)",10);
        ТЗПереоценка.НоваяКолонка("ЦенаНовая", "Число",,,"Цена (нов.)",10);

Это скопировано из моей конфы, на основе ТиС, но, думаю, что и в чисто-типовой то-же самое, этому механизму уже много лет, я не думаю, что там что-то меняли.
4 MWWRuza
 
гуру
14.01.23
16:47
+(3) И, это не в обработке проведения в модуле документа, а в модуле формы в процедуре "ПроверкаОстатков()"
5 Злопчинский
 
14.01.23
17:04
(0) Конфигу хотя бы озвучь
6 Georg68
 
14.01.23
17:04
СЗПарам = СоздатьОбъект("СписокЗначений");
    СЗПарам.Установить("Заголовок", "Переоценка остатков");
    СЗПарам.Установить("ТекстВопроса", "На складе обнаружены остатки ТМЦ по розничной цене, отличной от розничной цены, назначаемой в документе поступления. Переоценить?");
    СЗПарам.Установить("ТаблЗначений", ТЗПереоценка);  
            
    Если ТЗПереоценка.КоличествоСтрок() = 0 Тогда
        Если Режим = "ОК" Тогда
            СтрокаДействийФормы = "#Записать Провести? Закрыть";
        Иначе
            СтрокаДействийФормы = "#Записать Провести";  
        КонецЕсли;
        Возврат;
    КонецЕсли;
    
    Записать();
    Провести();
    
    ОткрытьФормуМодально("Обработка.ВопросСТаблицейЗначений", СЗПарам, 1);
    
    //VANO
    Если Константа.ПереоценкаНаВсехСкладах>0 Тогда
        ТЗПереоценка.Сортировать("Склад");
    КонецЕсли;
    //VANO
        
    Если СЗПарам = "Да" Тогда  
        
        //VANO
        Если Константа.ПереоценкаНаВсехСкладах>0 Тогда
            ТекСклад="";
            Док = СоздатьОбъект("Документ.ПереоценкаРозница");
            ТЗПереоценка.ВыбратьСтроки();  
            Пока ТЗПереоценка.ПолучитьСтроку()=1 Цикл
                Если ТЗПереоценка.Склад<>ТекСклад Тогда
                    Если Док.КоличествоСтрок()>0 Тогда
                        Док.Записать();
                        Док.Провести();
                        ОткрытьФорму(Док.ТекущийДокумент())
7 Злопчинский
 
14.01.23
17:12
Обработка.ВопросСТаблицейЗначений - так и есть в дереве метаданных
8 Georg68
 
14.01.23
17:13
7.70.932
Отладчик не помогает что-то мне.
9 Злопчинский
 
14.01.23
17:15
стукайся скайп Zlopun
10 Georg68
 
14.01.23
17:18
Нету вражеского скайпа))
11 Georg68
 
14.01.23
17:21
Завтра по Анидеску с работы может посмотришь?
12 Злопчинский
 
14.01.23
17:25
(10) почту посмотри которая в профиле. там мой тлф - любой мессенджер
где завтра а где я..
сейчас давай.
13 MWWRuza
 
гуру
14.01.23
18:09
(6) Ага, точно, форма ВопросСТаблицей значений. ТЗ сформированная в (3) в нее параметром передается.
Но, там, в обработке, параметры ТЗ на форме не настраиваются, просто загружается готовая:
    Форма.Заголовок(Форма.Параметр.Получить("Заголовок"));
    Форма.ТекстВопроса.Заголовок(Форма.Параметр.Получить("ТекстВопроса"));
    ТаблЗначений.Загрузить(Форма.Параметр.Получить("ТаблЗначений"));
Поэтому, настраивать ширину колонок нужно при ее создании, когда колонка добавляется:
ТЗПереоценка.НоваяКолонка("Номенклатура", "Справочник.Номенклатура",,, <вот тут нужная ширина задается>);