Платформа: 8.3.16.1876 Режим БД: клиент-серверный Конфигурация. Название: Управление производственным предприятием для Украины, редакция 1.3 (1.3.82.1) Конфигурация. Основной режим запуска: Обычное приложение Конфигурация. Вариант встроенного языка: Русский Конфигурация. Режим управления блокировкой данных: Управляемый Конфигурация. Режим совместимости: Версия8_3_10 Конфигурация. Режим использования синхронных вызовов: Использовать Конфигурация. Версия БСП: 102 Инструменты разработчика. Версия: Портативный 7.21.1p Инструменты разработчика. Инструмент: Прочее Инструменты разработчика. Перехват клавиатурного ввода: Да Инструменты разработчика. Объекты на сервере: Нет Инструменты разработчика. Серверный модуль БСП: Нет Клиент. Приложение: Обычное приложение 32б Клиент. Проверка модальных вызовов: Нет Клиент. Язык интерфейса конфигурации: ru Клиент. Язык интерфейса системы: ru_UA Клиент. Отладка разрешена: Да Клиент. Постоянный кэш метаданных: Да Клиент. ОС: Майкрософт Windows 10 Корпоративная LTSC 64-разрядная Русский Клиент. ОС от имени администратора: Да Клиент. ОС выполнение BAT: Да Клиент. ОС Текущая кодовая страница: 866 Клиент-Сервер. Пинг: 0мс
Для РеализацииТоваровИУслуг (как пример) в обработке РедакторОбъектаБД не получается установить реквизит Сделка (конкретно ЗаказПокупателя с нужным номером). Так как при попытке выбрать появляется выбор типов, но после выбора типа ЗаказПокупателя (галочкой) список открывается пустым, а ввод номера приводит к ошибке "такой объект не обнаружен". Т.е. заполнить этот реквизит не получается.
Единственный способ, который помог, это просто вбивание в поле полного представления объекта "Заказ покупателя ОПТО0004836 от 01.04.2024 13:06:25".
Параллельно возник вопрос, а почему невозможно в этой обработке вводить объект редактирования через полное представление без предварительного выбора типа "Заказ покупателя"?
Просто вставить "Заказ покупателя ОПТО0004836 от 01.04.2024 13:06:25" (скопировав со структуры документов) и сразу редактировать?
К сожалению, не смог повторить ошибку, не догадался, что это нетипичный случай и не запомнил документ, в котором не заполнялось.
Но тогда несколько раз закрывал и открывал обработку, при попытке изменить Сделку - открывалось окно, где было 4 типа, ставил галочку напротив ЗаказПокупателя, потом выбор из списка (через 3 точки), но список выпадал пустой. Ввод номера "ОПТО0000439" приводил к ошибке "Нет такого", и только ввод полной строки представления "Заказ покупателя ОПТО0000439 от 01.04.2024 16:36:04" присваивал это поле.
Если столкнусь ещё раз сниму видео.
Сообщение отредактировал GetNight - Воскресенье, 14.04.2024, 15:42
Возможно, я столкнулся с этой ошибкой в другом похожем месте...
Сейчас проверил Подбор и Обработку объектов, отобрал несколько реализаций и попытался там поставить сделку. Какая-то ошибка там явно есть в алгоритме. Видео приложил.
Видео - очень хорошо, но с текстом ошибки было бы лучше.
Я его прямо в видео скопировал. А вставить забыл...
Цитатаtormozit ()
Исправлено в 7.23
Запустил посмотреть... Что-то всё равно работает не так, как ожидается... Пытаюсь расписать процесс с точки зрения обычного пользователя.
1. вырезаю заказ поставщика у существующего документа и пытаюсь поставить его обратно - но увы, не позволяет! постоянно выскакивает сообщение "В таблице строк для обработки поле "ДоговорКонтрагента", влияющее на изменяемое поле "Сделка", имеет более одного значения при включенных связях параметров выбора." которое вообще ничего мне не говорит... Т.е. оно вообще не воспринимается никак, а если ещё точнее, воспринимается, как ошибка самой обработки. И я не могу выбрать заказ поставщику из списка, так как обработка блокирует эту возможность. И что значит "более одного значения"? Это же обычная ситуация и именно в 100 случаях из 100 заказ поставщику точно не единственный в базе. В связях параметров выбора реквизита Сделка три отбора: Контрагент, Организация и ДоговорКонтрагента. И все три параметра совпадают с реквизитами этой сделки. Тогда почему выдаёт ошибку?..
Сама формулировка проблемы (текст) скорее добавляет ещё больше непонимания, что происходит. Вместо этого текста был бы полезнее, скажем, вопрос "Для выбора значения нужно отключить Связи параметров выбора, ОК/Отмена".
2. обнаруживаем вверху галочку, которая похожа на строку с ошибкой "связи параметров выбора" и убираем её теперь заказ поставщику можно установить, но опять таки, нужны танцы с бубном, ведь по номеру всё равно отказывается принимать
3. попытка вырезать договор и снова его вставить - обнуляет поле. При этом с выпадающего списка договор устанавливается, при выборе из списка устанавливается, а при вводе его названия - нет (при том, что название уникально). Если же выбрать договор и в нём же добавить и удалить пробел (модифицировать поле) - значение так же отказывается приниматься.
4. Ввод по представлению в принципе работает, за это спасибо. Но когда без галочки. Но что делать, если его нет в буфере обмена?
5. Попытка вставить контрагента так же не удалась... (всё в прикреплённых видео)
П.С. версию использую последнюю на текущий момент 7.23.1
Пытался несколько раз записать видео с проблемами, но каждый раз вылазили какие-то новые ньюансы, плюс ограничение 6 мегабайт на файл мешает думать Скинул 4 варианта (чтобы ничего не пропустить) - в архиве (неожиданно для себя узнал, что видео сжимается в 2 с половиной раза)
Трудно в это поверить. Думаю все же слово "таблица" должно быть понятно. Далее "таблица строк для обработки" тоже должно быть понятно, ведь это название одной из главных страниц инструмента. Так ты понял где выполняется проверка. Имена полей (колонок) тебе тоже, почти уверен, все знакомы.
Связи параметров выбора - тебе знакомы как механизм? Если нет, то можешь их отключить, но я не рекомендую этого делать пока ты не поймешь зачем программа так ругается. Проверки выполняются сразу для всех строк для обработки. У тебя их там почти 30 тысяч. Они обеспечивают повышенную страховку пользователя от внесения некорректных изменений в данные, т.е. потенциальные нарушения связей параметров выбора в каждой обрабатываемой строке. Поэтому этот флажок по умолчанию включен.
Мне показалось, или вы не посмотрели мои видео?.. Там же видно, что я не смог обратно установить даже те значения, которые там в документе были изначально. Установлены изначально с учетом всех связей. И на скрине показал, что все три связи (организация + контрагент + договор) совпадают. Я НЕ СМОГ установить НИ ОДИН реквизит. Ни контрагента. Ни сделку. Ни договор. Дальше уже не пробовал.
Вот допустим, я хочу выбрать сделку. У меня стоит контрагент, организация и договор. Разве соответствовать этой комбинации должен лишь один единственный документ? А если документ не единственный - то я не смогу установить ни один из них? А смысл этого инструмента тогда в чём?..
Мне знаком этот механизм. Но я же даже на скрине показал, что все условия соблюдаются...
Цитатаtormozit ()
обеспечивают повышенную страховку пользователя от внесения некорректных изменений в данные
Так я же некорректных изменений и не делал...
Вот ещё момент. Почему нельзя в изменить/добавить строку использовать поле компоновки, а только фиксированные значения? Не нашёл, когда было нужно сменить Организация на ДоговорКонтрагента.Организация, так как документы заполнили какой-то обработкой неправильно. Пришлось идти в произвольный механизм... Для всех таких вопросов нужно создавать отдельную тему?
Цитатаtormozit ()
которое вообще ничего мне не говоритТрудно в это поверить
Я имел в виду психологический аспект. Любая информация, даже очень полезная, не должна быть избыточной, так как мозг её отказывается воспринимать. Яркий пример - если основной текст на рекламном щите читается дольше 5 секунд - потенциальный клиент игнорирует её. Из своей практики утверждаю, что если ошибка, которая выскакивает на рабочем месте продавца длиннее 1-2 строк - он перестаёт её ДАЖЕ ЧИТАТЬ, машинально подтверждая или отменяя любое окошко с сообщением. Даже работники офиса, работая с документами, начинают игнорировать сопроводительный текст с замечаниями... Поэтому мы учитываем эту особенность и жертвуем детализацией в угоду мгновенному пониманию.
Плюс, я когда то до дыр зачитывал " Ководство" Артемия Лебедева, где просто масса наиценнейшей информации по дизайну... Благодаря этим знаниям я много раз помогал профессиональным дизайнерам, которые никак не могли принять решение. Вы в программировании являетесь для меня таким же непререкаемым авторитетом, как и Артемий в дизайне, к тому же нахожу много общего в подходе к программированию, хоть вы, безусловно, имеете гораздо больше опыта и знаний.
В том виде, в котором ошибка выскакивает, "В таблице строк для обработки поле "ДоговорКонтрагента", влияющее на изменяемое поле "Сделка", имеет более одного значения при включенных связях параметров выбора." - она несёт не нужную информацию. Ведь пользователя интересует вовсе не то, почему не работает, а что нужно сделать, чтобы работало. Я так и не понял. Ведь условия соблюдены. Почему у контрагента и организации НЕ МОЖЕТ БЫТЬ БОЛЕЕ одного договора? Почему не может быть более 1 документа у контранта+организации+договора? Ежедневные поставки, оказывается, вне этих условий?
Без обид, я не критикую, я всё равно нахожу обходные способы сделать то, что мне нужно. Но естественно, хотелось бы чтобы инструмент был с дружественным и интуитивно понятным интерфейсом, а он в отдельных местах ну очень сильно не такой, из-за чего приходится пользоваться дополнительно другими отдельными обработками... хотя по функционалу он на много голов выше.
Скажу честно - очень часто натыкаюсь на ошибки при работе ИР, но очень сложно в разгар работы доходчиво зафиксировать их и корректно по всем канонам оформить на форуме... А после работы уже какие-то ньюансы не получается вспомнить. Да и семья, круглосуточная работа, дети, усталость сильно влияют.
Сообщение отредактировал GetNight - Четверг, 18.04.2024, 22:48
не посмотрели мои видео? ... на скрине показал, что все условия соблюдаются
На этих видео не анализируется таблица строк для обработки. Я выше писал, что она является основным элементом в этой проверке. Чтобы легче было понять начни с таблицы размером 1 строка. Затем добавь туда еще строку и проверяй поведение проверки. Как только она сработает, ты увидишь добавление какой строки привело к ее срабатыванию и потому будет легче разобраться. Проверки выполняются сразу для всех строк для обработки, которые ты пометил для обработки.
Если будешь записывать еще видео на эту тему, то показывай всю таблицу строк для обработки и сделай ее как можно меньше. Иначе они не могут обосновать некорректное поведение. Пока оно выглядит как возможно корректное, включая и случай когда любое значение нарушает проверку.
ЦитатаGetNight ()
что нужно сделать, чтобы работало
Согласен, что так было бы удобнее. Но не всегда это можно лаконично сформулировать. Как минимум нужно сообщить что программа отказывается делать и почему. А уж направить пользователя - это уже повышенный уровень удобства.
По поводу длинных сообщений. Все таки этот продукт ориентирован на программистов. Поэтому подробные сообщения здесь скорее являются плюсом чем недостатком. Вопрос их понятности - отдельный. Его можно обсуждать, когда я увижу что мне удалось донести до тебя суть выполняемой проверки.
Еще очень плохо что ты опять в теме про один инструмент обсуждаешь другой причем еще и уже совсем в другом контексте. Просьба создать отдельную заявку, т.к. изначальная просьба этой заявки вроде бы выполнена в актуальной версии (7.23.2).
Хотел написать, но обнаружил что массовые проблемы ввода уже исправлены и работают в 7.24 Описанные мною проблемы частично пересеклись с этой ошибкой и уже не проявляются. Попробую поработать в новой версии и пересмотреть проблемы с учётом рекомендаций.
Цитатаtormozit ()
Проверки выполняются сразу для всех строк для обработки, которые ты пометил для обработки
После вашего комментария понял, как он работает. Возможно в списке оказался документ с невыбранным договором и это уже могло повлиять.