Перейти к содержимому

Эти данные невозможно выбрать так как они были ранее удалены 1с

  • автор:

Эти данные невозможно выбрать так как они были ранее удалены 1с

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

после включения фильтра надо ещё нажать кнопку «обновить».

Спасибо за информацию, ошибка зарегистрирована.

Просьба для оперативной обработки сообщать об ошибках в службу поддержки по почте v8@1c.ru

А у меня в выпадающем списке кошельков (при оформлении операции) показывается кошелёк, которого уже давно нет (удалён) и в десктопной и в мобильной версии.

Именно в выпадающем списке быстрого поиска. Или наверное правильнее сказать — списке последних использованных. В справочнике нет данного элемента конечно.

При этом, если элемент (кошелёк) выбрать — то показывает сообщение:

«Эти данные невозможно выбрать, так как они были ранее удалены».

А как почистить этот список, чтобы не маячил удалённых кошелёк?

Аналогичная проблема — в выпадающем списке быстрого выбора (последние использованные) фигурируют позиции, которые уже удалены из справочника. И при клике на эти элементы выдается аналогичное сообщение: "Эти данные невозможно выбрать, так как они были ранее удалены".

Появилось ли решение по очистке этого списка? Тоже маячат уже давно удаленные объекты и естесственно мешают быстрому выбору.

Заметки по 1С:Предприятие 8.2, 8.3

Большинство хороших программистов делают свою работу не потому, что ожидают оплаты или признания, а потому что получают удовольствие от программирования (Linus Torvalds).

Страницы

  • Главная
  • Полезности
  • Мои сертификаты

вторник, 21 января 2014 г.

Данные были изменены или удалены другим пользователем (тонкий клиент)

Если при попытке записать элемент справочника или документ появляется ошибка «Данные были изменены или удалены другим пользователем», то это значит, что данные, которые отображаются на форме и данные, которые записаны в базе отличаются.

Возможно, их изменил другой пользователь или мы программно их изменили, но форму не обновили. Решить эту проблему можно, используя метод управляемой формы Прочитать(). Этот метод обновляет объект управляемой формы.

&НаКлиенте
Процедура ОбработкаОповещения ( ИмяСобытия , Параметр , Источник )

Если ИмяСобытия = «УправлениеКартамиYandex_ВыбраныКоординаты» Тогда
Если Не ЗначениеЗаполнено ( Объект . Ссылка ) Тогда
Возврат;
КонецЕсли;
ЭтаФорма . Прочитать ();
ЗаполнитьКоординаты ( Параметр );
ЭтаФорма . Прочитать ();
КонецЕсли;

Процедура ЗаполнитьКоординаты ( Параметр )

МассивСтрок = РаботаСоСтроками . РазложитьСтрокуВМассив ( Параметр , «;» );
Если МассивСтрок . Количество ()> 0 Тогда
текОбъект = Объект . Ссылка . ПолучитьОбъект ();
текОбъект . Долгота = СокрЛП ( МассивСтрок [ 0 ]);
текОбъект . Широта = СокрЛП ( МассивСтрок [ 1 ]);
текОбъект . Записать ();
КонецЕсли;

В примере, через обработку оповещения передаем параметр в процедуру, в которой присваиваем полученные координаты долготы и широты и записываем объект. Потом, используя метод Прочитать(), обновляем объект формы. В данном случае метод вызван 2 раза в связи с тем, что до заполнения координат, он изменяется, а второй раз — чтобы прочитать изменения, которые сделали мы.

Записки IT специалиста

Восстанавливаем синхронизацию в 1С:Предприятие при проблемах с расширениями (патчами)

  • Автор: Уваров А.С.
  • 05.04.2022

1cv83-sync-rib-cfe-repair-000.png

Новые технологии — это не только новые возможности, но и новые проблемы. Расширения в 1С:Предприятие открыли новые возможности по доработке конфигураций и их последующему сопровождению, но они же принесли новые проблемы, в частности касающиеся синхронизации в распределенной информационной базе (РИБ). Но есть проблемы — значит будут и решения, которые, по мере накопления опыта преобразуются в практические рекомендации. Сегодня мы рассмотрим, что может помешать синхронизации после установки расширений (патчей) и как это исправить.

