І знову сюрприз від СБ - всі документи по ЗЕД тепер нас змусили надавати тільки в електронному вигляді, і зробити це можна тільки через СПЕД. Про його розгортанні та налаштування і піде мова.
Сам продукт мені особисто сподобався. Він куди краще адаптований до використання в корпоративних середовищах, ніж "рідний" клієнт-банк РБ РФ, та й більшість клієнтських систем інших банків. Тому, почасти, я навіть вдячний СБ за те, що вони нас все-таки змусили застосувати СПЕД (до цього моменту ми уникали переходу на СПЕД з тієї причини, що підтримка цілком буде в СПб, а ми і в своєму місті з працею можемо отримати консультацію від СБ, а що вже говорити про консультації з СПб).
Канал до ФПСУ
Так як ми будемо використовувати СПЕД в ролі клієнт-банку РБ РФ, нам буде потрібно захищені (за допомогою Аміконі ФПСУ IP / Клієнта) канал до банку. З цього приводу написав кілька статей. рекомендую найбільш гнучкий з моєї точки зору варіант з виділеними ФПСУ маршрутизаторами.
дистрибутив
Дистрибутив ми отримали з банку. Наведу його опис з самого диска:
У нашому випадку в корені диска папка 1-53-03 містила дистрибутив СПЕД версії 1.53.03 (про неї далі і піде мова). Щоб перевірити версію системи, скористайтеся засобом Orca з MSI SDK (який входить до складу Platform SDK в свою чергу). Дивимося таблицю Properties (рисунок ліворуч).
Так, приємна новина - дистрибутив вже в вигляді .msi файлу, до поширення через GPO практично готовий. Ну що ж, приступимо.
Готуємо адміністративну точку установки
Все як завжди. Готуємо мережевий ресурс (в моєму випадку він буде доступний через DFS), і власне готуємо точку установки:
У процесі підготовки адміністративної точки Ви можете отримати помилку (картинка зліва). Помилка говорить: Не можу прочитати з файлу "... \ Prg \ src \ system32 \ SBX \ sbsgn32.dll". Так все і є - файлу немає в дистрибутиві. Судячи з усього, комплектність дистрибутива визначається переліком операцій з банком, передбачених Вашим з банком договором.
Компонента SBX, яка вимагає даного файлу, фактично встановлена бути не може (подивіться на умова її установки на картинці справа, воно завжди помилково). Тому при розгортанні таких проблем не буде.
У нас є варіанти: або правити вихідний msi через Orca (видалити проблемну компоненту SBX), або ж просто натиснути "Пропустити". У чистому вигляді адміністративна установка потрібна для того, щоб на зберігати на робочих станціях при розгортанні дистрибутив в повному обсязі (якщо в msi включений .cab з файлами дистрибутива). Якщо .cab файлу немає і назву збірки не запакований - цілком можна використовувати вихідний .msi файл, але мені до душі дотримання процедур до останньої букви, по можливості.
Отже, адміністративна точка установки готова. Створюємо об'єкт політики (GPO).
готуємо GPO
Створив об'єкт GPO і групи безпеки для нього. Право на застосування політики дав (як завжди) тільки групі Клієнти установки ПО (рисунок праворуч).
А тепер публікуємо cftbc.msi з адміністративної точки установки в наш GPO (створюємо тим самим .aas скрипт установки в SysVol part нашого GPO).
Проблем з публікацією не виникло, все готово до тестового розгортання самого клієнта. Пробуємо.
перевіряємо поширення
Не забуваємо включити тестову машину в групу Клієнти установки ПО. gpupdate на ній - і в перезавантаження її.
Logon - і бачимо нові ярлики на робочому столі. Аж 3 штуки відразу. Не люблю, коли робочий стіл засмічують. А тому створю трансформацію для msi пакета, яка уб'є записи про ці ярликах (тільки про тих, що на робочий стіл потрапили).
Тюнінг MSI пакета - вбиваємо ярлики з робочого столу
Приступимо. Відкриваємо за допомогою Orca cftbc.msi з адміністративної точки установки. І створюємо нову трансформацію. Тепер йдемо в таблицю Shortcut. І видаляємо записи про "непотрібних" ярликах.
І зберігаємо отриману трансформацію (Transform / Generate Transform, ім'я для файлу я вказав [itg] .mst)
І після перезавантаження ярликів на робочому столі немає, чого і домагався.
"Імпортуємо конфігурацію" за допомогою GPO (або публікація баз СПЕД через GPO + GPP)
Поки що ми вирішили тільки половину завдання, розгорнули сам додаток. Тепер необхідно нашим користувачам "імпортувати конфігурацію" (це - в термінах СПЕД). Що приємно, конфігурацію СПЕД може зберігати як в HKLM. так і в HKCU. Вибір за вами. У моєму випадку (переміщувані профілі користувачів) правильно прив'язатися саме до користувача, тому я буду імпортувати конфігурацію в HKCU, якщо Ви використовуєте СПЕД на сервері терміналів, можливо Вам краще підійде HKLM, але суть залишиться колишньою.
Імпортувати конфігурацію в реєстр буду за допомогою GPP. Наведу цитату з реєстру для однієї "конфігурації":
Як видно, на кожну базу ( "конфігурацію") створюється ключ в реєстрі (HKCU \ SOFTWARE \ FTC \ RC NWSBRF \ 1. ... \ 2 і так далі). і значень там куди більше, ніж я привів. Але все інше (те, що залишилося за кадром) - збережені параметри користувальницького інтерфейсу (розміри віконець, їх положення і так далі).
Параметри UID, BID, SID, і KID слід генерувати на підставі вмісту файлів K-0XX-YYYY \ cvtnam1.dbp і cvtnam.ldif з диска, виданого Вам банком. Відкриваємо його блокнотом і бачимо:
Якщо останніх папок не було - створюємо їх. У зазначеному каталозі повинен розміщуватися файл registry.xml. У нашому прикладі файл буде такого змісту:
Для кожної нової "бази" Ви повинні будете створювати ключі з цифровим найменуванням (1, 2, 3 і так далі). У нашому прикладі - 1. Приклад привів із створенням GPP через xml файл з однієї причини - так простіше редагувати при створенні конфігурації по іншу базу (пошук із заміною допоможе нам). Для іншої бази (конфігурації) нам буде потрібно замінити:
- ключ в реєстрі (наприклад - на Software \ FTC \ RC NWSBRF \ 2)
- шлях до файлового ресурсу бази (DB_PATH і DATABASE)
- каталог для розміщення тимчасових файлів TMPDIR
- KID і UID
- шлях до ldif файлу з користувачами бази CVTFILE
- ну і параметр CAD. якщо Ви зберігаєте ключі нема на змінних носіях (так, СПЕД прекрасно працює і в такому варіанті)
Зверніть увагу на найперший параметр Registry. Для нього ми вказали дію "Замінити" і встановили прапор removePolicy з однією метою - при виключенні користувача з області застосування GPO розділ в реєстрі повинен бути видалений (щоб користувач і не бачив баз, до яких втратив доступ).
Пробуємо - gpupdate. І - все вийшло. У реєстрі маємо необхідний розділ. І СПЕД при запуску бачить нашу базу ( "конфігурацію"), зв'язок з бази проходить цілком успішно.
TMPDIR: вибираємо тимчасовий каталог для модуля зв'язку
Буквально пару слів скажу. Змінні оточення не підтримуються. І весь шлях, аж до найглибшого зазначеного Вами каталогу повинен бути не прихованим. і не системним. З цієї причини% temp% (навіть якщо ми його розгорнемо самі в c: \ documents and settings \ user \ local settings \ temp) не підходить на жаль - local settings і temp - приховані каталоги. P.S. Мабуть, зазначений недолік (неможливість вказівки для TMPDIR прихованих каталогів і використання в дорозі змінної оточення, зокрема -% temp%) - поки єдиний виявлений недолік СПЕД в порівнянні з іншими клієнт-банками.
Проте, прекрасно працює варіант з відображенням% temp% в диск:
І для TMPDIR вказуємо Y: \. Такий варіант чудово працює, але subst доведеться вставляти в logon скрипт ... (схоже рішення, допустимий і для мобільних клієнтів, вже описував).
Імпорт платіжних доручень з 1С
В першу чергу нам СПЕД потрібен як клієнт-банк. Тому необхідна процедура імпорту товарів, що експортуються з 1С платіжних доручень.
Налаштувати імпорт потрібно тільки один раз для однієї бази, "поширювати" настройку на кожного користувача не потрібно - всі параметри і сценарії зберігаються в "базі".
Сценарії доступні для редагування, мова сценаріїв - Visual Basic. Ще раз захоплюючись розробниками СПЕД'а - грамотний підхід. Завдяки подібному підходу Ви можете поправити сценарій під себе (під свій формат вивантаження, наприклад. В теорії Ви можете і вивантаження ініціювати безпосередньо з СПЕД через OLE, можете додати своє журнал операцій імпорту - свобода творчості). На жаль, дістатися до сценарію не через інтерфейс СПЕД'а не зміг - не знайшов. Якщо підкажете - буду вдячний.
Сценарій, який використовував для імпорту:
Куди простіше буде виглядати скрипт, якщо Ви будете експортувати з 1С в .dbf форматі, наведений вище сценарій - для текстової вивантаження.
З налагодженням можуть бути складності, мені допомагають вставки в "контрольних" точках наступного роду:
Сама процедура імпорту начебто як і проста, проте ініціювати її зміг не з першого разу. Суть в тому, що функція Імпорт в меню Операції буде доступна тільки в тому випадку. якщо у Вас відкритий журнал Вихідні документи \ Платіжні доручення.
Ярлик своїми руками: запуск СПЕД без запиту пароля до ключа і без вибору конфігурації, з автоматичним імпортом платіжних доручень при запуску
Повертаємося до документа Документація \ Документація від розробників \ Додаток Командна строка.doc з диска, виданого банком. Створимо командний рядок, по якій СПЕД буде запускатися в потрібній нам конфігурації без зайвих запитів PIN кодів та іншого, а також - з автоматичним імпортом платіжних доручень при запуску.