|   |   | 
| 
 | Ошибка при создании документа ПКО через COM-соединение | ☑ | ||
|---|---|---|---|---|
| 0
    
        DmAvd 28.10.11✎ 12:21 | 
        Создаю через COM-соединение документ Приходный кассовый ордер в Бухгалтерии 2.0.
  Вот так работает: ДокБухОб.Дата = ДокУпр.Дата; ДокБухОб.ВидОперации = БазаБух.Перечисления.ВидыОперацийПКО.ОплатаПокупателя; ДокБухОб.Записать(БазаБух.РежимЗаписиДокумента.Запись); И вот так работает: ДокБухОб.Дата = ДокУпр.Дата; ДокБухОб.Организация = ОрганизацияБух; ДокБухОб.Записать(БазаБух.РежимЗаписиДокумента.Запись); А вот так выдается ошибка: ДокБухОб.Дата = ДокУпр.Дата; ДокБухОб.ВидОперации = БазаБух.Перечисления.ВидыОперацийПКО.ОплатаПокупателя; ДокБухОб.Организация = ОрганизацияБух; ДокБухОб.Записать(БазаБух.РежимЗаписиДокумента.Запись); Ошибка при вызове метода контекста (Записать): Произошла исключительная ситуация: Ошибка при выполнении обработчика - 'ПередЗаписью' Вообще не понимаю, почему.... | |||
| 1
    
        vmv 28.10.11✎ 12:22 | 
        увидело ссылочный тип и давай плеваться     | |||
| 2
    
        DmAvd 28.10.11✎ 12:25 | 
        (1) не понял...     | |||
| 3
    
        DmAvd 28.10.11✎ 12:25 | 
        по отдельности же работает, а если вместе Организацию и ВидОперации заполняю, то не записывается...     | |||
| 4
    
        DmAvd 28.10.11✎ 12:28 | 
        причем смотрю в модуле объекта ПКО событие ПередЗаписью() там вообще Отказ=Истина нету! как же может исключение в этом событии генерироваться?     | |||
| 5
    
        GenV 28.10.11✎ 12:31 | 
        (4) Возможно идет вызов клиентский процедур недоступных в режиме СОМ-соединения (например, модуль для внешнего соединения недоступный).
  Добавь: ДокБухОб.ОбменДанными.Загрузка = Истина; перед записью | |||
| 6
    
        DmAvd 28.10.11✎ 12:36 | 
        не помогло...     | |||
| 7
    
        hhhh 28.10.11✎ 12:38 | 
        (6) там вообще-то процедур ПередЗаписью() 10-15 штук. Ты их все просмотрел?     | |||
| 8
    
        DmAvd 28.10.11✎ 12:44 | 
        (7) ругается только на строчку 
  ДокБухОб.Записать(БазаБух.РежимЗаписиДокумента.Запись); | |||
| 9
    
        izekia 28.10.11✎ 12:48 | 
        (8) код процедуры перед записью покажи?     | |||
| 10
    
        izekia 28.10.11✎ 12:49 | 
        (4) русским языком написано, что произошла "исключительная ситуация", то есть ошибка, а не отказ был выставлен в истину     | |||
| 11
    
        Лефмихалыч 28.10.11✎ 12:51 | 
        (0) ты текст ошибки не читал, по этому и не понимаешь. ТАм всё по-русски написано относительно причин происходящего     | |||
| 12
    
        Михаил Козлов 28.10.11✎ 12:55 | 
        Запись документа поставьте в ПОПЫТКА ИСКЛЮЧЕНИЕ и в исключении выведите ОписаниеОшибки(). Может обламываться не в Перед, а в ПриЗаписи или в обработчиках событий.     | |||
| 13
    
        DmAvd 28.10.11✎ 12:56 | 
        (9) Типовая процедура, модуль объекта ПКО
  Процедура ПередЗаписью(Отказ, РежимЗаписи, РежимПроведения) УчетнаяПолитикаНеЗадана = Ложь; мУчетнаяПолитика = ОбщегоНазначения.ПолучитьПараметрыУчетнойПолитики(Дата, УчетнаяПолитикаНеЗадана, Организация); мУчетВПродажныхЦенах = Ложь; Если мУчетнаяПолитика.Количество() > 0 Тогда Если (мУчетнаяПолитика.СпособОценкиТоваровВРознице = Перечисления.СпособыОценкиТоваровВРознице.ПоПродажнойСтоимости) Тогда мУчетВПродажныхЦенах = Истина; КонецЕсли; КонецЕсли; НалоговыйУчетУСН.ЗаполнитьНастройкуКУДиР(ЭтотОбъект, , (мУчетВПродажныхЦенах И ВыручкаСНТТ)); Если ОбменДанными.Загрузка Тогда Возврат; КонецЕсли; Если РасшифровкаПлатежа.Количество() = 0 Тогда НоваяСтрока = РасшифровкаПлатежа.Добавить(); КонецЕсли; ДоговорКонтрагента = РасшифровкаПлатежа[0].ДоговорКонтрагента; КонецПроцедуры | |||
| 14
    
        DmAvd 28.10.11✎ 12:57 | 
        щас еще по подпискам на событие пробегусь     | |||
| 15
    
        DmAvd 28.10.11✎ 13:01 | 
        подскажите, а можно ли отлаживать код выполняемый в режиме внешнего соединения?
  Я ставлю две точки останова - одну в текущей базе на строке ДокБухОб.Записать(БазаБух.РежимЗаписиДокумента.Запись); А другую - в базе, к которой подключаюсь в событии ПередЗаписью(). Срабатывает только точка останова в текущей базе. А интересно было бы поглядеть что в com-базе происходит... | |||
| 16
    
        DmAvd 28.10.11✎ 13:13 | 
        Все, нашел - не заполнялась сумма)))
  всем спасибо! | |||
| 17
    
        izekia 28.10.11✎ 13:13 | 
        ураааа     | |||
| 18
    
        DmAvd 28.10.11✎ 13:14 | 
        ошибка детская конечно, но бывает)))     | |||
| 19
    
        DmAvd 28.10.11✎ 13:15 | 
        странно что по отдельности записывался, а если Организация + ВидОперации - то нет     | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |