commonfunctionality.wsc

来自「Windows Web脚本开发指南/(美) Dan Heflin, Todd N」· WSC 代码 · 共 120 行

WSC
120
字号
<?xml version="1.0"?>
<component>

<registration
	description="CommonFunctionality"
	progid="CommonFunctionality.WSC"
	version="1.00"
	classid="{6b973da0-c4a8-11d3-8e91-00207810a286}"
>
</registration>

<public>
	<method name="getDatabaseObject">
	</method>
	<method name="formatDate">
		<PARAMETER name="longDate"/>
	</method>
	<method name="replaceQuotes">
		<PARAMETER name="dataField"/>
	</method>
	<method name="setRightsProperties">
		<PARAMETER name="userID"/>
		<PARAMETER name="addTimesheetDetail"/>
	</method>
	<property name="tables">
		<get/>
	</property>
	<property name="where">
		<get/>
	</property>
</public>

<implements type="ASP" id="ASP"/>

<script language="JScript">
<![CDATA[

var description = new CommonFunctionality;

function CommonFunctionality()
{

  this.getDatabaseObject = getDatabaseObject;
  this.formatDate = formatDate;
  this.replaceQuotes = replaceQuotes;
  this.setRightsWhereClause = setRightsProperties;
  this.get_tables = get_tables;
  this.get_where = get_where;
}

var tables = "";
var where = "";

function get_tables()
{
  return tables;
}

function get_where()
{
  return where;
}

function getDatabaseObject()
{
  var conn = Server.CreateObject("ADODB.Connection");
  var path = Server.MapPath("db") + "\\timesheet.mdb";
  conn.Open("Provider=Microsoft.Jet.OLEDB.3.51;Data Source=" + path + ";");
  return conn;
}

function formatDate(longDate)
{
  date = new Date(longDate);
  var formated = (date.getMonth() + 1) + "/" + date.getDate() + "/" + date.getFullYear();
  return formated;
}

function replaceQuotes(dataField, replaceType)
{
  var value = String(dataField);
  if (replaceType == "xml"){
    var regExp = new RegExp('"');
    result = value.replace(regExp, "&quot;");
  }
  else{
    var regExp = new RegExp("'");
    result = value.replace(regExp, "''");
  }
  return result;
}

function setRightsProperties(userID, addTimesheetDetail){
  var conn = getDatabaseObject();

  where = "";
  tables = "";

  var rs = conn.Execute("select count(*) from ClientRights where UserID = '" + replaceQuotes(userID) + "'");
  if (rs(0) > 0){
      where = " TimesheetDetail.ClientID=ClientRights.RightID";
      if (addTimesheetDetail)
        tables = " INNER JOIN TimesheetDetail ON TimesheetList.FileID = TimesheetDetail.FileID"
      tables += ", ClientRights"  
  }
  rs = conn.Execute("select count(*) from  UserRights where UserID = '" + replaceQuotes(userID) + "'");
  if (rs(0) > 0){
      if (where != "")
        where += " and ";

      where += "TimesheetList.CreatedBy=UserRights.RightID";
      tables += ",  UserRights"
  }

}
]]>
</script>

</component>

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?