Zero Block
Click "Block Editor" to enter the edit mode. Use layers, shapes and customize adaptability. Everything is in your hands.
Tilda Publishing
create your own block from scratch
Zero Block
Click "Block Editor" to enter the edit mode. Use layers, shapes and customize adaptability. Everything is in your hands.
Tilda Publishing
create your own block from scratch

Відключення RMS від Chain

За якоюсь причиною потрібно відокремити базу закладу від чейну.
Необхідно виконати такі підготовчі дії:
1) Розірвати зв'язок підключення до Центрального офісу
2) В чейні:

  • Відновити ТП РМСа, що відключається, якщо воно було видалено.
  • Включити налаштування видимості номенклатурних груп для РМС.
  • Дозволити співробітникам/постачальникам роботу у РМСі, що відключається.(Відредагувати поля у картці співробітника Підрозділ, ТП за замовчуванням, Відповідальний).
3) Налаштування ЄГАІС - поставити галку працювати з УТМ через РМС.
4) Провести обмін даними із ЦО.
5) Виконати строго після розриву із ЦО скрипти через:
https://localhost/resto/service/maintance/groovy.jsp 
або у старих версіях:
http://localhost:8080/resto/service/maintance/groovy.jsp
Перший скрипт
import resto.db.CachedEntity;
import resto.db.EntityManager;
import resto.back.store.ProductGroup;
import resto.replication.ServerInstance;
import com.google.common.collect.Sets;
import resto.HQ.corporation.DepartmentEntity;
import resto.core.EntityUtil;
import resto.db.ByValue;
em.runTransacted() {
// Відновлюємо ТП.
ServerInstance.getCurrent().getRmsDepartment().setDeleted(false);
em.getAll("ProductGroup").each() {
if (it.getParent() == null &&
it.getVisibilityFilter() != null) {
// Скидаємо параметри видимості у груп.
it.setVisibilityFilter(null);
out.println(String.format("%s %-20s %s", it.id, it.name, "Set visibility null"));
}
if (it.isHQRoot()) {
// Підчищаємо "вушка" від чейну, даємо можливість видаляти групу
it.setHQRoot(false);
out.println(String.format("%s %-20s %s", it.id, it.name, "Set isHQRoot false"));
}
}
DepartmentEntity department = ServerInstance.getCurrent().getRmsDepartment();
em.getAll("User").each() {
if (!it.isSystem()) {
// Призначаємо поточне ТП всім співробітникам/контрагентам, крім системних.
it.setAssignedDepartments(Sets.newHashSet(department));
it.setPreferredDepartment(department);
it.setResponsibilityDepartments(Sets.newHashSet(department));
out.println(String.format("%s %-20s %s", it.id, it.name, "Set current department"));
}
}
if (!department.getEgaisConnectionsSettings().isRmsManagedConnection()) {
// Налаштовуємо роботу з УТМ в РМС
department.getEgaisConnectionsSettings().setRmsManagedConnection(true);
EntityUtil.updateEntity(ByValue.wrap(department));
out.println(String.format("%s %-20s %s", department.id, department.name, "EGAIS: set rmsManagedConnection true"));
}

}
Якщо УТМ не використовується з першого скрипту, потрібно прибрати блок з налаштуванням роботи УТМ через РМС:
if (!department.getEgaisConnectionsSettings().isRmsManagedConnection()) {
// Налаштовуємо роботу з УТМ в РМС
department.getEgaisConnectionsSettings().setRmsManagedConnection(true);
EntityUtil.updateEntity(ByValue.wrap(department));
out.println(String.format("%s %-20s %s", department.id, department.name, "EGAIS: set rmsManagedConnection true"));
}
Другий скрипт
import resto.HQ.corporation.Corporation
import resto.replication.ServerInstance
em.runTransacted() {
// Скидаємо прив'язку до Чейну.
ServerInstance.getCurrent().setHQNode(null);
// Розриваємо зв'язок із Чейном.
ServerInstance.getCurrent().setRegistered(false);
// Забуваємо CRM ID Чейна.
// Забуваємо CRM ID Чейна.
Corporation corporation = em.getSingleton(Corporation.class);
corporation.updating();
corporation.update();
corporation.setCrmId(null);
corporation.updating();
corporation.update();
}
6) Зупинити сервер РМС.
7) У конфізі РМС забрати рядок enable-replication=true
8) Запустити РМС.
Примітка
Можливі проблеми – після відключення RMS від HQ не працює Syrve Live Api. Якщо наведені в статті кроки були виконані в іншому порядку, потрібно буде перезапуск сервера RMS для реєстрації в ЕЦО і відновлення обміну з ЕЦО після виконання groovy скрипта.
Примітка 2.0
Можливі проблеми - після відключення RMS від HQ у SyrveOffice "не видно номенклатури"
Найчастіше партнери/клієнти не роблять вручну налаштування видимості, т.к. це ще той головний біль, якщо кількість груп більше 10. У 99% звернень на тему створення Standalone RMS (для серверів на хостингу Syrve) з боку техпідтримки Syrve потрібно проставляти налаштування видимості.
Якщо сервер знаходиться у хмарі Syrve, можна створити звернення з типом "запит на обслуговування" для виконання операції в БД Syrve SQL запитом.