Все технические форумы на одном сайте Удобный поиск информации с популярных форумов в одном месте
Вопрос: Проблема при написании своей обработки.

Здравствуйте. Пишу обработку под УТ 1.3. Задача состоит в подгрузке накладной поставщика в Документ поступление Товаров и Услуг. Возникла проблема, если помните, в ФормеДокумента в верхнем левом углу есть кнопка "Цены и валюта", при нажатии на которую открывается одноименное окно, так вот после того как документ сформирован обработкой жму на эту кнопку, дабы подставить вручную необходимые значения и натыкаюсь на такую проблему:

Т.е. получается, что "0 руб. = 1 руб."
При проведении документа выскакивает ошибка:
"Не заполнено значение реквизита "Кратность взаиморасчетов"!"
При этом следует учесть, что когда я вручную создаю новый документ, то в нем все нормально "1 руб. = 1 руб."
Как быть, кто знает?
Ответ:
А подскажите, в какой обработке нужно писать "Док.КратностьВзаиморасчетов = 1". В групповой обработке справочников и документов?
Вопрос: Своя обработка по расписанию. Сообщать об ошибках.

Всем привет! Конфа типовая последняя. Сделал внешнюю обработку, запускаю по регламенту. Все хорошо, отображается в списке регл. заданий с временем последнего выполнения.

Но хотелось бы следующее: чтобы при ошибке выполнения (например при вызове исключения) в списке регл. заданий статус менялся на "Выполнено с ошибками". Сейчас же при любом результате выполнения пишет статус "Задание выполнено". и узнать о проблемах можно только через ЖР.
Ответ: () нет
Вопрос: Можно ли из C# (COM соединение) вызывать внешнюю обработку?

Добрый день!
Вот решил освоить 1С, а точнее взаимодействие с 1С извне, из приложений на C#.
С подключением к 1С разобрался, как выбирать данные, добавлять их, вызывать имеющиеся в конфигурации функции тоже.

Уже хотел было писать свою обработку и потом работать с нею из шарпа, как выясняется, что то что я приобрел "подешевле" - Розница Базовая - не позволяет ни вносить в нее изменения, ни добавлять свой код. Вроде как остается только писать внешние обработки, это можно.

А как потом сделать ее (внешнюю обработку) доступной для вызыва из приложения на шарпе? Это вообще возможно?

Спасибо! И прошу простить за наверно глупый вопрос...
Ответ: Не помогло ((( падает на

dynamic extProcess = com1Cserv.ВнешниеОбработки.Создать(@"D:\1C BASE\OtherExtCodes\SetRegisterRecord.epf", false);

с ошибкой "ссылка на объект не указывает на экземпляр объекта"...

Сама обработка нормально открывается в конфигураторе, подключена в 1С. Пробовал подключать другие, в том числе писать обработку с нуля = результат одинаковый...
Вопрос: ЗУП проблема с внешней обработкой табличной части документа и RLS

Какой то замкнутый круг.
Документ Зарплата к выплате организаций. Конкретный банк. не дает выгружать в TXT своей обработкой. Другой банк - любое количество людей. Этот - 1-2 выгрузит, других нет. Поставила выбрать разрешенные - выгрузил всех людей и их различные лицевые счета. еще, когда обработку открваю через Файл - есть кнопка с Инициализировать(ВыбДок,"Зарплата",); - на нее и выпадает
{ВнешняяОбработка.ВнешняяОбработка2.МодульОбъекта()}: Ошибка при вызове метода контекста (Выполнить)
        Результат = Запрос.Выполнить();
по причине:
Ошибка выполнения запроса
по причине:
У пользователя недостаточно прав на исполнение операции над базой данных.
Ответ: Так Вам сама ошибка кричит, "У пользователя нет прав над операциями с ИБ". Ищите здесь.
Вопрос: Создал внешнюю обработку, а добавить не могу...

Всем привет! Сделал внешнюю обработку к УправлениюТорговлей 11.2, через Файл-Открыть все работает, попытался вставить ее через функционал "Дополнительные обработки", программа выдала ошибку "Невозможно подключить дополнительную обработку из файла. Возможно, она не подходит для этой версии программы. Метод объекта не обнаружен (СведенияОВнешнейОбработке)". Погуглил тему, нашел кусок кода который нужно вставить в обработку. Вставил, загружаю - ошибка та же самая... Что не так делаю?
Код к моей обработке:
Код:
Функция СведенияОВнешнейОбработке() Экспорт

    ПараметрыРегистрации = Новый Структура;
    МассивНазначений = Новый Массив;
    МассивНазначений.Добавить("Документ.РеализацияТоваровУслуг");

    ПараметрыРегистрации.Вставить("Вид", "ЗаполнениеОбъекта");
    ПараметрыРегистрации.Вставить("Назначение", МассивНазначений);
    ПараметрыРегистрации.Вставить("Наименование", "Возврат с комиссии для продажи");
    ПараметрыРегистрации.Вставить("Версия", "1.14");
    ПараметрыРегистрации.Вставить("БезопасныйРежим", Истина);
    ПараметрыРегистрации.Вставить("Информация",
        "Заполнение ТЧ документа РеализацияТоваровУслуг из товара, отданного на комиссию этому контрагенту." + Символы.ПС
        + "Автоматическое открытие формы документа ВозвратТовараОтКлиента и его заполнение." + Символы.ПС
         + "Версия 1.1  -- возможность работать с общими упаковками." + Символы.ПС
         + "Версия 1.11 -- группировка товара по ном. и хар. в дин. списке." + Символы.ПС
         + "Версия 1.12 -- Документ ""Возврат товара"" не сохраняется, но открывается и заполняется его форма" + Символы.ПС
        + "(workaround для ошибки установки привилегированного режима при записи документа). " + Символы.ПС
         + "Версия 1.13 -- Упаковку ищем теперь по единице измерения ""упак""" + Символы.ПС
        +"Версия 1.14 - Дата у документа ""Возврат товара"" устанавливается на одну секунду меньше даты документа реализации"+Символы.ПС
    );
   
    ТаблицаКоманд = ПолучитьТаблицуКоманд();

    ДобавитьКоманду(ТаблицаКоманд,
        "Возврат товара с комиссии",
        "0",
        "ОткрытиеФормы",
        Истина
    );

    ПараметрыРегистрации.Вставить("Команды", ТаблицаКоманд);

    Возврат ПараметрыРегистрации;
КонецФункции

Функция ПолучитьТаблицуКоманд()
  Команды = Новый ТаблицаЗначений;
  Команды.Колонки.Добавить("Представление", Новый ОписаниеТипов("Строка"));
  Команды.Колонки.Добавить("Идентификатор", Новый ОписаниеТипов("Строка"));
  Команды.Колонки.Добавить("Использование", Новый ОписаниеТипов("Строка"));
  Команды.Колонки.Добавить("ПоказыватьОповещение", Новый ОписаниеТипов("Булево"));
  Команды.Колонки.Добавить("Модификатор", Новый ОписаниеТипов("Строка"));
  Возврат Команды;
КонецФункции

Процедура ДобавитьКоманду(ТаблицаКоманд, Представление, Идентификатор, Использование, ПоказыватьОповещение = Ложь, Модификатор = "")
  НоваяКоманда = ТаблицаКоманд.Добавить();
  НоваяКоманда.Представление = Представление;
  НоваяКоманда.Идентификатор = Идентификатор;
  НоваяКоманда.Использование = Использование;
  НоваяКоманда.ПоказыватьОповещение = ПоказыватьОповещение;
  НоваяКоманда.Модификатор = Модификатор;
КонецПроцедуры
Ответ:
Нашел материал, изучил - получилось построить все как надо. Переписал обработку заново, не создавал в ней ни форм, ни реквизитов. Но! СсылкаНаОбъект - реально работает )))) Я думаю что в этой функции это как-то сработало
Код:
Функция ПечатьФормы(СсылкаНаОбъект,ОбъектыПечати)
ТабДок = новый ТабличныйДокумент;
  Макет = ПолучитьМакет("МойМакетище");
  ОбластьЗаголовок  = Макет.ПолучитьОбласть("Заголовок");
  ОбластьПоставщик = Макет.ПолучитьОбласть("Поставщик");
....
   ОбластьЗаголовок.Параметры.ТекстЗаголовка = "Товарный чек №"+СсылкаНаОбъект.Номер+" от "+СсылкаНаОбъект.Дата;
   ТабДок.Вывести(ОбластьЗаголовок);
....
Для Каждого ТекущаяСтрока из СсылкаНаОбъект.Товары Цикл
  ОбластьТовар.Параметры.НомерСтроки = ТекущаяСтрока.НомерСтроки;
  ....
 ТабДок.Вывести(ОбластьТовар);

КонецЦикла;
....
   ТабДок.АвтоМасштаб=истина; // уместить на одну страницу
   ТабДок.ТолькоПросмотр=истина;
   ТабДок.ОриентацияСтраницы=ОриентацияСтраницы.Портрет;
   ТабДок.ОтображатьСетку=Ложь;

