#0
by Reclaim
Здравствуйте! Работаю в конфигурации ЗУП 2.5, создаю внешнюю обработку для загрузки данных. Вот часть кода, в которой выдается ошибка. ---------------------------------------------------------------------------------------------------------- Программа ругается и выдает такую ошибку: {Форма.Форма.Форма}: Ошибка при вызове метода контекста (Записать) НовыйЭЛ.Записать; по причине: Значение поля "Владелец" не заполнено или заполнено неверно. Подскажите как избавиться от этой ошибки.
#4
by Reclaim
Непонятки еще заключаются в том, что при запуске обработки, эта ошибка вылезает каждый раз по разному. Т.е. в первом запуске ошибка вылезает после обработки 5 строк, при втором запуске после 11 строк, при третьем после 30 строк...
#10
by Reclaim
Все равно застопорился... Суть проблемы еще заключается в том, что контрагент по ТЗ создается после вот этой проверки. Вот само ТЗ: 3.2 Если значение в файле в колонке "J"(БИК) заполнено, поиск по коду в справочнике Банки. Т.е. код справочника = БИК из файла. 3.2.1 Если Банк не найден, создать элемент справочника "Банки", код = "БИК" (колонка J), наименование = "БАНК ПОЛУЧАТЕЛЬ..." (колонка F), ГОРОД = "ГОРОД..." (колонка G), КоррСчет = "КОР. СЧЕТ" (колонка K). Записать новый элемент справочника "Банки". 3.2.2 Следом, создать элемент справочника "БанковскиеСчета", реквизит "Банк" заполнить элементом справочника из п. 3.2.1, записать созданный элемент справочника ""БанковскиеСчета" Контрагенты.Ссылка ИЗ Справочник.Контрагенты КАК Контрагенты ГДЕ Контрагенты.ОсновнойБанковскийСчет.Банк.Код = &Код" есть ли в системе контрагент, у которого основной банковский счет принадлежит банку с кодом (БИК-ом) банка из п.3.2 Если контрагент не найден, создать новый элемент справочника "Контрагенты", наименование = наименование элемента справочника Банки из п.3.2, Основной банковский счет = БанковскийСчет из п.3.2.2. ИНН заполнить как ИНН из файла (колонка H) КПП заполнить как КПП из файла (колонка I) Записть элемент справочника "Контрагенты". 3.2.4 - Если значение в файле в колонке "J"(БИК) НЕ заполнено, предполагается что банка нет. Ищем контрагнета в справочнике "Контрагенты" по наименвоанию, колонка "F" Если контрагент не найден, создаем контрагента аналогично п.3.2.3, Но реквизит "Основной банковский счет" не заполняется, никаких запросов проверки тоже нет, только алгоритм создания. Наименование = значение колонки "F" Вот код, который я прописываю (не судите строго, всего неделю как изучаю программирование 1с)------------------------------------------------------------------------------------ Подскажите, где я ошибаюсь в написании кода
#12
by Reclaim
Т.е. при выборе владельца, для элемента справочника "БанковскиеСчета" я не могу выбрать нужного контрагента, т.к. у меня нет нужных контрагентов в справочнике, а создаю я их только после того, как записываю элемент справочника "БанковскиеСчета"
#14
by Reclaim
Проблема в том, либо это ТЗ неправильно составлена, либо я что-то не понимаю (а учитывая уровень моих знаний в 1с, то я больше склонен к этой версии)
#16
by МимохожийОднако
Для еще не сохраненного объекта можно получить ссылку нового, а потом использовать для других объектов.
#18
by Reclaim
Сейчас пытаюсь такое провернуть, но есть пунк, который я прописал маленько "нашару", т.к. не знаю как это сделать правильно. Контрагенты.Ссылка ИЗ Справочник.Контрагенты КАК Контрагенты ГДЕ Контрагенты.ОсновнойБанковскийСчет.Банк.Код = &Код" есть ли в системе контрагент, у которого основной банковский счет принадлежит банку с кодом (БИК-ом) банка из п.3.2 Если контрагент не найден, создать новый элемент справочника "Контрагенты", наименование = наименование элемента справочника Банки из п.3.2, Основной банковский счет = БанковскийСчет из п.3.2.2. ИНН заполнить как ИНН из файла (колонка H) КПП заполнить как КПП из файла (колонка I) Записть элемент справочника "Контрагенты". Я это прописываю так, но пятой точкой чувствую что делаю это неправильно --------------------------------
#20
by МимохожийОднако
Включи отладчик и пошагово посмотри в своём коде. Тогда твои ощущения перейдут в практическое исправление ошибок.
#21
by Reclaim
Дело в том, что отладчик просто перескакивает весь запрос (что по идее ненормально). Поэтому и возникает такое ощущение, что код у меня неправильный. P.S. Я настолько начинающий, что данные отладчика мне мало что говорят.
#23
by aleks_default
А то что он сейчас будет заморачиваться с ПолучитьСсылкуНового и в итоге может получить "Объект не найден"(если будет делать не в транзакции) и дальнейшие проблемы, вместо того чтобы правильно составить ТЗ и создавать сначала владельца, а потом банковский счет.
#24
by МимохожийОднако
Для отладки текста запроса есть Консоль запросов. Если остановиться на результате запроса, то его можно выгрузить в ТЗ и посмотреть. Например, Результат.Выгрузить
#29
by cw014
ТЗ составлен максимально корректно. Это ТС читать не умеет. Читаем: проверить запросом ВЫБРАТЬ Контрагенты.Ссылка ИЗ Справочник.Контрагенты КАК Контрагенты ГДЕ Контрагенты.ОсновнойБанковскийСчет.Банк.Код = &Код" есть ли в системе контрагент, у которого основной банковский счет принадлежит банку с кодом (БИК-ом) банка из п.3.2 пока все понятно, проверили, НИЧЕГО НЕ СОЗДАЕМ ПОКА ЕЩЕ (поскольку нет такого в ТЗ). Далее: есть ли в системе контрагент, у которого основной банковский счет принадлежит банку с кодом (БИК-ом) банка из п.3.2 !!!Если контрагент не найден, создать новый элемент справочника "Контрагенты",!!! наименование = наименование элемента справочника Банки из п.3.2, Если контрагент не найден, создать контрагента (Контрагента, Карл!!!) А потом уже банковский счет
#30
by Reclaim
Проблема в том, либо это ТЗ неправильно составлена, либо я что-то не понимаю (а учитывая уровень моих знаний в 1с, то я больше склонен к этой версии) Писал такое некоторое количество сообщений назад, так что замечание правильное
#31
by cw014
Ну вот теперь голову в руки, руки с одного места на правильное пересади и делай в соответствии с ТЗ
#32
by Reclaim
Руки в правильном месте. Знаний в голове пока нету. От этого и куча вопросом и непоняток
#36
by Reclaim
Нет, не собеседование. Уже рабочее задание. На несложных заказах учусь программировать. Стараюсь сам разбираться, но далеко не всегда получается. P.S. Работать взяли абсолютно без знания 1с, так что сейчас все это наверстываю
#38
by Reclaim
Да, уже на своем недельном опыте начинаю это понимать. Внимательность и грамотное обдумывание, ну и конечно знания, без них никуда.
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям
Похожие вопросы 1С
- Значение ячейки табличного поля не отображает записанное значение
- Как получить значение реквизита Поля флажок, если свойства Значение у него нет.
- Ошибка SQL Fld11475 ... значение не может принимать значение Null
- Значение поля "Владелец" не заполнено или заполнено неверно
- При изменении одного поля ввода, изменить значение другого поля ввода
В этой группе 1С
- Как различить ИдентификаторРасшифровкиКомпоновкиДанных от разных СКД?
- Получение списка отборов
- Проблема с RDP - фискальный регистратор
- Отчет на СКД на УФ вывод параметра типа булево на форму в виде галочки
- Нет кнопки "Принять" после обновления конфигурации
- Не работает бекап SQL.
- Розница Базовая отсутствие исходного текста модуля
- Можно ли в 1С отследить активность пользователя в той или иной форме
- Удаленный сервер MySql + драйвер Connector/ODBC 5.2
- Проблемы с обновлением УСЦ Рарус
- Ввод начальных остатков в УТ 11.2.2.100
- Создание не типовой синхронизации между двумя конфигурациями
- Возвратные отходы и Количество списываемое из производства, превышает остаток
- Как узнать FSRAR_ID без JaCarta?
- Ошибка при вызове конструктора (WSОпределения)
- Как же отменить автофиксацию в скд?
- Отправка отчета в xls по почте регламентным заданием
- Есть ли в ЗУП2 настройка по округлении сумм аванса по ЗП в большую сторону.
- Дт 76.05 Кт 91.01 не попадают в строку 2340 в отчете о финансовых результатах
- Разделить НДС вычетов с авансов