![]() |
![]() |
![]() |
|
v7: 1cpp ПоставщикДанных.Журнал | ☑ | ||
---|---|---|---|---|
0
botman4
11.07.17
✎
17:22
|
Пытаюсь изучить данные класса:
//#include ПоставщикДанных\Defcls.prm //#include Объекты_v8\Defcls.prm //#include ПрямыеЗапросы\Defcls.prm //#include ЭлементыФормы\Defcls.prm Создал один документ "МойДокумент", создал обычный Журнал "МойЖурнал" На форму кинул две кнопки для "Контейнеров" В модуле добавил следующее: //************************************************* Перем ПоставщикДанных; Перем ТабличноеПоле; Перем Данные; Процедура УстановитьПоставщикаДанныхЖурнал() ПоставщикДанных = СоздатьОбъект("ПоставщикДанных"); ПоставщикДанных.КонтейнерТабличногоПоля = "кнСписокТест"; ПоставщикДанных.КонтейнерКоманднойПанели = "кнКоманднаяПанель"; ПоставщикДанных.ТипЗначений = "Журнал.МойЖурнал"; ТабличноеПоле = ПоставщикДанных.ТабличноеПоле; ТабличноеПоле.СтильРамки = 1; ТабличноеПоле.СтильЗаголовков = 1; Данные = ПоставщикДанных.Данные; Данные.СоздатьКнопкиПоУмолчанию(); //Данные.РеквизитСортировки = "ДатаДокумента"; //Данные.КолонкаПиктограмм = "НомерДокумента"; Данные.РежимВыбора = 0; Данные.РежимОтладки = -1; Данные.АвтоОбновление = 1; Данные.ПериодАвтоОбновления = 10; Данные.РазрешитьОтборПоГрафам = 1; Данные.СоздатьКнопкиПоУмолчанию(); ТабличноеПоле.ВосстановитьПозициюКолонок(); ПоставщикДанных.Обновить(); КонецПроцедуры Процедура ПриОткрытии() мОбКомпонентаРаботыСФормойРасширениеФормы = СоздатьОбъект("РасширениеФормы"); мОбКомпонентаРаботыСФормойРасширениеФормы.УстановитьФорму(Форма); мАтрибутМногострочнаяЧасть = мОбКомпонентаРаботыСФормойРасширениеФормы.ПолучитьАтрибут("МногострочнаяЧасть"); мАтрибутМногострочнаяЧасть.Видимость = 0; Форма.ИспользоватьСлой("Основной",2); КонецПроцедуры Процедура ПослеОткрытия() Форма.кнКоманднаяПанель.Видимость(0); Форма.кнКоманднаяПанель.Видимость(1); КонецПроцедуры Процедура ПослеСозданияФормы() УстановитьПоставщикаДанныхЖурнал(); КонецПроцедуры Вылетает с ошибкой : ПоставщикДанных.ТипЗначений = "Журнал.МойЖурнал"; {Журнал.МойЖурнал.Форма.ФормаСписка.Модуль(10)}: ПоставщикДанных::ПриЗаписи_ТипЗначений(Строка Параметр=Журнал.МойЖурнал) : ПоставщикДанных.Журнал::ПриЗаписи_ВидЖурнала(Строка Параметр=МойЖурнал) : ПоставщикДанных.ТабличноеПоле::Обновить() : ПоставщикДанных.Журнал::УстановитьПоставщикаДанных() : no such table: Документ.МойДокумент ПоставщикДанных.УстановитьТекстЗапроса(ТекстЗапроса,"[КлючПорядка]","[ТекущийДокумент :Документ]"); {D:\База1C\ПоставщикДанныхПример\ПоставщикДанных\ПоставщикДанных.Журнал.ert(1071) } вирт().Обновить(); {D:\База1C\ПоставщикДанныхПример\ПоставщикДанных\ПоставщикДанных.ТабличноеПоле.ert(670) } ТабличноеПоле.Обновить(); {D:\База1C\ПоставщикДанныхПример\ПоставщикДанных\ПоставщикДанных.Журнал.ert(1193) } ПоставщикДанных.ВидЖурнала = Сред(ТипЗначений,8); {D:\База1C\ПоставщикДанныхПример\ПоставщикДанных\ПоставщикДанных.ert(128) } может кто подкинет код как правильно запустить Поставщика журнала ? спасибо. |
|||
1
Ёпрст
гуру
11.07.17
✎
17:25
|
(0) может того, заместо МойДокумент всё же поставишь правильный Вид документа ?
Ну там, реализация, ПоступлениеТМЦ.. |
|||
2
botman4
11.07.17
✎
18:41
|
в документе не было ни одного реквизита, только ТЧ, добавил реквизит - перестал валиться...
|
|||
3
botman4
11.07.17
✎
19:04
|
Подскажите пожалуйста со следующим вопросом.
Допустим в документе есть Реквизит "Клиент" (Справочник) я размещу на форме журнала Реквизит диалога для выбора этого клиента, как мне фильтрануть после выбора? |
|||
4
Djelf
гуру
11.07.17
✎
23:43
|
(3) Поставщики то разные бывают...
Для 1sqlite использую конструкцию вида WHERE CASE WHEN @НомерДок='*' THEN 1 ELSE Журнал.DOCNO LIKE @НомерДок END И потом ОбновитьСтроки() В этом случае запрос не надо заново устанавливать. Быстрее и удобнее. По аналогии что-то подобное может сработать и в Классе ПоставщикДанных. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |