导出报表为EXCEL无法获得注册表信息

admin 发表于 金蝶技术 分类,标签:
0

系统环境:Windows 2003 Server
金蝶版本:V10.4
其他应用:极通远程

故障原因简单分析:引出金蝶报表KDS文件正常,故障仅出现在引出Excel时,判断应该是Excel的注册表权限不足,由于使用的是极通远程部署,极通用户是绑定系统用户的,默认使用了Remote Desktop Users用户组。

解决方案:为极通绑定的系统帐户添加到管理员组,故障解决,但这种方法具有较低的安全性,应该需要在Excel的注册表上添加权限,但不方便查找注册表,也就不了了之了。

金蝶数据库自动备份及压缩工具AU3源码

admin 发表于 金蝶技术 分类,标签: ,
1

金蝶账套管理自带数据库定时自动备份工具,但是没有账套压缩打包功能。
本工具AU3源码功能:在数据库服务器运行金蝶客户端,金蝶退出后自动备份数据库并使用WinRAR压缩。
源码包:本地下载
已知BUG:较大的数据库完全备份会出错,错误原因未知,希望有人能完善该代码。

#Region AutoIt3Wrapper 预编译参数(常用参数)
#AutoIt3Wrapper_icon=main.ico ;图标,支持EXE,DLL,ICO
#AutoIt3Wrapper_outfile=金蝶主控台.exe ;输出文件名
#AutoIt3Wrapper_Compression=4 ;压缩等级
#AutoIt3Wrapper_UseUpx=Y ;使用压缩
#AutoIt3Wrapper_Res_Comment=退出金蝶,数据库自动备份压缩 ;注释
#AutoIt3Wrapper_Res_Description=Kingdee K/3 Main ;详细信息
#AutoIt3Wrapper_Res_Fileversion=1.0.0.0 ;版本
#AutoIt3Wrapper_Res_LegalCopyright=仙童工作室 ;版权
#AutoIt3Wrapper_Run_Obfuscator=N ;代码加密
#AutoIt3Wrapper_Run_AU3Check=Y ;语法检查
#EndRegion AutoIt3Wrapper 预编译参数设置完成
#cs __________________________________

Au3 版本:
脚本作者:仙童
Email:admin@thtznet.com
MSN:thtznet@live.com
脚本版本:1.0.0.0
脚本功能:退出金蝶,数据库自动备份压缩

