用友通软件维护1.docx
《用友通软件维护1.docx》由会员分享,可在线阅读,更多相关《用友通软件维护1.docx(120页珍藏版)》请在冰豆网上搜索。
![用友通软件维护1.docx](https://file1.bdocx.com/fileroot1/2023-4/24/9f2449ef-cbce-44df-8730-9c075e871259/9f2449ef-cbce-44df-8730-9c075e8712591.gif)
用友通软件维护1
用友通软件维护
前言
大家在日常维护过程中,都碰到过诸如连接不上服务器、软件运行过程中报错、特殊业务不知如何处理的问题。
本书总结了维护过程中的一些常见问题,涉及环境、数据库和业务处理等各方面。
相信本书会成为大家日常维护的宝典手册。
当然在日常的维护过程中,还会遇到其他本书没有提及的问题。
希望本书能给大家提供一种思路。
也更希望大家多多收集,多多总结,不断丰富这本书的内容。
让它发挥更大的作用。
本书基于U6编写,涉及的问题解决方法在用友通中同样适用。
业务处理上U6和用友通的不同之处已经详细标识!
由于时间仓促,本书存在的不足之处,敬请批评指正!
目录
安装、卸载问题1
一、无法安装数据库1
二、手工删除软件2
系统管理3
一、sa口令问题3
二、连接不上服务器7
三、服务无法启动11
四、账套升级失败16
五、备份账套21
六、恢复数据22
七、设置非自然会计期间27
总账系统28
一、常见问题汇总28
二、月末结账的时候提示对账不平36
三、行业性质与科目分类不符39
四、通低版本升级到高版本后,进入总账进行设置时提示错误:
gl_bnotcheckjz42
五、期间损益结转的时候,部分科目的余额不能全部转出?
42
六、运行时错误'91':
未设置对象变量或Withblock变量43
七、运行时错误‘7’,内存溢出44
八、运行时错误‘429’:
ActiveX部件不能创建对象。
44
应收款管理45
财务报表47
工资模块55
固定资产模块65
业务通及核算82
一、公共问题82
二、采购管理85
三、销售管理91
四、库存管理100
五、核算管理106
专题内容122
一、打印问题汇总122
二、加密盒知识汇总135
三、各版本升级步骤汇总141
附录:
146
附录一:
运行时错误35601,未知的元素:
常见报错及原因分析146
附录二:
运行错误"3021",BOF或EOF中有一个是真,或者当前的记录已被删除147
附录三:
常用工具及下载地址149
本书中凡涉及到对数据库进行操作的,请在确认将数据备份后再进行,以免对客户数据造成不可预料的损坏。
安装、卸载问题
一、无法安装数据库
问题:
在安装SQLSERVER2000时,提示
重启计算机后仍是这个提示。
解决方法:
修改注册表。
操作步骤:
1、打开注册表编辑器:
开始——运行——输入regedit,点击确定。
2、在HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SessionManager右边找到PendingFileRenameOperations项目,并删除它。
这样就可以清除安装暂挂项目。
再次安装正常。
二、手工删除软件
如果在安装软件的过程中,出现了异常,导致安装不成功,又不能卸载,这时需要手工删除软件。
操作步骤:
1、首先需要在注册表中查找:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{CBD67CFC-1A9E-4248-86F1-EBC2EB496ACA}。
然后鼠标右键“删除”。
2、其次要删除:
C:
\ProgramFiles\InstallShieldInstallationInformation\中将{CBD67CFC-1A9E-4248-86F1-EBC2EB496ACA}目录删除
3、在C:
\DocumentsandSettings\Administrator\LocalSettings\Temp中查找 {CBD67CFC-1A9E-4248-86F1-EBC2EB496ACA}后删除
4、在注册表中删除HKEY_LOCAL_MACHINE\SOFTWARE\UFSOFT中的所有内容
注:
{CBD67CFC-1A9E-4248-86F1-EBC2EB496ACA}是U6版本的键值,不同版本的键值是不一样的,如不知道安装版本的键值,可以到HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall点击每个项目查看右树中的displayname是什么。
该方法适用于商贸通以及使用installshield安装的所有软件。
系统管理
一、sa口令问题
安装软件后,登录系统管理提示:
SQLServer口令
此提示可能由于有时sa口令遗忘或失效,也可能是环境问题所致。
首先:
要分析是否设置了sa口令,或者录入的sa口令是否正确,可通过命令提示符验证sa口令。
〖操作步骤〗
1.在正在连接到的计算机中打开命令提示符窗口。
开始—运行—输入cmd—确定
2.在命令提示符处键入以下命令:
osql-Usa
注意:
(1)‘U’字符一定为大写
(2)这样可以通过sa账户连接到本地默认实例,若要连接到计算机上安装的命名实例,请键入osql-Usa-Sservername
然后按Enter键,随机出现以下提示:
Password:
3.如果没有密码,则直接按Enter键;如果有密码,则录入sa密码,再按Enter键,此操作将为sa传递一个NULL(空)密码。
如果按Enter键后出现以下提示:
1>
说明sa账户没有密码。
以上是正常的情况,如果在这个操作过程中,有错误提示,则很可能是环境问题。
其次:
对环境问题进行分析。
【问题1:
】
现象描述:
如果收到以下错误信息:
"LoginFailedforuser\'sa\'."或“用户'sa'登录失败”
则表示输入的密码不正确。
此错误信息表示已为sa账户创建了密码。
原因分析:
在安装数据库或配置系统管理时设置过sa口令,由于第一次登录系统管理或重新安装用友通等原因引起的。
解决方法:
修改或清空SQLServer的sa口令
〖操作步骤〗
企业管理器—控制台根目录—MicrosoftSQLServers—SQLServer组—服务器名称(默认名称为机器名或local)—安全性—登录—双击sa右边界面)—密码重置
清空这个密码即可。
补充说明:
如果用户安装的是MSDE。
因MSDE没有企业管理器,可使用相关工具或命令来初始化或设置口令,建议方案:
使用SQLServer企业管理器组件来设置,工具见通网站—服务工具——SQL管理工具(939号)。
【问题2:
】
现象描述:
如果收到如下错误信息:
Loginfailedforuser\'sa\'.Reason:
NotassociatedwithatrustedSQLServerconnection。
或用户'sa'登录失败,原因:
未与信任SQLServer连接相关联。
表示运行SQLServer的计算机设置为只限Windows身份验证。
原因分析:
数据库安装或由于某些原因SQL的身份验证模式为windows身份验证模式,而系统要求必须是混合模式。
解决方法:
修改为SQL混合验证模式。
〖操作步骤〗
1、先停止MSSQLSERVER以及其他相关服务(如SQLSERVERAgent);
2、打开注册表编辑器,开始-运行-输入regedit点确定;
3、找到以下两个子项之一(取决于MSDE是作为默认MSDE实例安装的还是作为命名实例安装的):
HKEY_LOCAL_MACHINE\Software\Microsoft\MSSqlserver\MSSqlServer
-或者-
HKEY_LOCAL_MACHINE\Software\Microsoft\MicrosoftSQLServer\MSSQLServer\\
4、在右窗格中,双击LoginMode子项
5、在DWORD编辑器对话框中,将此子项的值设置为2,选择了十六进制(Hex)选项(默认情况下,WindowsLoginMode注册表子项的值设置为1。
如果启用SQL的身份验证模式,则此值为2。
)
6、一定要重新启动MSSQLSERVER和SQLSERVERAgent服务以使更改生效。
【问题3:
】
现象:
如果您收到以下错误信息,
[SharedMemory]SQLServerdoesnotexistoraccessdenied.
[SharedMemory]ConnectionOpen(Connect()).或
[SharedMemory]SQLServer不存在或防问被拒
[SharedMemory]ConnectionOpen(Connect()).
则表示SQLServer可能未运行,或者您可能为安装的SQLServer的命名实例提供了错误名称:
原因分析:
由于系统组件未被正确注册引起,常见操作如:
先安装财务通产品,后又安装用友通产品。
解决方法:
需注册控件:
操作系统安装目录\ProgramFiles\CommonFiles\System\ado\msadox.dll和msado15.dll
二、连接不上服务器
◆常规解决方法:
1、首先检查系统是否有自带的防火墙,如果有自带防火墙,需要添加端口(服务器和客户端都要执行)。
XPsp2版和2003这两个版本有自带的防火墙,添加端口方式为:
开始----控制面板----windows防火墙---标签的第二项“例外”---增加端口---名字随便起,端口号分别为4630(用友通、U6),1430和1433(数据库)。
2、自己安装的杀毒软件也需要打开这三个端口(已知可能和用友软件发生冲突的包括金山毒霸、KV3000、瑞星等)。
注:
看端口是否被打开的方法是:
开始----运行----cmd---(netstat–a–n)
3、修改hosts文件:
以记事本的方式打开C:
\WINNT\system32\drivers\etc目录下的hosts文件,最下面另起一行写上服务器的ip和服务器的计算机名称,保存。
4、如果修改了计算机名字,重新登录软件的时候,提示:
用友通的修改方法:
开始---运行---regedit---HKEY_LOCAL_MACHINE---SOFTWARE----UFSOFT----UF2000----2.0----Login,看下面所有的项目的server值是否为新的计算机名,如果不是的话,鼠标右键“修改”。
U6的修改方法:
(1)修改注册表:
开始---运行---regedit---HKEY_LOCAL_MACHINE---SOFTWARE----UFSOFT----WF----Login,看下面所有的项目的server值是否为新的计算机名,如果不是的话,鼠标右键“修改”。
(2)修改U6服务管理器中的服务参数。
◆异常情况处理
1、问题描述:
登录软件的时候提示“无法连接到**(指本机计算机名)服务器”。
然后出现登录界面,进入选择服务器对话框后,选中服务器后,点击确定后,出现提示:
“运行时错误‘48’:
文件未找到:
Client.Dll”。
点击确定后出现提示:
“运行时错误‘440’:
Automation”。
解决方法一:
重启计算机按F8,进入‘最后一次正确配置’模式,启动后再正常启动计算机即可。
解决方法二:
先停止SQL和用友通的服务,把client.dll从system32复制到system下,再把system32下的那个删掉,重新注册system下的client.dll,再重启sql和用友通的服务。
2、问题描述:
几个客户端同时连接服务器,其中几个客户端可以正常连接,一个或几个客户端连接不上。
解决方法:
在服务器上打上数据库的补丁,如果安装的是sqlserver2000,要打上sp4的补丁(通网站—服务工具—866号工具);如果安装的是MSDE,要安装关键更新(通网站—服务工具—865号工具)。
另外,也可以在客户端也安装MSDE。
三、服务无法启动
安装软件后,系统会要求重新启动计算机。
在重启过程中会创建系统模板库,然后再启动用友通(企业门户)服务,打开4630的端口。
最后才正常操作系统管理和客户端。
以上是正常的情况,下面我们来看不正常的情况。
情况一:
开机时自动启动服务提示
解决方法:
说明启动了杀毒软件(如瑞星)的服务,需要先关闭瑞星服务,或者添加端口4630。
情况二:
因为不能自动启动服务,到控制面板—管理工具—服务中手工启动服务,提示:
此提示比较常见,出错原因情况较多,一般通过分析用友通日志文件来确定问题所在。
日志文件名为UF2000.log,存放路径Windows(Winnt)\System32\UF2000.log(U6的服务日志文件可以在电脑右下角的U6标志锁中查看),此文件可用记事本打开,操作时可先清空内容或删除文件,然后再启动服务将错误的日志信息写入,最后由日志提示信息判断分析问题原因。
提示1:
日志文件记录:
[2007.6.1311:
36:
26]不能找到UFSystem或Account表库,可能是安装没有正常完成,或没有进行初始化,请运行系统管理进行安装后的初始化。
原因分析:
由提示说明还未创建用友通系统数据库UFSystem。
此系统数据库是安装用友通产品后第一次登录系统管理或重启计算机后自动创建系统数据库和演示账套过程中建立,启动用友通服务报此错误,很有可能还未登录系统管理或执行初始化操作,也可能执行过程中失败。
解决方法:
方法1:
执行系统管理,做初始化操作
方法2:
若方法1未执行初始化,可能是之前做过初始化,删除注册表项:
[HKEY_LOCAL_MACHINE\SOFTWARE\UFSoft\UF2000\2.0\Setup],再登录系统管理做初始化操作
方法3:
若初始化操作建立系统数据库操作失败,可手工建立此系统数据库,还原用友通安装目录\Admin\Ufsystem.bak文件,还原时数据库名称定义为UFSystem
提示2:
[2007.6.149:
55:
33]PROVIDER=SQLOLEDB;
DATASOURCE=用友通-UFIDA;
USERID=SA;PASSWORD=…[2007.6.149:
55:
33]不能连接到SQLServer,可能是口令不正确。
原因分析:
有提示是由于连接数据库失败,一般是指数据库sa口令问题。
可以参看一、SA口令问题。
提示3:
[2007.6.1415:
16:
53]接收信息出错。
……[2007.6.1415:
17:
1]不能装订接口
原因分析:
提示中的接口可以理解为端口,用友通产品端口是4630,SQLServer默认端口是1433,日志中记录不能装订接口,很可能是产品端口被禁用或被别的占用,被禁用一般是由于防火墙引起。
可以在DOS下用命令查看服务器端口连接,命令为:
telnetIp地址4630,如果正常连接会跳出空白界面,如下图
如果不能正常连接,则提示:
解决方法:
可以添加端口。
详细操作看二、连接不上服务器的常规解决办法。
提示4:
提示:
“.ADO..失败”
原因分析:
可能是因为数据访问组件版本不一致
解决方法:
安装SQL数据库最新补丁,MSDE用户打MSDE2000SP4补丁包,SQLServer2000用户打SQLServer2000SP4补丁包,通网站服务工具栏下载号分别是865和866,此补丁包比较大也可以考虑更新数据访问组件MDAC,通网站可下载MDAC2.7版本,工具号为678。
提示5:
Server不能装入底层接口SGV
原因分析:
可能是由于用友通服务和版本不兼容所致,用友通服务对应文件是System32\ServerNT.exe,此文件与当前用友通版本不一致。
原因可能是安装早版本时没卸载干净或打过加密狗方面的补丁引起。
解决方法:
方法1:
停止用友通服务,从别的机器上拷贝ServerNT.exe文件覆盖本机此文件,再启动用友通服务。
方法2:
卸载用友通产品,如果System32\ServerNT.exe文件还存在,手工删除,再次安装用友通产品。
注:
以上解决方法适用于U6产品。
四、账套升级失败
在账套升级的过程中,经常会遇到这样的问题,其他年度可以正常升级,但是某一个年度在升级的时候提示缺少某张表,而导致升级失败。
对于这种问题,解决的方法是把这张表从升级正常的年度导入到升级失败的年度后,再升级。
下面我们就以具体的例子来说明解决的方法。
现象描述:
某一个账套在升级的时候,2006年和2007年度升级正常,但是在2008年度升级的时候,报错
此提示说明该账套2008年的账套数据库中缺少表ua_user_er。
但是2007年度升级正常,所以可以把2007年度数据库中的该表导入到2008年的数据库中。
操作步骤:
1.打开sqlserver的企业管理器,在控制台根目录下,逐一打开Microsoftsqlserver—sqlserver组—服务器名(serverNT),鼠标右键点击“数据库”,“所有任务”—“导入数据”。
2.进入“DTS导入/导出向导”界面,点击“下一步”。
3.进入“DTS导入/导出向导”的“选择数据源”步骤,选择“使用sqlserver身份验证”,录入用户名sa,密码根据自己的设置情况录入,一般为空。
选择源数据库。
4.点击“下一步”,进入“DTS导入/导出”的“选择目的”步骤,选择目的数据库。
5.点击“下一步”,进入“DTS导入/导出”的“指定表复制或者查询”步骤,选择“从源数据库复制表和视图”,下一步。
6.从列表中选择ufdata_006_2007数据库中的ua_user_ex表
7.点击“下一步”,进入“DTS导入/导出向导”的“保存、调度和复制包”步骤,选择“立即运行”,点击“下一步”。
8.点击“完成”按钮即可。
系统会提示操作是否成功。
9.导入数据库表成功后,重新升级2008年的账套数据库,升级正常。
注:
如果需要升级的账套只有一个年度,升级的时候报错,可以从999演示账套数据库中把该表导入到问题账套数据库中。
五、备份账套
问题1:
备份的时候提示“sqlserver无法打开备份设备”
原因:
在数据库表ua_account中显示错误。
解决:
打开查询分析器,在ufsystem数据库中找到用户表ua_account打开,把cacc_path字段的值修改正确。
问题2:
点击备份时,出现“临时备份文件C:
\DocumentsandSettings\Administrator\WINDOWS\TEMP\25100288\UFTMP\UFDATA.BAK打开失败”。
原因分析:
是按照这个路径找不到对应的文件。
解决方法:
按照提示的路径,把文件夹及文件补全。
如电脑中现在只能找到C:
\DocumentsandSettings\Administrator\WINDOWS,则在WINDOWS文件夹下建立temp文件夹,再在temp文件夹下建立25100288文件夹,再在其下建立uftmp文件夹,再新建一个文件,名称改为ufdata.bak。
六、恢复数据
问题1:
在没有备份的情况下,卸载了软件,但是账套数据文件存在,如何恢复数据?
引子:
通常情况下,应该提醒用户经常在系统管理中进行账套备份。
如果在没有备份的情况下,卸载了软件(或重装了系统),这时软件是安装在其他盘上,比如D盘。
若这两个文件存在的话,可以通过以下方法把数据恢复。
解决方法:
(1)、把zt991文件夹备份好,卸载干净后,重新安装软件;
(2)、在“系统管理”创建991账套,启用年份及行业性质都与原账套相同。
如果原来账套是多个年度的,则一定要建立年度账(比如001账套是2006年启用的,则要新建一个001账套,启用年份是2006年,并且要建立2007年和2008年的年度账)。
这样在软件安装目录下会形成一个文件夹zt991。
(3)、将sqlserver服务关闭(可在任务栏中使用“sqlserver服务管理器”进行服务停止,或在控制面板--管理工具--服务中将mssqlserver服务停用)
(4)、将已经备份出去的zt991文件夹覆盖新的zt991文件夹。
(5)、重新启动sqlserver服务和U6的服务,然后登录U6应用程序,即可看到原账套中的信息,确认信息无误后,及时进行数据备份。
问题2:
在系统管理中进行了账套备份,但是恢复账套的时候,提示“备份信息文件无效,恢复失败”。
引子:
在系统管理中进行账套备份,形成两个文件:
uferpact.lst(通uf2kact.lst)和ufdata.ba_。
所以当出现这个提示的时候,先对这两个文件进行操作。
首先检查ufdata.ba_是否可以解压缩,如果解压缩失败,说明物理文件破坏,这时备份文件无效了(这时就要考虑用问题1中的方法来解决了)。
如果解压缩成功,可以用以下两个方法来操作。
解决方法一:
还原数据
(1)、用产品自带的解压工具把ufdata.ba_文件解压。
解压工具D:
\U6SOFT\Admin\ufuncomp.exe。
双击这个文件,选择源文件,录入解压文件,把ufdata.ba_解压成ufdata.bak,点击“解压缩”按钮。
(2)、在系统管理中新建一个账套,假定账套号是001。
(3)、在sqlserver的企业管理器中,逐层展开树形结构,鼠标右键点击“数据库”,选择“所有任务”—“还原数据库”
(4)、进入“还原数据库”界面,从下拉列表中选择“还原为数据库ufdata_001_2008,“从设备”还原,然后点击“选择设备”。
(5)、进入“选择还原设备”,点击“添加”按钮,进入“选择还原目的”界面,点击“文件名”后的浏览按钮,选择ufdata.bak文件所在的路径。
然后点击“确定”按钮。
(6)、再点击“确定”按钮,又一次进入“还原数据库”界面,在“选项”页签下,选择“在现有数据库上强制还原”。
一定要注意逻辑文件名对应的“移至物理文件名”对应的路径是否正确。
点击“确定”就可以了。
注:
这样方法也适用于只有ufdata.ba_文件的情况下恢复数据,以及只对年度账数据进行恢复的情况。
解决方法二:
把现有运行正常的账套进行备份,然后用记事本的方式打开uferpact.lst文件,同时也打开恢复失败的账套的uferpact.lst文件,参照自己备份出来的账套的uferpact.lst文件,修改恢复失败的账套的uferpact.lst文件,除了保留账套号外,其余不一致的地方都要修改。
七、设置非自然会计期间
问题现象:
会计期间不是自然的会计月(每月1号到每月的31),而是每月的月中到下个月的月中。
例如设置每月的26号到下一月的25号为一个会计期间。
在建立账套的过程中应该如何设置?
处理步骤:
1、以admin进入系统管理,点击【账套】——建立,弹出创建账套的界面,如图1-1所示。
2、点击“会计期间设置”,进入“会计日历—建账”界面,双击启用月份对应的结束日期,在会计日历中修改为5.25号即可。
图1-2修改会计日期
注意:
如果建立账套过程已经完成,要修改会计期间,则以