123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105 |
- $PBExportHeader$f_find_emp.srf
- global type f_find_emp from function_object
- end type
- forward prototypes
- global function integer f_find_emp (string arg_empcode, ref s_empinfo arg_s_emp)
- end prototypes
- global function integer f_find_emp (string arg_empcode, ref s_empinfo arg_s_emp);Int rslt = 1
- Long cnt = 0
- String ls_empcode,ls_empname,ls_find_code
- String ls_cardcode,ls_sex
- Long ll_empid,ll_deptid,ll_jobid
- Boolean if_find = FALSE
- IF Trim(arg_empcode) = '' THEN
- rslt = 0
- GOTO ext
- END IF
- SELECT u_rs_empinfo.empid,
- u_rs_empinfo.empname,
- u_rs_empinfo.empcode,
- u_rs_empinfo.cardcode,
- u_rs_empinfo.sex,
- u_rs_empinfo.deptid,
- u_rs_empinfo.jobid
-
- INTO :ll_empid,
- :ls_empname,
- :ls_empcode,
- :ls_cardcode,
- :ls_sex,
- :ll_deptid,
- :ll_jobid
- FROM u_rs_empinfo
- Where ( empcode = :arg_empcode OR empname = :arg_empcode );
- IF sqlca.SQLCode <> 0 THEN
-
- IF Pos(Trim(arg_empcode),'%') = 0 THEN
- ls_find_code = '%'+ Trim(arg_empcode) + '%'
- ELSE
- ls_find_code = Trim(arg_empcode)
- END IF
-
- SELECT count(*) INTO :cnt
- FROM u_rs_empinfo
- Where ( empcode Like :ls_find_code OR empname Like :ls_find_code );
- IF sqlca.SQLCode <> 0 THEN
- rslt = 0
- GOTO ext
- END IF
- IF cnt <> 1 THEN
- rslt = 0
- GOTO ext
- ELSE
- SELECT u_rs_empinfo.empid,
- u_rs_empinfo.empcode,
- u_rs_empinfo.empname,
- u_rs_empinfo.cardcode,
- u_rs_empinfo.sex,
- u_rs_empinfo.deptid,
- u_rs_empinfo.jobid
- INTO :ll_empid,
- :ls_empcode,
- :ls_empname,
- :ls_cardcode,
- :ls_sex,
- :ll_deptid,
- :ll_jobid
- FROM u_rs_empinfo
- Where ( empcode Like :ls_find_code OR empname Like :ls_find_code );
- IF sqlca.SQLCode <> 0 THEN
- rslt = 0
- GOTO ext
- ELSE
- if_find = TRUE
- END IF
- END IF
- ELSE
- if_find = TRUE
- END IF
- IF if_find THEN
- arg_s_emp.empid = ll_empid
- arg_s_emp.empcode = ls_empcode
- arg_s_emp.empname = ls_empname
- arg_s_emp.cardcode = ls_cardcode
- arg_s_emp.cardcode = ls_sex
- arg_s_emp.deptid = ll_deptid
- arg_s_emp.jobid = ll_jobid
- END IF
- ext:
- RETURN rslt
- end function
|