【正文】
) CHOOSE CASE ename[i] CASE 39。 =dw_c_operator_grid =dw_c_operator_free =dw_c_operator_free i_title=操作員情況表 CASE c_corp =dw_c_corp_grid =dw_c_corp_free =dw_c_corp_free i_title=公司信息 END CHOOSE i_col=integer() //數(shù)據(jù)窗口的列數(shù) //注意:只有 dw_free 中掛的下拉數(shù)據(jù)窗口是帶 retrieve 參數(shù)的, dw_table, dw_print 均未帶 FOR i=1 TO i_col r_col = +string(i) + .Name // i代表第 i列 , 列名 . ename[i]=(r_col) //ename[i]放第 i列列名 . coltype[i]=(ename[i] + .ColType) col_width[i]=(ename[i] + .width) col_height[i]=(ename[i] + .height) col_y[i]=Double((ename[i] + .y)) col_height_t[i]=(ename[i] + ) col_y_t[i]=Double((ename[i] + )) if (ename[i],i_dwc)=1 then (sqlca) (39。) return 1 END CHOOSE END IF return 0 31 控件事件 腳本 W_sheet_input: Open! string r_modi,r_col,r_col_name integer i i_type= CHOOSE CASE i_type CASE 39。,39。) ((),39。,39。 messagebox(39。 END CHOOSE if =0 then CHOOSE CASE i_type CASE 39。c_operator39。today39。today39。39。 39。X 可修改 39。) END IF END IF set_tab_0() if =39。,39。 messagebox(39。保存成功 !39。提示 39。 THEN SET_TAB_0() ELSE set_tab_old() (()) (1) () (0,false) ((),true) END IF 刪除 cb_delete: clicked! INTEGER NET long R_ROW,r_count if not (i_row) then return Net = MessageBox( 提示 , 是 否 真 的 要 刪 除 所 選 中 的 行 ?, Exclamation!, YESNO!, 2) IF Net = 2 THEN return =false (i_row) gf_dw_count(dw_table,sle_count) 保存 cb_save: clicked! integer rtn, NET Net = MessageBox(提示 , 是否真的要保存 ?, Exclamation!, YESNO!, 1) IF Net 1 THEN return () IF ( ) 0 OR ( ) 0 THEN rtn = ( ) IF rtn = 1 THEN COMMIT USING SQLCA。amp。39。 + i_orig_sql + r_where_sql + 39。 + and like + r_name CASE c_supp_attr r_where_sql= where like + r_code amp。 r_where_sql= where like + r_code amp。 + and like + r_name CASE 39。c_func39。+ r_name +~39。+ r_code +~39。~39。 ~39。~39。 ~39。%39。39。該編碼已經(jīng)存在 ! 請(qǐng)重新輸入 !39。提示 39。 CASE c_supp_attr SELECT supp_attr_code INTO :r FROM c_supp_attr WHERE supp_attr_code= :r_code 。c_edu_level39。 SELECT postion_code INTO :r FROM c_postion WHERE postion_code= :r_code 。 CASE 39。39。編碼輸入重復(fù) ! 請(qǐng)重新輸入 !39。提示 39。X 可修改 39。 //窗口居中 Environment a Integer w,h GetEnvironment(a) w=PixelsToUnits(,xpixelstounits!) h=PixelsToUnits(,ypixelstounits!) move((w width)/2,(h height)/2) W_code: closequery! f_exit() 25 dw_table: clicked! (row) i_row=() IF i_row0 THEN (0,FALSE) (i_row,TRUE) i_code=(i_row, 1) if =39。 i_orig_sql=() i_col=integer() //數(shù)據(jù)窗口的列數(shù) get_tab_order() SET_TAB_0() =i_title + 39。+i_type) return END CHOOSE ( sqlca ) =39。,39。 =true =true 控件事件 腳本 24 W_code: Open! //確定數(shù)據(jù)窗口 dw_table 的 DATAOBJECT //確定窗口的標(biāo)題 //將 dw_table 的數(shù)據(jù)源 Select 描述賦予實(shí)例變量 String i_orig_sql i_type= CHOOSE CASE i_type CASE c_func =dw_c_func i_title=系統(tǒng)操作功能碼表 CASE c_postion =dw_c_postion i_title=操作員職位碼表 CASE c_edu_level =dw_c_edu_level i_title=學(xué)歷碼表 CASE c_supp_attr =dw_c_supp_attr i_title=往來(lái)單位屬性 CASE ELSE messagebox(39。amp。X 不修改 39。 END IF END IF END IF 窗口函數(shù) 2 get_tab_order() 參數(shù):無(wú) 返回值類(lèi)型:無(wú) integer j FOR j=1 TO i_col i_tab[j]=(j, 0) NEXT 窗口函數(shù) 3 set_tab_0() 參數(shù):無(wú) 返回值類(lèi)型:無(wú) integer j FOR j=1 TO i_col (j, 0) NEXT =39。) halt Else End If setpointer(arrow!) close(parent) 退出 cb_cancel: clicked! close(parent) 23 窗口名 W_code Message 參數(shù) 主要功能 碼表管理窗口 實(shí)例變量聲明 string i_type,i_code integer i_tab[30] long i_row,i_col string i_orig_sql string i_str_precolumn= integer i_int_clicktime=0 string i_title //窗口的標(biāo)題變量 窗口函數(shù) 1 f_exit() 參數(shù):無(wú) 返回值類(lèi)型:無(wú) INTEGER NET,RTN () IF ( ) 0 OR ( ) 0 THEN Net = MessageBox(提示 , 是否需要保存所修改的信息 ?, Exclamation!, YESNO!, 1) IF Net = 1 THEN rtn = ( ) IF rtn = 1 THEN COMMIT USING SQLCA。 確定 cb_set: clicked! string r_dept_day,r_date1 string r_date,r_dept string r_dept_month_date r_date= r_dept=(1,1) g_dept=r_dept g_date=r_date setpointer(hourglass!) open(w_genapp_frame) If wf_change_menu(g_menu_name)0 Then messagebox(g_sys_name,39。 (m_crm) f_set_purview(r_menu_name,m_crm) case else Return 1 end choose Return 0 控件事件 腳本 W_set: Open! ( sqlca ) (0) (1,1,g_dept) =string(today()) g_date= Environment a Integer w,h GetEnvironment(a) w=PixelsToUnits(,xpixelstounits!) h=PixelsToUnits(,ypixelstounits!) move((w width)/2,(h height)/2) =g_sys_name + 39。 choose case ls_menu case 39。 //操作人員的打印權(quán)限 SELECT print_yn,menu_name INTO :g_print,:g_menu_name FROM c_func WHERE func_code = :r_func_code 。 系統(tǒng)登錄☆ 39?!?39。 NEXT CASE ELSE END CHOOSE f_sql() return r_return 通過(guò)分析,設(shè)計(jì) 《存貨子系統(tǒng)》 的通用窗口。supp_code39。39。c_supp39。) delete from c_operator where = :r_primary[1] 。 FOR r_row=1 TO r_rowcount r_primary[1]=(r_row,39。 r_count=1 r_primary[r_count]=39。 if r_select0 then (r_row, TRUE) r_return=r_return + 1 end if NEXT CASE ELSE END CHOOSE return r_return 函數(shù)名 f_dw_test_repeat_del 返回值類(lèi)型 long 函數(shù)功能 刪除導(dǎo)入導(dǎo)出中的重復(fù)數(shù)據(jù) 參數(shù)定義 r_type:string r_dw: datawindow r_sle: singlelineedit 腳本 long r_row,r_rowcount,r_count,r_select,r_return=0 string r_primary[] r_type=lower(r_type) r_rowcount=() CHOOSE CASE r_type CASE 39。oper_code39。39。c_operator39。導(dǎo)入導(dǎo)出表初始成功 !39。提示 39。)。,39。,39。,39。,39。,39。,39。,39。,39。,39。, 39。,39。,39。,39。,39。,39。 INSERT INTO save_import VALUES ( 39。39。39。0139。2020010139。2020010139。00039。0039。 人員信息39。0139。c_operator39。D:\io\data39。0239。0139。dw_c_operator_grid39。c_operator39。00139。)。,39。 insert into c_fla