Научиться настраивать MikroTik с нуля или систематизировать уже имеющиеся знания можно на углубленном курсе по администрированию MikroTik. Автор курса, сертифицированный тренер MikroTik Дмитрий Скоромнов, лично проверяет лабораторные работы и контролирует прогресс каждого своего студента. В три раза больше информации, чем в вендорской программе MTCNA, более 20 часов практики и доступ навсегда.

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

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

Распределенная информационная база (РИБ) продолжает активно использоваться несмотря на обилие облачных и прочих веб-решений. Причина проста, только эта технология обеспечивает автономность узлов распределенной сети, позволяя полноценно работать даже при отсутствии связи с центральной базой. Наиболее востребовано это в торговле — магазин должен продолжать работать, даже без связи с внешним миром.

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

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

Для расширений можно указать область применения: только центральная база или вся распределенная сеть. Вот здесь и начинается самое интересное.

Расширения бывают двух типов: которые вносят изменения в структуру данных ИБ и которые не вносят, изменяя только интерфейс или обработчики команд. Последние не представляют особых проблем в РИБ, они минимально влияют на синхронизацию и для устранения проблем достаточно просто перезапустить программу. Но даже если этого не сделано, то синхронизация сохраняется, как правило в одну сторону: обновления из центрального узла не загружаются, так как не применены прошлые изменения, но в центральный узел данные передаются исправно.

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

В том, что касается РИБ, расширения не принесли никакого упрощения поддержки, а только добавили новых проблем. На первых порах ситуация была вообще плачевной, неудачным расширением можно было положить всю сеть РИБ всерьез и надолго. Сейчас ситуация выправилась, но ее можно охарактеризовать как «вооруженный нейтралитет, эпизодически выливающийся в локальные столкновения».

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

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

Обычно все начинается совсем не добрым утром, когда рядовые пользователи получают сообщение о невозможности запуска программы и начинают обрывать телефоны поддержки (часто в лице единственного человека).

1cv83-sync-rib-cfe-repair-001.png

При входе с полными правами предлагается выполнить повторную синхронизацию с центральным узлом, но она завершается неудачей.

1cv83-sync-rib-cfe-repair-002.png

В этом случае нажимаем Продолжить и входим в обычный режим работы 1С. Дальнейшие действия могут несколько различаться, в зависимости от конфигурации, а нашем примере это будет 1С:Розница 2.3. Переходим в Администрирование — Синхронизация данных — Настройки синхронизации данных и выбрав узел обмена (а он там будет один — центральный), нажимаем ссылку Синхронизация по расписанию.

1cv83-sync-rib-cfe-repair-003.png

Затем выберите сценарий синхронизации и в меню правой кнопки мыши выберите Выполнить сценарий, обычно это не займет много времени.

1cv83-sync-rib-cfe-repair-004.png

Затем можно вернуться в Настройки синхронизации и Установить обновление, во многих случаев этого окажется достаточно для восстановления нормальной работы автообмена, реже — потребуется повторить процедуру, при этом не забывайте после каждого сеанса синхронизации в РИБ запускать синхронизацию в центральном узле.

1cv83-sync-rib-cfe-repair-005.png

Но бывает все гораздо хуже, после установки обновлений база снова просит повторную синхронизацию и все продолжается по кругу. В этом случае нам ничего не остается, как изучить Журнал регистрации, находим там ближайшую ошибку обмена и внимательно ее изучаем. Как правило там будет явно фигурировать проблемное расширение.

1cv83-sync-rib-cfe-repair-006.png

А теперь немного отвлечемся, на портале обновлений 1С можно найти описание всех патчей и внимательно изучить их. А потом крепко подумать и сделать выводы. Большинство исправлений устраняют ошибки, с которыми вы вряд ли бы столкнулись, поэтому необходимость их автоматической установки исчезающе мала. Правильным действием будет ручная установка патчей, по мере выявления проблем.

1cv83-sync-rib-cfe-repair-007.png

Далее переходим в центральную базу и загружаем ее в режиме Конфигуратора, переходим в Конфигурация — Расширения конфигурации и получаем полный список всех установленных расширений и патчей. После чего находим проблемное расширение и думаем. В некоторых случаях оно может устранять ошибку, которая существенна для центрального узла, но совершенно не влияет на периферию. В таком случае снимаем флаг Используется в РИБ, в остальных случаях просто удаляем расширение и выполняем синхронизацию с нужным узлом.

1cv83-sync-rib-cfe-repair-008.png

Затем заново выполните синхронизацию в периферийном узле, но не спешите устанавливать обновление, снова выполните сценарий, как мы делали в начале этой статьи. Не забывайте, что после каждого сеанса синхронизации в узле РИБ нужно выполнять синхронизацию в центральной базе.

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

1cv83-sync-rib-cfe-repair-009.png

Ну наконец-то! Можно идти пить кофе и отправлять пользователей работать. Но тут нас может ждать еще один сюрприз — пользователи снова не могут зайти, только текст ошибки немного иной.

1cv83-sync-rib-cfe-repair-010.png

В чем здесь нельзя сомневаться, так в том, что за подробностями они все обратятся и администратору вряд-ли это понравится. В чем же дело? А в том, что современная 1С — сложная система и восстановив синхронизацию мы все еще не завершили процессы обновления информационной базы. Поэтому снова запускаем базу с полными правами и выполняем повторную синхронизацию.

1cv83-sync-rib-cfe-repair-011.png

После чего нормальная работа базы данных будет восстановлена.

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

Научиться настраивать MikroTik с нуля или систематизировать уже имеющиеся знания можно на углубленном курсе по администрированию MikroTik. Автор курса, сертифицированный тренер MikroTik Дмитрий Скоромнов, лично проверяет лабораторные работы и контролирует прогресс каждого своего студента. В три раза больше информации, чем в вендорской программе MTCNA, более 20 часов практики и доступ навсегда.

Помогла статья? Поддержи автора и новые статьи будут выходить чаще:

Поддержи проект!

Или подпишись на наш Телеграм-канал: Подпишись на наш Telegram-канал

Ошибка "Данные были изменены или удалены другим пользователем" при проведении

Доброго времени суток, уважаемые эксперты. Стоит задача: обеспечить возможность ручной корректировки проводок созданного документа ПриходТовара(имеющего соответствующий реквизит РучнаяКорректировка).
Для этого на кнопку ДтКт на форме документа подцеплена стандартная обработка КорректировкаДвижений.

Содержание модуля объекта следующее:

Не выдавать ошибку на кнопку "сохранить", если записи не были изменены
Привет всем! Проблема №1: есть Dbgrid, есть кнопка "сохранить запись". Если я в Dbgrid’e ничего.

Ошибка при загрузке решения: "Один или несколько проектов в решении были неправильно загружены"
Здравствуйте. Visual Studio 2017, сегодня открывал решение проекта, который мне переслали на почту.

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

Ошибка при проведении документа "Реализация товаров и услуг"
Добрый день. У меня вопрос скорее не к программистам, а к тем кто разбирается в конфиграции.

Сообщение от lighthead9288
Лучший ответСообщение было отмечено ildwine как решение

Решение

Сообщение от duk337

Обновляет контекст (буфер) из объекта, уничтожая изменения? ЭтаФорма.Модифифицированность, интересно, Ложь после этого?

А чего его в синт.поме нету?

Форма (обычное приложение).Методы:

Активизировать (Activate)
ВводДоступен (IsInputAvailable)
ВыбратьИзМеню (ChooseFromMenu)
ВыбратьИзСписка (ChooseFromList)
Закрыть (Close)
Обновить (Refresh)
ОповеститьОбАктивизацииОбъекта (NotifyActivateObject)
ОповеститьОВыборе (NotifyChoice)
ОповеститьОЗаписиНовогоОбъекта (NotifyWriteNewObject)
ОтключитьОбработчикИзмененияДанных (DetachDataChangeHandler)
ОтключитьОбработчикОжидания (DetachIdleHandler)
Открыта (IsOpen)
Открыть (Open)
ОткрытьМодально (DoModal)
ОткрытьСправкуФормы (OpenFormHelp)
ПодключитьОбработчикИзмененияДанных (AttachDataChangeHandler)
ПодключитьОбработчикОжидания (AttachIdleHandler)
ПолучитьДействие (GetAction)
ПроверитьЗаполнение (CheckFilling)
УстановитьДействие (SetAction)

Добавлено через 1 минуту
(8.2.19.76)

Добавлено через 2 минуты
"из объекта" — не точно, поскольку "ЭтотОбъект" обращается опять же к контексту. А вот "Ссылка" даёт то, что в базе.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *