Имя: Пароль:
1C
1C 7.7
v7: Помогите с выбором документа
,
0 Glypa9 Defka
 
18.09.19
09:57
Приветствую всех,помогите пожалуйста.Нужно сделать так.Когда отчёт сформировал таблицу можно было открыть документ который он нашёл.
Вот код
  Процедура ПриОткрытии()
    ВыбНачПериода=НачГода(ТекущаяДата());    
    ВыбКонПериода=КонГода(ТекущаяДата());
                                        
КонецПроцедуры
//*******************************************
//Конструкции <<...>> необходимо заменить на реальные логические условия и значения переменных
Процедура Сформировать()  
    
    
    Таб = СоздатьОбъект("Таблица");
    Таб.ИсходнаяТаблица("Сформировать");
    Таб.ВывестиСекцию("Шапка");
    Таб.Опции(0,0,Таб.ВысотаТаблицы(),0);  
    
    Док=СоздатьОбъект("Документ");  
    Док.ВыбратьДокументы(ВыбНачПериода,ВыбКонПериода);
    Пока Док.ПолучитьДокумент()=1 Цикл
        
        Если ((Док.Вид()="ВыпускРулоннойПродукции") или (Док.Вид()= "ДвижениеМПЗ") или (Док.Вид()="ТребованиеНакладная") или (Док.Вид()="РеализацияПродукции")) Тогда  // или Док.Вид()="ТребованиеНакладная" или Док.Вид()="РеализацияПродукции" или Док.Вид()= "ДвижениеМПЗ") Тогда
        
        ТекДок=Док.ТекущийДокумент();
        ТекДок.ВыбратьСтроки();
            Пока ТекДок.ПолучитьСтроку()=1 Цикл  
                Если (ТекДок.Вид()="ВыпускРулоннойПродукции") или  (Док.Вид()= "ДвижениеМПЗ") или (Док.Вид()="ТребованиеНакладная") Тогда
                    Если ТекДок.НомерРулона=НомерИщем Тогда
                        
                        Если  (Док.Вид()= "ДвижениеМПЗ") Тогда
                            Наим= ТекДок.МПЗ;
                        Иначе
                            Наим= ТекДок.Продукция;
                        КонецЕсли;
                        Нашли=(глПредставлениеДокумента(ТекДок));  
                        Если (Док.Вид()="ТребованиеНакладная") Тогда
                            Кол=ТекДок.Отпущено;
                        Иначе
                              Кол= ТекДок.Количество;
                          КонецЕсли;
                        Площ= ТекДок.Площадь;  
        Таб.ВывестиСекцию("Строка_1");
                    КонецЕсли;
                ИначеЕсли  (ТекДок.Вид()="РеализацияПродукции")  Тогда  
                    Если ТекДок.Номер=НомерИщем Тогда
                        
                        Нашли=(глПредставлениеДокумента(ТекДок));
                        Наим= ТекДок.Товар;
                        Кол= ТекДок.Количество;
                        Площ= ТекДок.Количество2;
        Таб.ВывестиСекцию("Строка_1");
                    КонецЕсли;                     
                КонецЕсли;
            КонецЦикла;
            
        КонецЕсли;
    КонецЦикла;
    
    Таб.ВывестиСекцию("Подвал");
    Таб.ТолькоПросмотр(1);
    Таб.Показать("Сформировать","");
КонецПроцедуры
1 Kigo_Kigo
 
18.09.19
10:08
ОткрытьФорму(ТекДок.ТекущийДокумент())
2 Glypa9 Defka
 
18.09.19
10:10
А можно открыть в таблице? через расшифровку
3 Glypa9 Defka
 
18.09.19
10:14
Хм,когда нажимаю "сформировать" то он сразу открывает документ где есть этот номер,а можно сделать это при нажатии на документ в таблице?ибо документов может быть 3 или 4
4 Cthulhu
 
18.09.19
10:16
(2): да
5 Креатив
 
18.09.19
10:17
(3)В расшифровке ячейки напиши ТекДок.ТекущийДокумент()
6 Kigo_Kigo
 
18.09.19
10:18
ТекРасшифровка = ТекДок.ТекущийДокумент();
В ячейке расшимфровка
ТекРасшифровка#
7 Креатив
 
18.09.19
10:22
(5)+ это в свойствах ячейки.
8 Glypa9 Defka
 
18.09.19
10:26
ТекРасшифровка = ТекДок.ТекущийДокумент(); это в модуле отчета.?
А это ТекРасшифровка# в свойста ячейки в таблице.?
Прошу прощения за непонятки)
9 Kigo_Kigo
 
18.09.19
10:30
(8) Все верно
10 Glypa9 Defka
 
18.09.19
10:32
Не получается открыть,нажимаю(крутится колёсико)и ничего не происходит
11 Kigo_Kigo
 
18.09.19
10:35
В двух местах надо вставить перед "Таб.ВывестиСекцию("Строка_1");"
ТекРасшифровка = ТекДок.ТекущийДокумент();
Таб.ВывестиСекцию("Строка_1");
12 Glypa9 Defka
 
18.09.19
10:40
Получилось.Спасибо вам огромное:3
Пользователь не знает, чего он хочет, пока не увидит то, что он получил. Эдвард Йодан