SyteLine中文社区-Infor Cloudsuite Industrial Business ERP

 找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

搜索

How to remove replication in SyteLine V2

发布者: Insus.NET | 发布时间: 2014-11-21 16:21| 查看数: 4146| 评论数: 1|帖子模式

本帖最后由 Insus.NET 于 2014-11-21 18:32 编辑

以前曾经写了一篇《How to remove replication in Sytelinehttp://www.cnblogs.com/insus/archive/2011/12/20/2294831.html  过于简单。 由于SyteLine采用共享License的授技术,如果你从一个正式的数据库复制一个备份,恢复至另外一个站点上,这样它们会有很多数据共享。为了杜绝数据混淆,我需要做的是移除Replication功能。

说简单一些吧,如果你在正式版的SyteLine数据有些问题,或是你想测试一些功能,但你又不想在正式版来操作。这样你会想到创建一个测试的系统如Pilot。正常的情况之下,备份与恢复即可,但是SyteLine ERP是采用Intranet License的。也就是说恢复之后,Pilot的数据与正式版的数据库还是有关联的。在Pilot做测试或是更新,它会更新至正式版的数据库去。因此我们需要移除复制(Replication)。
一,分别备份Live数据库,包括App,Forms,Objects三个数据库。
二,进入UT服务器,打开Services.msc,停止SyteLine服务(IDO service)。
四,恢复数据库。分别使用备份的bak文件来恢复Pilot site的App, Forms & Objects)数据库。

以下步骤是在恢复数据库进行或是相关,与原ERP和原数据库无关!!!

五,登录Pilot数据库,查询[intranet]表,然后更新[MasterSite]为NULL。
SELECT * FROM [intranet

UPDATE [intranet SET [MasterSite = NULL WHERE [intranet_name = '???'
六,查询[rep_rule]表
SELECT * FROM [rep_rule
并删除所有此表[rep_rule]记录:
DELETE FROM [rep_rule  
七,查询表[site]
SELECT * FROM [site
删除[site]记录,仅留:
DELETE FROM [site WHERE [site <> '???'
更新[IntranetLicensing]为0。
UPDATE [site SET [IntranetLicensing = 0 WHERE [site= '???'
八,查询[site_group]表:
SELECT * FROM [site_group
删除所有此表[site_group]记录,仅保留当前site的site_group数据:
DELETE FROM [site_group WHERE [site_group <> '???'
九,查询表[IntranetSharedTable]:
SELECT * FROM [dbo.[IntranetSharedTable
删除所有此表[IntranetSharedTable]记录:
DELETE FROM [dbo.[IntranetSharedTable
十,在SQL的查询分析器中,执行下面configuration,把TRUSTWORTHY值改为sa,
View Code
然后更新sa的SyteLine的密码,由于密码是加密的,你需要使用加密后的字符串,先来查询一下[UserNames]
SELECT *  FROM [UserNames
下面Insus.NET把sa的密码设为空,由于SL_Internal的密码就是空的,因此我们就用它的加密后的字符串:






十一,Restart SyteLine IDO service。

十二,登录UT服务器, setup object Metadata。
121113457885039.jpg
十三,Discard IDO Cache in configuration manager:
根据IDO Runtime on local machine 选项 ,选与不选各执行一次。
121115574915208.jpg
十四,Restart SyteLine IDO service。
十五,在UT服务器,运行与登录SyteLine:
打开intranets form,检查master site 字段是否为空。为空说明正确。
121324474282614.jpg


十六,打开sites/Entities form, 填写正确的DataBase Name和Forms DataBase Name,并保存。

十七,打开site groups form 是存有记录,记录是否正确。

十八,打开Replication Management from检查 Intranet Shared Tables,点击时,它会出现警示,点OK确认, 然后按F4检查记录是否全为空。为空正确。



十九,在相同的Replication Management from中, 检查 replication Rules 是否存在记录,如果是空记录那就对了。
二十,在相同的Replication Management from中, 点击 "Reqenerate Replication Triggers" 铵钮,确认"Replication Triggers Regenerated Successfully"信息。
121338346632773.jpg
二十一,打开Update_All Tables form,按F4 过江所有记录,点击"Select All" 按钮,把 "Disable Replication" 选项选中,最后点击“Repopulate Tables” 铵钮。此步有可能花费相当长时间,视你的数据多少来决定。
121339586478464.jpg


121341035063911.jpg


二十二,打印报表,看看是否正常打印。

二十三,完成。

转自: http://www.cnblogs.com/insus/p/4091248.html

最新评论

zxwwen 发表于 2015-6-1 10:07:47
请问一下你这里的'???'代表什么意思,是指Pilot数据库吗?

小黑屋|手机版|Archiver|SyteLine中文社区 ( 沪ICP备13030789号  

GMT+8, 2019-10-14 23:30 , Processed in 0.317390 second(s), 42 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表