所在的公司虽然是个大公司,但是发现这里的很多资料都停留在用WORD和EXCEL文件形式在存放,存取工作极端不方便。公司也有开始利用OA系统在管理某些文档,可是自我觉得IBM的软件产品,在易用性方面的确不如Microsoft的东西(比如ASP),其.最大的弊端在于,公司现行LOTUS/NOTES对于知识管理这一方面,认识实在太肤浅。
在此一背景下,产生此文--使用ASP建立起真正的信息管理系统,集成做进原开发之WEB应用系统。
第一部分,SAP外挂程序的集中化管理:
一,需求分析:
日常工作,大量的SAP外挂程序堆积,受限于EXCEL,WORD的不方便性以及不能协同工作,并未进行整理归类。
观察原始ISO规范文档,此类需求无非在于以下描述:
程序名、Tcode(事务码)、创建者、创建日期、授权用户或单位、功能描述、重要逻辑、修改人、修改日期、修改原因、修改内容描述、程序源码、SAP-Profile/Role等;
二,数据库设计:
因为均为文档型数据,结合考虑数据移植的方便性,后台采取ACCESS数据库,独立于SAP文件夹下。数据库名"SAP",表名"sap_pro_adon"(考虑数据库结构二次利用的方便性,表内字段采取通用名称,具体意义在‘备注’中标明。以缩短开发周期)
字段:ID(自动编号)---------------------------s_id
CXMC(程序名称)---------------------s_a
TCOD(事务码)------------------------s_b
CRNM(创建者)------------------------s_c
CRDT(创建日期)---------------------s_d
AUTH(授权用户或所在单位)-------s_e
DESC(功能描述)---------------------s_f
IMLG(重要逻辑)-----------------------s_g
MDRS(修改原因)---------------------s_h
MDDS(修改内容描述)---------------s_i
MDNM(修改人)------------------------s_j
MDDT(修改日期)---------------------s_k
SOCE(程序源码)---------------------s_l
PRFL(profile/ROLE权限相关)----s_m
PRIP(最后操作机器IP地址记录)-s_n
LSDT(最后操作时间)---------------s_o
FTOT(备用)---------------------------s_p
三,系统功能实现:
首页-----------index.asp(总览,可见分页好的所有程序详细情况,在此应该有个搜索功能的界面,供用户查找。可以直接点击“程序名字”看源码,点击“添加记录”实现新增程序或新增记录,并实现在此提醒用户先搜索看系统内是否已经有该程序的记录而无需新增。点击“编辑”可看详情【需要授权给部分用户】,点击“删除”可以删除该程序记录【仅仅开放给管理员使用】);
源码显示页--pro_sourcelist.asp(按标准格式实现源码列印);
编辑页面-----pro_edit.asp(既是单个程序的详细情况描述,也可以在此实现编辑);
删除页面-----pro_delete.asp(给操作者一个提示,确认删除,并在此限定权限,此页面将调用多个页面的功能);
添加记录-----pro_add.asp;
EXCEL导入---pro_readEXCEL.asp;
分页代码------pageList.asp
四,对于pro_add.asp添加记录页面:
需要用户手工输入的字段:
CXMC,
TCOD,
CRNM(默认为当前登录者的姓名,可修改),
CRDT(默认为当前系统时间,可修改),
AUTH,
DESC,
IMLG,
SOCE,
PRFL.
系统自取值的字段:
ID(数据库自动添加,无须做任何动作);
PRIP(录入者机器IP地址);
LSDT(最后操作时间)
变化:因为主管要求,需要程式的最终显示详细情况要遵循目前采用的"规格说明书",故需要重新设计数据库,其字段按照“SAP外挂程式规格说明书”的需求来设计。
01编写日期:
02被授权人:
03批准人:
04模块:
05程序名称:
06事务码:
07功能简述:
08选择屏幕定义:
09报表输出格式:
10program flow chart:
11表(新建):
12屏幕输入选项:
13数据流程:
==============
表内默认搜集字段:
14录入人:
15录入者机器IP:
16录入时间:
17修改人:
18修改内容:
19修改需求提出者:
20修改录入时间
+++++++++++++++++
心情记录:很烦
++++++++++++++++++++++++++
EXCEL导入数据库:
on error resume next
dim FileName
Dim conn, rs
set conn=CreateObject("ADODB.connection")
conn.Open "Driver={Microsoft Excel Driver (*.xls)};" & _
"DriverId=790;" & _
"Dbq=" & server.mappath(""&FileName&"") & ";" & _
"DefaultDir=C:/"
rs.Open "Select * From [Sheet1$]",conn, 2, 2
if rs.eof then
response.write "Excel表中无纪录"
else
set connDB = Server.CreateObject("ADODB.Connection")
DBPath = Server.MapPath("sap_mis.mdb")
connDB.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & DBPath
Set RsDB = Server.CreateObject("ADODB.Recordset")
SqlDB="Select * from sap_adon_record"
RsDB.open sqlDB,connDB,1,3
do while not rs.eof '利用循环读出数据
' response.write rs(0)&" "
' response.write rs(1)&" "
' response.write rs(2)&" "
' response.write rs(3)&" "
' response.write rs(4)&" "
' response.write "<br>"
RsDB.addnew
RsDB("f_name")=rs(0)
RsDB("f_year")=rs(1)
RsDB("f_language")=rs(2)
RsDB("f_credit")=rs(3)
RsDB("f_filmgb")=rs(4)
RsDB("f_direc")=rs(5)
RsDB("f_rule")=rs(6)
RsDB("f_format")=rs(7)
RsDB("f_quality")=rs(8)
RsDB("f_path")=rs(9)
RsDB("f_text")=rs(10)
RsDB("f_time")=rs(11)
RsDB("f_ip")=rs(12)
Rs.update
RsDB.movenext
rs.movenext
loop
'response.redirect FileName
end if
RsDB.movefirst
if RsDB.eof then
response.write "数据库中无记录"
else
response.redirect "index.asp"
end if
RsDB.close
set RsDB=nothing
rs.close
set rs=nothing
set conn=nothing
%>
else
%>
<head>
<title>上传EXCEL文件</title>
<link rel="stylesheet" rev="stylesheet" href="css.css" type="text/css" media="all">
</head>
<body>
<p align=center>SAP程式管理模块</p>
<tr>
<td valign="top">
<table width="90%" align="center" cellpadding="0" cellspacing="0">
<form method="post" name="form" action="readExcel.asp?action=new">
<tr>
<td align="center"><span style="color: #9999CC">EXCEL文件: filmDB/</span>
<input type="text" name="efile" value="excel.xls"> </td>
<tr>
<td align="center">
<a href="index.asp">点击查看已有记录</a>
<input type="submit" value="提交上传!">
</td>
</tr>
</form>
</table>
<table width="90%" align="center" cellpadding="0" cellspacing="0">
<tr>
<td align="center">
<span style="color: #990099">EXCEL文件格式说明:</span>
</td>
<tr>
<td align="center">
<span style="color: #9900CC">格式说明:xx/xx/xx/xx/</span><span style="color: #9900CC">xx/xx/xx/xx</span><span style="color: #9900CC">xx/xx/xx/xx</span><span style="color: #9900CC">xx/xx/xx/xx</span><span style="color: #9900CC">xx/xx/xx/xx</span><span style="color: #9900CC">xx/xx/xx/xx</span></td>
</tr>
</table>
</td>
</tr>
</table>
</body>
</html>
<%
end if
%>