Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
01.08.2013, 19:26
|
|||
---|---|---|---|
Различное поведение при копировании документа по F9 и через OLE |
|||
#18+
Здравствуйте! 1с 8.2, Бухгалтерия 3.0 В работающей программе делаю копию (F9) документа, копия создаётся и записывается. В иной программе, действуя через OLE, код: Код: pascal 1. 2. 3. 4. 5. 6.
в момент записи выскакивает ошибка: Класс: EOleException Информация: Error running processor - 'ПередЗаписью' {Документ.РеализацияТоваровУслуг.МодульОбъекта(401)}: Object field is not writable (ДополнительныеСвойства) если код немного изменить, и перед записью попросить показать форму не записанного документа: Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.
то видно, что копия есть, номер новый, 0000-000005. Форма правда не живая, и не стандартная для этого документа. В чём может быть причина такого различного поведения, какие поля надо подправить, что-бы документ всё-таки записался? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
01.08.2013, 21:38
|
|||
---|---|---|---|
Различное поведение при копировании документа по F9 и через OLE |
|||
#18+
zeon11В чём может быть причина такого различного поведения, какие поля надо подправить, что-бы документ всё-таки записался? в правах ... |
|||
:
Нравится:
Не нравится:
|
|||
|
02.08.2013, 06:32
|
|||
---|---|---|---|
Различное поведение при копировании документа по F9 и через OLE |
|||
#18+
Shuhardzeon11В чём может быть причина такого различного поведения, какие поля надо подправить, что-бы документ всё-таки записался? в правах Вхожу через OLE как "Администратор". У него мало прав? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
02.08.2013, 07:17
|
|||
---|---|---|---|
Различное поведение при копировании документа по F9 и через OLE |
|||
#18+
zeon11, а что за код у вас в "{Документ.РеализацияТоваровУслуг.МодульОбъекта(401)}:"? ДополнительныеСвойства-свойство действительно только для чтения, это структура. Можно только вставлять туда значения,да читать их. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
02.08.2013, 07:53
|
|||
---|---|---|---|
Различное поведение при копировании документа по F9 и через OLE |
|||
#18+
zeon11Вхожу через OLE как "Администратор" это не роль, это пользователь ... |
|||
:
Нравится:
Не нравится:
|
|||
|
02.08.2013, 16:02
|
|||
---|---|---|---|
Различное поведение при копировании документа по F9 и через OLE |
|||
#18+
Shuhardzeon11Вхожу через OLE как "Администратор" это не роль, это пользователь Вот код создания объекта: Код: pascal 1. 2. 3. 4. 5. 6. 7. 8.
Я вхожу через OLE с теми-же параметрами (пользователь-пароль), что и в "предприятие" по-белому. Где тут роль? Если-бы явно определялась роль при входе через OLE, то и при входе в "предприятие" по-белому она должна определяться явно. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
02.08.2013, 17:30
|
|||
---|---|---|---|
|
|||
Различное поведение при копировании документа по F9 и через OLE |
|||
#18+
заполняется форма чем-то при открытии после f9 в gui, а программно - нет... ole кстати это принципиально? есть более "легкий" com ... |
|||
:
Нравится:
Не нравится:
|
|||
|
02.08.2013, 17:31
|
|||
---|---|---|---|
|
|||
Различное поведение при копировании документа по F9 и через OLE |
|||
#18+
БП 3.0 под рукой нет - скопируйте тест ПередЗаписью из Бп сюда если он не сильно длинный - так возможно будет более понятно в чем проблема. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
02.08.2013, 17:37
|
|||
---|---|---|---|
Различное поведение при копировании документа по F9 и через OLE |
|||
#18+
pailzeon11, а что за код у вас в "{Документ.РеализацияТоваровУслуг.МодульОбъекта(401)}:"? ДополнительныеСвойства-свойство действительно только для чтения, это структура. Можно только вставлять туда значения,да читать их. Сделал так: Код: pascal 1. 2. 3. 4. 5.
i показывает 0, на всякий случай очистил все доп. свойства, однако ошибка осталась. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
02.08.2013, 17:41
|
|||
---|---|---|---|
Различное поведение при копировании документа по F9 и через OLE |
|||
#18+
Последний выдох ГПЖзаполняется форма чем-то при открытии после f9 в gui, а программно - нет... ole кстати это принципиально? есть более "легкий" com К сожалению, у меня есть только опыт в OLE в 7.7. В других технологиях 1с, как Вы уже поняли, я не силён :-( ... |
|||
:
Нравится:
Не нравится:
|
|||
|
02.08.2013, 17:58
|
|||
---|---|---|---|
Различное поведение при копировании документа по F9 и через OLE |
|||
#18+
Последний выдох ГПЖБП 3.0 под рукой нет - скопируйте тест ПередЗаписью из Бп сюда если он не сильно длинный - так возможно будет более понятно в чем проблема. Увы, я не знаю как это сделать ... Да и "ПередЗаписью" найти не могу. Вот что только есть: (на рисунке) ... |
|||
:
Нравится:
Не нравится:
|
|||
|
02.08.2013, 18:43
|
|||
---|---|---|---|
Различное поведение при копировании документа по F9 и через OLE |
|||
#18+
zeon11, Вам открытым текстом платформа про строку в МОДУЛЕ ОБЪЕКТА сказала. Заглядывать в поисках в модуль формы? странно..... ... |
|||
:
Нравится:
Не нравится:
|
|||
|
02.08.2013, 20:09
|
|||
---|---|---|---|
Различное поведение при копировании документа по F9 и через OLE |
|||
#18+
pailzeon11, Вам открытым текстом платформа про строку в МОДУЛЕ ОБЪЕКТА сказала. Заглядывать в поисках в модуль формы? странно..... Спасибо, еле нашёл. Теперь буду знать, где искать: Процедура ПередЗаписью(Отказ, РежимЗаписи, РежимПроведения) Если ОбменДанными.Загрузка Тогда Возврат; КонецЕсли; ОбщегоНазначенияБПВызовСервера.ЗафиксироватьВремяНачалаКлючевойОперации( ДополнительныеСвойства , Справочники.КлючевыеОперации.ПроведениеРеализацияТоваровИУслуг); // Посчитать суммы документа и записать ее в соответствующий реквизит шапки для показа в журналах СуммаДокумента = УчетНДСПереопределяемый.ПолучитьСуммуДокументаСНДС(ЭтотОбъект, "Товары") + УчетНДСПереопределяемый.ПолучитьСуммуДокументаСНДС(ЭтотОбъект, "Услуги") + УчетНДСПереопределяемый.ПолучитьСуммуДокументаСНДС(ЭтотОбъект, "АгентскиеУслуги"); // В этом случае почистим в табличных частях поля СпособСписанияОстаткаТоваров, НомерГТД и СтранаПроисхождения. Если ВидОперации = Перечисления.ВидыОперацийРеализацияТоваров.Оборудование Тогда Для каждого СтрокаТаблицы Из ЭтотОбъект.Товары Цикл Если ЗначениеЗаполнено(СтрокаТаблицы.НомерГТД)Тогда СтрокаТаблицы.НомерГТД = Неопределено; КонецЕсли; Если ЗначениеЗаполнено(СтрокаТаблицы.СтранаПроисхождения)Тогда СтрокаТаблицы.СтранаПроисхождения = Неопределено; КонецЕсли; КонецЦикла; КонецЕсли; Если ВидОперации = Перечисления.ВидыОперацийРеализацияТоваров.ОтгрузкаБезПереходаПраваСобственности Тогда Услуги.Очистить(); АгентскиеУслуги.Очистить(); НачислятьНДСПоОтгрузке = УчетнаяПолитика.НачислятьНДСПоОтгрузке(Организация, Дата); Если НачислятьНДСПоОтгрузке Тогда УчетНДСПереопределяемый.СинхронизацияПометкиНаУдалениеУСчетаФактуры(ЭтотОбъект, "СчетФактураВыданный"); Иначе УчетНДСПереопределяемый.УстановкаПометкиНаУдалениеУСчетаФактуры(ЭтотОбъект, "СчетФактураВыданный", Истина); КонецЕсли; Иначе УчетНДСПереопределяемый.СинхронизацияПометкиНаУдалениеУСчетаФактуры(ЭтотОбъект, "СчетФактураВыданный"); КонецЕсли; Если НЕ ПолучитьФункциональнуюОпцию("ИспользоватьВозвратнуюТару") И ВозвратнаяТара.Количество() > 0 Тогда ВозвратнаяТара.Очистить(); КонецЕсли; // Если передаем товар на комиссию, то услуг не может быть ЭтоКомиссия = ОбщегоНазначения.ПолучитьЗначениеРеквизита( ДоговорКонтрагента, "ВидДоговора") = Перечисления.ВидыДоговоровКонтрагентов.СКомиссионером; ЭтоОтгрузка = ВидОперации = Перечисления.ВидыОперацийРеализацияТоваров.ОтгрузкаБезПереходаПраваСобственности; Если ЭтоКомиссия ИЛИ ЭтоОтгрузка Тогда Услуги.Очистить(); КонецЕсли; КонецПроцедуры ... |
|||
:
Нравится:
Не нравится:
|
|||
|
02.08.2013, 20:26
|
|||
---|---|---|---|
Различное поведение при копировании документа по F9 и через OLE |
|||
#18+
Выгрузил документ в XML, никакие ДополнительныеСвойства в нём не обнаружены ... |
|||
:
Нравится:
Не нравится:
|
|||
|
02.08.2013, 20:34
|
|||
---|---|---|---|
Различное поведение при копировании документа по F9 и через OLE |
|||
#18+
zeon11, тут, похоже, вот какая засада (на давно которую нарывался при освоении УФ, с другими, правда, проявлениями): по разному трактуются платформой свойства параметров при вызове серверных методов в режимах управляемого и обычного приложения. Трудно сказать, из-за чего - но вроде как для параметров, которые только-для чтения следовало бы явно указывать ЗНАЧ (т.е. передача по значению, а не как обычно по ссылке). В режиме УФ отсутствие ЗНАЧ для ДополнительныеСвойства прокатывает, а для обычного режима, к которому восходит OLE - нет. БП3 написана БЕЗ учета совместимости с обычным режимом. Попробуйте не V82.Application использовать, а V82.ComObject - не проявлялись там такие проблемы никогда. Да и вообще - забыть OLE как страшный сон. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
02.08.2013, 20:38
|
|||
---|---|---|---|
Различное поведение при копировании документа по F9 и через OLE |
|||
#18+
zeon11Выгрузил документ в XML, никакие ДополнительныеСвойства в нём не обнаружены Это runTime свойство - никакой выгрузке не подлежит. Но оно есть,и активно используется в конфигурации ... |
|||
:
Нравится:
Не нравится:
|
|||
|
02.08.2013, 21:34
|
|||
---|---|---|---|
Различное поведение при копировании документа по F9 и через OLE |
|||
#18+
pail, Спасибо, что уделяете мне внимание. Завтра попробую. У нас сейчас пол-первого ночи. Голова не варит. А на ногах с пол-шестого. Ещё раз спасибо. А что вместо ОЛЕ посоветуете? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
02.08.2013, 22:04
|
|||
---|---|---|---|
Различное поведение при копировании документа по F9 и через OLE |
|||
#18+
zeon11, Код: vbnet 1. 2.
Далее - как с OLE, можно вызывать любые объекты, свойства и методы через переменную V. Кроме пользовательского интерфейса. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
|
start [/forum/topic.php?fid=28&mobile=1&tid=1519729]: |
0ms |
get settings: |
8ms |
get forum list: |
12ms |
check forum access: |
11ms |
check topic access: |
11ms |
track hit: |
32ms |
get topic data: |
12ms |
get forum data: |
2ms |
get page messages: |
51ms |
get tp. blocked users: |
2ms |
others: | 300ms |
total: | 441ms |
0 / 0 |