8.х При заполнение документа ошибка - обработчик события не найден

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 8"", создана пользователем alboldinov, 15 сен 2014.

  1. TopicStarter Overlay
    alboldinov
    Offline

    alboldinov Опытный в 1С

    Регистрация:
    8 сен 2014
    Сообщения:
    183
    Симпатии:
    0
    Баллы:
    26
    Управление торговлей, редакция 11.1 (11.1.2.28)
  2. nbIpKuH_BaH9I
    Offline

    nbIpKuH_BaH9I Модераторы Команда форума Модератор

    Регистрация:
    16 сен 2009
    Сообщения:
    6.980
    Симпатии:
    397
    Баллы:
    104
    Круто. Вы думаете этой информации достаточно?
  3. TopicStarter Overlay
    alboldinov
    Offline

    alboldinov Опытный в 1С

    Регистрация:
    8 сен 2014
    Сообщения:
    183
    Симпатии:
    0
    Баллы:
    26
    При попытке заполнить документ ввод остатков в толстом клиенте. выдается ошибка обработчик события не найден
  4. XXL
    Offline

    XXL Опытный в 1С Команда форума

    Регистрация:
    22 янв 2007
    Сообщения:
    1.159
    Симпатии:
    19
    Баллы:
    29
    Костя, ты не прав. Нужно воспользоваться сверхспособностью всех программистов и выдать решение проблемы:D
    --- Объединение сообщений, 15 сен 2014 ---
    Проверяйте в конфигураторе, есть ли обработчик.
  5. TopicStarter Overlay
    alboldinov
    Offline

    alboldinov Опытный в 1С

    Регистрация:
    8 сен 2014
    Сообщения:
    183
    Симпатии:
    0
    Баллы:
    26
    Подскажите как отключить стандартный обработчик на событие обработка заполнения
  6. XXL
    Offline

    XXL Опытный в 1С Команда форума

    Регистрация:
    22 янв 2007
    Сообщения:
    1.159
    Симпатии:
    19
    Баллы:
    29
    СтандартнаяОбработка = Ложь - примерно так.
  7. LordMaverick
    Offline

    LordMaverick Профессионал в 1С

    Регистрация:
    17 мар 2014
    Сообщения:
    3.433
    Симпатии:
    373
    Баллы:
    104
    а в тонком?
  8. TopicStarter Overlay
    alboldinov
    Offline

    alboldinov Опытный в 1С

    Регистрация:
    8 сен 2014
    Сообщения:
    183
    Симпатии:
    0
    Баллы:
    26
    в тонком не работает. Подскажите вообще как назначить обработчик событий? Почему может возникать такая ошибка? В конфигураторе обработчики назначены. Если отключить выдает на ошибку на другие события.
  9. LordMaverick
    Offline

    LordMaverick Профессионал в 1С

    Регистрация:
    17 мар 2014
    Сообщения:
    3.433
    Симпатии:
    373
    Баллы:
    104
    хм, вот специально полез
    в 11.1.2.10 в тонком создал документ ввода собственных товаров
    создался, провёлся
  10. TopicStarter Overlay
    alboldinov
    Offline

    alboldinov Опытный в 1С

    Регистрация:
    8 сен 2014
    Сообщения:
    183
    Симпатии:
    0
    Баллы:
    26
    Документ программно создается и заполняется, при записи выдает ошибки
    --- Объединение сообщений, 15 сен 2014 ---
    Код:
    &НаСервере
    Функция ЗаполнитьДок(ВидДока,Данные,НазвТЧ="",Табл=Неопределено,i)
        Док1 = Новый ("ДокументМенеджер."+ВидДока);
        Док = Док1.СоздатьДокумент();
        Знчн = Неопределено;
        Для каждого Реквизит из Данные Цикл
            НазвРекв = Реквизит.Ключ;
            Знчн = Реквизит.Значение;
            Попытка
                Док[НазвРекв] = Знчн;
            Исключение
                Сообщить("Ключ " + НазвРекв + " не найден");
            КонецПопытки;
        КонецЦикла;
        Док.Ответственный = ПараметрыСеанса.ТекущийПользователь;
        Если НазвТЧ = "" Тогда
            Возврат(Док);
        ИначеЕсли Табл = Неопределено Тогда
            Возврат(Док);
        КонецЕсли;
      
        ТабДок = Док[НазвТЧ];
        ТабДок.Загрузить(Табл);
         Док.Записать(РежимЗаписиДокумента.Запись);
        Возврат(Док);
    Последнее редактирование модератором: 15 сен 2014
  11. LordMaverick
    Offline

    LordMaverick Профессионал в 1С

    Регистрация:
    17 мар 2014
    Сообщения:
    3.433
    Симпатии:
    373
    Баллы:
    104
    а уверены что всё правильно заполнили в документе?

    PS
    кодом оформляйте плиз
  12. TopicStarter Overlay
    alboldinov
    Offline

    alboldinov Опытный в 1С

    Регистрация:
    8 сен 2014
    Сообщения:
    183
    Симпатии:
    0
    Баллы:
    26
    Совсем не уверен. Но по идее должен был писать ошибку что не заполнен реквизит или несовпадение типов и т.д. А выдает что отсутствует обработчик
  13. Tiger86
    Offline

    Tiger86 Модераторы Команда форума Модератор

    Регистрация:
    24 мар 2011
    Сообщения:
    6.407
    Симпатии:
    108
    Баллы:
    104
    обработка заполнения и ваша процедура лично для меня связи не имеют... приложите скрин, где подцеплена процедура
  14. TopicStarter Overlay
    alboldinov
    Offline

    alboldinov Опытный в 1С

    Регистрация:
    8 сен 2014
    Сообщения:
    183
    Симпатии:
    0
    Баллы:
    26
    Код:
    &НаКлиенте
    Функция СинхронизироватьОстатки()
        Перем ТабТов,ТовФрм,ТабПрих;
        i=1;
        ТаблСклд = Новый("ТаблицаЗначений");
        ТаблСклд.Колонки.Добавить("Склад");
        ТаблСклд.Колонки.Добавить("СклИД");
        ТаблСклд.Колонки.Добавить("Колво");
        ТабСкл = Новый("ТаблицаЗначений");
        ТабСкл.Колонки.Добавить("Товар");
        ТабСкл.Колонки.Добавить("Кодтв");
        ТабСкл.Колонки.Добавить("Колво");
        ТабСкл.Колонки.Добавить("Сумма");
        ТабСкл.Колонки.Добавить("Склад");
        ТабСкл.Колонки.Добавить("СтНДС");
        ТабСкл.Колонки.Добавить("Закупочная");
        ТабТов = Новый("ТаблицаЗначений");
        ТабТов.Колонки.Добавить("Товар");
        ТабТов.Колонки.Добавить("Кодтв");
        ТабТов.Колонки.Добавить("Колво");
        ТовФрм = Новый("ТаблицаЗначений");
        ТовФрм.Колонки.Добавить("Товар");
        ТовФрм.Колонки.Добавить("Кодтв");
        ТовФрм.Колонки.Добавить("Колво");
        ТовФрм.Колонки.Добавить("Сумма");
        ТовФрм.Колонки.Добавить("Склад");
        ТовФрм.Колонки.Добавить("СтНДС");
        ТовФрм.Колонки.Добавить("Фирма");
        ТабБрк = Новый("ТаблицаЗначений");
        ТабБрк.Колонки.Добавить("Товар");
        ТабБрк.Колонки.Добавить("Кодтв");
        ТабБрк.Колонки.Добавить("Колво");
        ТабБрк.Колонки.Добавить("Сумма");
        ТабБрк.Колонки.Добавить("Склад");
        ТабБрк.Колонки.Добавить("СтНДС");
        ТабБрк.Колонки.Добавить("Фирма");
        ТабПрих = Новый("ТаблицаЗначений");
        ТабПрих.Колонки.Добавить("Номер");
        ТабПрих.Колонки.Добавить("Фирма");
        ТабПрих.Колонки.Добавить("Колво");
        ТабПрих.Колонки.Добавить("КодТВ");
        Рез = СинхронизироватьОстатки1(ТабТов);
        Усл = Новый Структура;
        ЗаполнитьСклады(ТаблСклд);
        Если НЕ Рез = 0 Тогда
            Сообщить("Ошибка - " + Рез);
            Возврат(Рез);
        КонецЕсли;
        Первая = ТабТов[0];
        ТовКод = "'" + Первая.Кодтв + "'";
        Счетчик = 100;
        Нум = 1;
        Для каждого СтрТов из ТабТов Цикл
            Нум = Нум + 1;
            Если СтрТов = Первая Тогда
                Продолжить;
            ИначеЕсли Нум > Счетчик Тогда
                Счетчик = Счетчик + 100;
                ТабПрих.Очистить();
                ВытащитьПриходы(ТовКод,ТабПрих,ТабТов);
                ТабПрих.Сортировать("Номер Возр");
                ТабСкл.Очистить();
                РаспределениеПоСкладам(ТовКод,СклИД,ТабСкл,ТаблСклд);
               
                Для каждого СтрПрих из ТабПрих Цикл
                    Пришло = СтрПрих.Колво;
                    КодТВ  = СтрПрих.КодТВ;
                    Пока Пришло > 0 Цикл
                        СтрСкл = ТабСкл.Найти(СокрЛП(КодТВ),"КодТВ");
                        Если СтрСкл = Неопределено Тогда
                            // Не нашли - брак или излишки
                            НетСкл = ТабБрк.Добавить();
                            Тов = ПолучитьПоКоду("Номенклатура",СокрЛП(КодТВ));
                            НетСкл.Товар = Тов;
                            НетСкл.КодТВ = СокрЛП(КодТВ);
                            НетСкл.Фирма = СтрПрих.Фирма;
                            НетСкл.Колво = Пришло;
                            Пришло = 0;
                        Иначе
                            СтрФрм = ТовФрм.Добавить();
                            Тов = ПолучитьПоКоду("Номенклатура",СокрЛП(КодТВ));
                            СтрФрм.Товар = Тов;
                            СтрФрм.КодТВ = СокрЛП(КодТВ);
                            СтрФрм.Склад = СтрСкл.Склад;
                            СтрФрм.Фирма = СтрПрих.Фирма;
                            СтрФрм.СтНДС = СтрСкл.СтНДС;
                            Если СтрСкл.Колво > 0 Тогда
                                ЗакЦена = СтрСкл.Сумма / СтрСкл.Колво
                            Иначе
                                ЗакЦена = 0;
                            КонецЕсли;
                            Если Пришло < СтрСкл.Колво Тогда
                                СтрСкл.Колво = СтрСкл.Колво - Пришло;
                                СтрФрм.Колво = Пришло;
                                СтрФрм.Сумма = ЗакЦена * Пришло;
                                Пришло = 0;
                            Иначе
                                СтрФрм.Колво = СтрСкл.Колво;
                                Пришло = Пришло - СтрСкл.Колво;
                                СтрФрм.Сумма = ЗакЦена * СтрСкл.Колво;
                                ТабСкл.Удалить(СтрСкл);
                            КонецЕсли;
                        КонецЕсли;
                    КонецЦикла;
                КонецЦикла;
                ТовКод = "'" + СтрТов.Кодтв + "'";
            Иначе
                ТовКод = ТовКод + ",'" + СтрТов.Кодтв + "'";
            КонецЕсли;
        КонецЦикла;
        ТовФрм.Сортировать("Склад,Фирма");
        Данные = Новый Структура;
        ТабТов = ТовФрм.Скопировать();
        ТабТов.Свернуть("Склад,Фирма",);
        Для каждого СтрТов из ТабТов Цикл
            Склад = СтрТов.Склад;
            Фирма = СтрТов.Фирма;
            Усл.Очистить();
            Усл.Вставить("Склад",Склад);
            Усл.Вставить("Фирма",Фирма);
            ТабПрих = ТовФрм.Скопировать(Усл);
            ТабПрих.Колонки.Удалить(ТабПрих.Колонки.Склад);
            ТабПрих.Колонки.Удалить(ТабПрих.Колонки.Фирма);
            Если Фирма = ПолучитьПоНаименованию("Организации","Обляшевский") Тогда
                Налог = ПредопределенноеЗначение("Перечисление.ТипыНалогообложенияНДС.ПродажаОблагаетсяЕНВД");
            ИначеЕсли Фирма = ПолучитьПоНаименованию("Организации","Парта") Тогда
                Налог = ПредопределенноеЗначение("Перечисление.ТипыНалогообложенияНДС.ПродажаОблагаетсяНДС");
            ИначеЕсли Фирма = ПолучитьПоНаименованию("Организации","ОфисМакс") Тогда
                Налог = ПредопределенноеЗначение("Перечисление.ТипыНалогообложенияНДС.ПродажаНеОблагаетсяНДС");
            Иначе
                Фирма = ПолучитьПоНаименованию("Организации","Обляшевский");
                Налог = ПредопределенноеЗначение("Перечисление.ТипыНалогообложенияНДС.ПродажаОблагаетсяЕНВД");
            КонецЕсли;
            Данные.Очистить();
            Данные.Вставить("Склад",Склад);
            Данные.Вставить("Организация",Фирма);
            Данные.Вставить("Дата",НаДату);
            Данные.Вставить("ТипОперации",ПредопределенноеЗначение("Перечисление.ТипыОперацийВводаОстатков.ОстаткиСобственныхТоваров"));
            Данные.Вставить("ЦенаВключаетНДС",Истина);
            Данные.Вставить("НалогообложениеНДС",Налог);
            //ТабПрих.Колонки.Добавить("СтавкаНДС");
            ТабПрих.Колонки.Добавить("СуммаБезНДС");
            ТабПрих.Колонки.Добавить("СуммаРегл");
            ТабПрих.Колонки.Добавить("СуммаНДС");
            ТабПрих.Колонки.Добавить("Цена");
            Для каждого СтрТов1 из ТабПрих Цикл
                СтНДС = СтрТов1.СтНДС;
                Сумма = СтрТов1.Сумма;
                Цена = Сумма / СтрТов1.Колво;
                СтрТов1.Цена = Цена;
                Если СтНДС = ПредопределенноеЗначение("Перечисление.СтавкиНДС.НДС18") Тогда
                    СуммаБНДС = Сумма / 1.18;
                    СуммаНДС = Сумма - СуммаБНДС;
                ИначеЕсли СтНДС = ПредопределенноеЗначение("Перечисление.СтавкиНДС.НДС10") Тогда
                    СуммаБНДС = Сумма / 1.1;
                    СуммаНДС = Сумма - СуммаБНДС;
                Иначе
                    СуммаБНДС = Сумма;
                    СуммаНДС = 0;
                КонецЕсли;
                СтрТов1.СуммаБезНДС = СуммаБНДС;
                СтрТов1.СуммаРегл = СуммаБНДС;
                СтрТов1.СуммаНДС = СуммаНДС;
            КонецЦикла;
            ТабПрих.Колонки.Удалить(ТабПрих.Колонки.КодТВ);
            ТабПрих.Колонки.СтНДС.Имя = "СтавкаНДС";
            ТабПрих.Колонки.Колво.Имя = "Количество";
            ТабПрих.Колонки.Добавить("КоличествоУпаковок");
            ТабПрих.ЗагрузитьКолонку(ТабПрих.ВыгрузитьКолонку("Количество"),"КоличествоУпаковок");
            ТабПрих.Колонки.Товар.Имя = "Номенклатура";
            Док = ЗаполнитьДок("ВводОстатков",Данные,"Товары",ТабПрих,i);
            i=i+1;
        КонецЦикла;
        Возврат(0);
    КонецФункции
    
    --- Объединение сообщений, 15 сен 2014 ---
    5 строка снизу
  15. Tiger86
    Offline

    Tiger86 Модераторы Команда форума Модератор

    Регистрация:
    24 мар 2011
    Сообщения:
    6.407
    Симпатии:
    108
    Баллы:
    104
    что это такое?
  16. alexburn
    Offline

    alexburn Модераторы Команда форума Модератор

    Регистрация:
    5 янв 2009
    Сообщения:
    14.750
    Симпатии:
    509
    Баллы:
    204
    Товарищ, отладчик вам в помощь.
  17. TopicStarter Overlay
    alboldinov
    Offline

    alboldinov Опытный в 1С

    Регистрация:
    8 сен 2014
    Сообщения:
    183
    Симпатии:
    0
    Баллы:
    26
    Док = ЗаполнитьДок("ВводОстатков",Данные,"Товары",ТабПрих,i);
  18. nbIpKuH_BaH9I
    Offline

    nbIpKuH_BaH9I Модераторы Команда форума Модератор

    Регистрация:
    16 сен 2009
    Сообщения:
    6.980
    Симпатии:
    397
    Баллы:
    104
    Отладчиком Ваш вопрос решиться за минуту. Не умеете, учитесь.
  19. Tiger86
    Offline

    Tiger86 Модераторы Команда форума Модератор

    Регистрация:
    24 мар 2011
    Сообщения:
    6.407
    Симпатии:
    108
    Баллы:
    104
    очень пригодится...

    Автор - вы толкьо начинаете программировать в 1С или как? без обид, просто от уровня текущих знаний во многом зависит насколько подробный и в каком направлении вам могут дать ответ
  20. TopicStarter Overlay
    alboldinov
    Offline

    alboldinov Опытный в 1С

    Регистрация:
    8 сен 2014
    Сообщения:
    183
    Симпатии:
    0
    Баллы:
    26
    Это не я писал, разбираюсь в чужом коде. Именно в 1с немного написал.
    --- Объединение сообщений, 15 сен 2014 ---
    А ответ. В каком направлеиии искать, то что отладчиком по всей конфе лазить, как то не очень вдохновляет

Поделиться этой страницей