請問如何寫入修改日期時間?

CodeCharge Studio 2.x, 3.x, 4.x, 5.x
回覆文章
asongo
文章: 33
註冊時間: 2006-02-13 21:24:24
來自: 高雄市
聯繫:

請問如何寫入修改日期時間?

文章 asongo »

我在update_date欄位的Before Show的事件中寫入下列事件碼
//Custom Code @27-2A29BDB7
// -------------------------
global $supplier;
global $DBdoc;
if ($supplier->EditMode)
{
$supplier->update_date->SetValue(CurrentDateTime);
}
else
{
$supplier->update_date->SetValue(CurrentDateTime);
}
// -------------------------
//End Custom Code
可是update_date欄位值卻是01/01/1970 08:00:00 ,而抓不到當時時間,請問哪裡錯了呢?
yehlu
Site Admin
文章: 3245
註冊時間: 2004-04-15 17:20:21
來自: CodeCharge Support Engineer

我的做法

文章 yehlu »

1.把那些欄位設為 hidden 且預設 Required NO
2.key_stamp,mod_stamp 日期欄位設為 TEXT 的型式(MySQL 的資料庫格式為datetime)
3.在 Record 中加入 Before Build Insert 及 Before Build Update 這2個事件
4.Before Build Insert 輸入下列程式碼
$cust_level->ds->key_stamp->SetValue(date("Y-m-d H:i:s"));
$cust_level->ds->key_users->SetValue(CCGetUserID());
$cust_level->ds->mod_stamp->SetValue(date("Y-m-d H:i:s"));
$cust_level->ds->mod_users->SetValue(CCGetUserID());
5.Before Build Update 輸入下列程式碼
$cust_level->ds->mod_stamp->SetValue(date("Y-m-d H:i:s"));
$cust_level->ds->mod_users->SetValue(CCGetUserID());
註 $cust_level 是每個Record 的資料庫物件,
如event 裡的 global $cust_level; //Compatibility
key_users 是新增人員
key_stamp 是新增時間
mod_users 是異動人員
mod_stamp 是異動時間
asongo
文章: 33
註冊時間: 2006-02-13 21:24:24
來自: 高雄市
聯繫:

如何新增自定事件碼?

文章 asongo »

在 Record 中加入 Before Build Insert 及 Before Build Update 這2個事件
因為我在欄位的Properties裡的Server的events找不到以上2種events,只有On validate與Before Show ,不知要如何新增Before Build Insert 及 Before Build Update 這2個事件 ?
yehlu
Site Admin
文章: 3245
註冊時間: 2004-04-15 17:20:21
來自: CodeCharge Support Engineer

您弄錯囉

文章 yehlu »

這個不是在欄位的 event 是在 Record 的 event

我有寫的很清楚啊
3.在 Record 中加入 Before Build Insert 及 Before Build Update 這2個事件
asongo
文章: 33
註冊時間: 2006-02-13 21:24:24
來自: 高雄市
聯繫:

搞定了!

文章 asongo »

請恕我乃初學者眼拙,不知道Record也有event,感謝您不吝指導 :oops:
回覆文章

回到「CodeCharge Studio」