Имя: Пароль:
1C
1С v8
отображать не записанный документ в табличном поле
0 zladenuw
 
09.05.13
14:23
как то можно ? что бы при выборе открывался документ ?
1 SherifSP
 
09.05.13
14:26
(0) Не полностью понятен вопрос
2 zladenuw
 
09.05.13
14:31
СтрРод = ДеревоДокументов.Строки.Добавить();
   СтрРод.Документ = Ссылка;
НовыйПриход = Документы.ПоступлениеТоваровУслуг.СоздатьДокумент();
//заполняем документ
Элемент = СтрРод.Строки.Добавить();
Элемент.Документ = НовыйПриход;
3 zladenuw
 
09.05.13
14:34
(2) хочу отобразить иерархию созданным на основание 1 документы другие. но документ может быть не записан. и что бы не открывать 10 форм. пользователь по клику в дереве открывает нужный. так понятней ?
4 zladenuw
 
09.05.13
14:40
думаю добавить 2 колонку. тогда тип у 1 колонки надо поставить составной. и при выборе читать 2 колонку, где храним документ. а так прокатит или не  Элемент.Значение = XMLСтрока(НовыйПриход);
Элемент.ТипЗнч = ТипЗнч(НовыйПриход);   XMLЗначение(Элемент.ТипЗнч,Элемент.Значение)
5 SherifSP
 
09.05.13
14:44
(3) Создаешь документ, если документ не записался по каким то причинам, ты его записываешь в дерево?
6 SherifSP
 
09.05.13
14:45
Можно 1 колонкой обойтись
7 zladenuw
 
09.05.13
14:47
(5) еще раз. создаю документы. они не записаны. хочу отобразить из в дереве. и при нажатии открывать форму документу нового документа. и пользователь решает. нужен он или нет
8 SherifSP
 
09.05.13
14:47
В верхнюю строку иерархии записываешь документ на основании которого доки создаются, а на нижние части записываешь доки которые попали в исключение
9 SherifSP
 
09.05.13
14:49
(7) Нельзя открыть форму не существующего в базе документа
10 zladenuw
 
09.05.13
14:50
а почему тогда

НовыйПриход = Документы.ПоступлениеТоваровУслуг.СоздатьДокумент();
НовыйПриход.ПолучитьФорму().Открыть();

открывает ? я хочу так же только через тп
11 SherifSP
 
09.05.13
14:52
(10) что такое тп?
12 zladenuw
 
09.05.13
14:54
табличном поле
13 SherifSP
 
09.05.13
14:56
Ты же писал в дереве значений
14 zladenuw
 
09.05.13
15:01
(13) ну а на форме это что ? тип у него деревозначений. сути не меняет. так не хочет
Процедура ДеревоДокументовВыбор(Элемент, ВыбраннаяСтрока, Колонка, СтандартнаяОбработка)
   // Вставить содержимое обработчика.
   //Если ТипЗнч(ВыбраннаяСтрока.Документ) = Тип("Строка")Тогда
        ОткрытьЗначение(ЗначениеИзСтрокиВнутр(XMLЗначение( Тип("Строка"), ВыбраннаяСтрока.Значение)));
   //Иначе    
   //     ОткрытьЗначение(ВыбраннаяСтрока.документ);
   //КонецЕсли;
       

КонецПроцедуры
15 drongo-god
 
09.05.13
15:24
(10) Присвой новому документу ссылку, и ложи эту ссылку в ТП, может получится. В 8-ке есть возможность присваивать ссылки незаписанным документам.

Хотя сама задача несколько странна. (0)
16 drongo-god
 
09.05.13
15:27
(4) Идея с хранением типа скорее больше подойдет.
17 drongo-god
 
09.05.13
15:29
(15) Скорее не получится. будет на выходе получаться "объект не найден".
18 zladenuw
 
09.05.13
15:35
(15) а как присвоит ?
19 drongo-god
 
09.05.13
16:10
(18)
НовыйGUID = Новый УникальныйИдентификатор();
НоваяСсылка = Документы.ПоступлениеТоваровУслуг.ПолучитьСсылку(НовыйGUID);
НовыйПриход = Документы.ПоступлениеТоваровУслуг.СоздатьДокумент()
НовыйПриход.УстановитьСсылкуНового(НоваяСсылка);

И если документ у тебя еще не записан то ты все равно уже можешь использовать ссылку НоваяСсылка в обработке.
После записи документ в любом случае будет иметь ссылку НоваяСсылка

Только все равно не делай так.
Потому что если у тебя документ не запишется то ссылка будет на документ который отсутвует в базе. И будет выглядеть как "Объект не найден".
20 zladenuw
 
09.05.13
16:16
(19) да в тп могу отобразить только тип документа дату и номер. а что бы при открытии была новая форма. так получиться ?
21 zladenuw
 
09.05.13
16:20
что бы 2 раза не заполнять документ. сейчас при открытии формы. заполняю документ и его тч.
AdBlock убивает бесплатный контент. 1Сергей