возврат ТабДок;
КонецФункции
Вопрос: не работает обработка в управляемом приложении...хотя в режиме обычного приложения все ОК

Добрый день форумчане!
Простите за ламерский вопрос. 1С 8.3. конфига "Управление торговлей". Добавил свою обработку небольшую. В режиме обычного приложения все ок. Но нужно чтобы и в управляемом приложении тоже работало. Объясните тупорезу в чем он не прав.
Ответ: На платформе 8.3.6 в самописку на УФ встраивали внешнюю обработку на ОФ.
В настройках конфигурации выставили использование обоих видов форм, вроде работает.
Вопрос: Ошибка в типовой обработке

Приветствую, ребята. Ставим БП 3.0.57.7
Запускаю типовую обработку - ОбновлениеВспомогательныхДанных - вылетает ошибка: метод объекта не обнаружен (ОбновитьОбщиеДанные)
WTF ?
--- Объединение сообщений, 14 дек 2016 ---
Так же пробовал запустить с ключом /С ЗапуститьОбновлениеИнформационнойБазы, и тишина
Ответ:
Странно, помню в БСП встречал код, который запускал обновление, если версия конфы изменилась. Как раз один из вариантов обновить вспомогательные данные методом изменения версии конфы.
Ну да ладно, главное получилось что хотел
--- Объединение сообщений, 14 дек 2016 ---
Это номер профильной конфы, которая сделана на базе типовой
Вопрос: Внешняя обработка не запускается по расписанию

база в файловом варианте
конфигурация типовая
есть внешняя обработка, подключена
безопасный режим выключен
пользователь, под которым запускаются рег. задания с выключенной галкой "защита от опасных действий"
если в мониторе рег. заданий найду свою обработку и запущу по кнопке "выполнить сейчас" - все отрабатывает
если буду ждать автоматического запуска по расписанию - ошибка, текст ошибки -

Предупреждение безопасности

Открывается "Внешняя обработка".

Рекомендуется обращать внимание на источник, из которого был получен данный файл. Если с источником нет договоренности о разработке дополнительных модулей, или есть сомнения в содержимом файла, то его не рекомендуется открывать, поскольку это может нанести вред компьютеру и данным.

Разрешить открывать данный файл?

как победить?
Ответ: да не за что)
Вопрос: Розница 2.2 запуск доп.обработки по расписанию

Приветствую. Розница 2.2, подключена дополнительная обработка и задано выполнение по расписанию. Смотрю выполнение через - Поддержка и обслуживание - регламентные задания, мое задание то выполняется то перестает выполняться по расписанию, некоторое время работает четко по расписанию и сам по себе перестает запускаться. Дело не в самой обработке потому что ошибку не выдает а просто не стартует задание. Потом само по себе начинает норм работать. Что может влиять на старт регламентного задания?
Пробовал выставить разное расписание это ничего не дало
Ответ:
Проблема решилась с переустановкой платформы на всех компах
Вопрос: Linux, Postgres, Розница 2.0.5.1 Украина РИБ по магазину - ошибка блокировки...

Может кто-то подскажет? Настраиваю обмен по магазину. Все нормально работает, руками получается делать обмен. 4-5 сообщений пересылаются. Потом настраиваю сценарий по расписанию и начинаются качели... Первая ошибка:

"Ошибка записи данных в файл сообщения обмена: {Обработка.КонвертацияОбъектовРаспределенныхИнформационныхБаз.МодульОбъекта()}: Error calling context method (ЗаписатьИзменения): Lock conflict during the transaction:
Maximum idle time for lock access has been exceeded due to the wait for the session"

Все последующие:

"Ошибка записи данных в файл сообщения обмена: {Обработка.КонвертацияОбъектовРаспределенныхИнформационныхБаз.МодульОбъекта()}: Ошибка при вызове метода контекста (ЗаписатьИзменения): Конфликт блокировок при выполнении транзакции:
Превышено максимальное время ожидания предоставления блокировки"

Ни переиндексация, ни закрытие сеансов не помогает. Блокировок в 1С не стоит. Помогает только удаление базы и создание снова.
Как я понял блокировка проходит в СУБД? Использую Postgress на Linux, 1 база, 4Гб оперативки. Если я прав, вопрос - Неправильно настроен Postgress или нехватка памяти? Или может вообще проблема не в этом?
Ответ: () Так то свежий - это 8.3.10.2375