#ce _______________脚本开始_______________
If FileExists ("opt.ini") Then
;-----------------声明全局变量-----------------
$IconHide = IniRead("opt.ini", "system", "iconhide", "N")
$blockinput = IniRead("opt.ini", "system", "blockinput", "Y")
$shutdown = IniRead("opt.ini", "system", "shutdown", "N")
$isrunclient = IniRead("opt.ini", "K/3", "isrunclient", "Y")
$InstallDir = IniRead("opt.ini", "K/3", "InstallDir", @ProgramFilesDir&"\Kingdee\K3ERP\K3Express\")
$issql = IniRead("opt.ini", "mssql", "issql", "Y")
$uid = IniRead("opt.ini", "mssql", "uid", "sa")
$pwd = IniRead("opt.ini", "mssql", "pwd", "")
$ais = IniRead("opt.ini", "mssql", "ais", "")
$noinit = IniRead("opt.ini", "mssql", "noinit", "Y")
$sqldisk = IniRead("opt.ini", "mssql", "sqldisk", @HomeDrive&"\")
$bakname = IniRead("opt.ini", "mssql", "bakname", "Kingdee.bak")
$israr = IniRead("opt.ini", "winrar", "israr", "Y")
$rardisk = IniRead("opt.ini", "winrar", "rardisk", @HomeDrive&"\")
$rarname = IniRead("opt.ini", "winrar", "rarname", "Y")
$date = IniRead("opt.ini", "winrar", "date", "YYMMDD")
$backdel = IniRead("opt.ini", "winrar", "backdel", "Y")
$password = IniRead("opt.ini", "winrar", "password", "N")
;----------------是否隐藏图标----------------
If $IconHide="Y" Then
Opt("TrayIconHide", 1)
EndIf
;----------------运行金蝶客户端--------------
If $isrunclient="Y" Then
If FileExists ($InstallDir&"kdmain.exe") Then
TrayTip("温馨提示:", "当前正在运行金蝶主控台,请稍后...", 10, 1)
RunWait($InstallDir & "kdmain.exe", $InstallDir, Default)
Else
MsgBox(16, "路径错误", "没有找到金蝶主控台,请确认配置文件是否正确!", 10)
Exit
EndIf
Opt("TrayIconHide", 1)
EndIf
;-----------------备份数据库开始--------------
If $issql="Y" Then
If ProcessExists("sqlservr.exe") Then
If $blockinput="Y" Then
BlockInput(1)
EndIf
Opt("TrayIconHide", 0)
TrayTip("温馨提示:", "当前正在备份金蝶K/3数据库,请稍后...", 100, 1)
$connection = ObjCreate( "ADODB.Connection" )
$DSN = "DRIVER={SQL Server};SERVER=;DATABASE="&$ais&";UID="&$uid&";PWD="&$pwd&";"
$connection.Open($DSN)
$recordset = ObjCreate( "ADODB.RecordSet" )
Select
Case $noinit="Y"
$bakname = "F"&$bakname
$recordset.Open( "BACKUP DATABASE ["&$ais&"] TO DISK = '"&$sqldisk&$bakname&"' WITH NOFORMAT", $connection )
Case $noinit="N"
$bakname = "D"&$bakname
$recordset.Open( "BACKUP DATABASE ["&$ais&"] TO DISK = '"&$sqldisk&$bakname&"' WITH DIFFERENTIAL,NOFORMAT", $connection )
EndSelect
$connection.close
;--------------压缩数据库开始--------------
If $israr="Y" Then
TrayTip("温馨提示:", "当前正在压缩金蝶K/3数据库,请稍后...", 100, 1)
Select
Case $backdel="Y"
If $password="N" Then
RunWait(@ComSpec & " /C " & "plugin.dll a -df -k -ag"&$date&"-NN "&$rardisk&$rarname&" "&$sqldisk&$bakname, @ScriptDir , @SW_HIDE)
Else
RunWait(@ComSpec & " /C " & "plugin.dll a -df -p"&$password&" "&"-k -ag"&$date&"-NN "&$rardisk&$rarname&" "&$sqldisk&$bakname, @ScriptDir , @SW_HIDE)
endIf
Case $backdel="N"
If $password="N" Then
RunWait(@ComSpec & " /C " & "plugin.dll a -k -ag"&$date&"-NN "&$rardisk&$rarname&" "&$sqldisk&$bakname, @ScriptDir , @SW_HIDE)
Else
RunWait(@ComSpec & " /C " & "plugin.dll a -p"&$password&" "&"-k -ag"&$date&"-NN "&$rardisk&$rarname&" "&$sqldisk&$bakname, @ScriptDir , @SW_HIDE)
endIf
EndSelect
BlockInput(0)
TrayTip("温馨提示:", "已完成数据库备份压缩,可以安全关机!", 10, 1)
MsgBox(4096, "完成", "数据库备份压缩已完成!",5)
Else
TrayTip("温馨提示:", "已完成数据库备份,可以安全关机!", 10, 1)
MsgBox(4096, "完成", "数据库备份已完成!",5)
EndIf
Else
MsgBox(16, "数据库错误", "数据库服务没有启动!",10)
Exit
EndIf
;--------------压缩数据库结束--------------
EndIf
;--------------备份完成自动关机--------------
If $shutdown="Y" Then
Shutdown(1)
EndIf
Else
MsgBox(16, "配置文件错误", "请确认配置文件是否存在!",5)
EndIf
Exit

金蝶K/3发票已传递的反初始化应收应付解决方案

admin 发表于 金蝶技术 分类,标签: ,
0

对于已经启用应收应付模块后,供应链发票已经被传递到应收应付系统的反初始化需要删除所有的应收应付单据和必须反勾稽供应链发票。
对于反初始化应收应付模块,删除本身模块产生的单据完全合乎情理,但是需要涉及到供应链模块的发票需要全部反勾稽,在某些情况下客户不愿意这么做,而且没有批量反勾稽,工作量巨大,使用SQL后台修改可以很轻松的解决这个问题:
在查询分析器里运行下列语句:
delete t_rp_contact where frp=1 ;应付模块
delete t_rp_contact where frp=0 ;应收模块
以上语句会直接清空应收应付模块里的发票而不影响供应链模块内的发票。

解决MSSQL 2008安装”性能计数器注册表配置单元一致性”失败

admin 发表于 金蝶技术 分类,标签: ,
0

重新生成性能计数器库值:
要在 Windows Server 2003 重新生成所有的性能计数器(包括扩展的和第三方计数器),请在命令提示符处键入以下命令:
cd \windows\system32
lodctr /R
注意:/R 是大写。

K/3 10.4 HR套打无法显示数据的奇怪故障

admin 发表于 金蝶技术 分类,标签: , ,
0

今天走了趟常熟永新电子,该公司之前一直反应HR套打无法正常使用,具体表现为HR套打发布了以后使用数据预览没有显示任何的动态数据,只有固定文本和边框,连使用系统内置的套打都无法显示。同事把帐套拷贝回公司使用xp环境搭建的K/3HR平台没有出现故障,初步判断排除帐套问题。永新电子的服务器使用环境比较复杂,有域控有内部的网站和一些微软的应用程序,站点较多,IIS配置混杂。没有办法,在IIS里一个一个看配置,还开了xp环境下虚拟机进行IIS环境对比,但是由于03和xp的IIS实在版本相差太大,看来半天还是没有看出来,后来不知道怎么想到在给K3HRMS虚拟站点下添加了一个Everyone权限,搞定了,套打数据可以取数了,看来下手表,耗时2个小时,不过总算凑巧排除了故障。后来仔细想想有可能和服务器使用的域控环境有关,有可能没有添加数据库权限进去,也不知道金蝶公司那里有没有类似的案例发生,在安装说明文档上只字未提。