f_rst_subdisplay.srf 2.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. $PBExportHeader$f_rst_subdisplay.srf
  2. $PBExportComments$科目显示
  3. global type f_rst_subdisplay from function_object
  4. end type
  5. forward prototypes
  6. global function string f_rst_subdisplay (string arg_subid, string arg_name)
  7. end prototypes
  8. global function string f_rst_subdisplay (string arg_subid, string arg_name);//凭证明细科目代码显示
  9. String rst_str = '',parent_name,parent_subid
  10. Long len_subid,i,ds_subjecttree_cnt
  11. ds_subjecttree_cnt = ds_subjecttree.RowCount()
  12. len_subid = Len(arg_subid)
  13. DO WHILE len_subid > s_sys_accset.step1
  14. CHOOSE CASE len_subid
  15. CASE s_sys_accset.step1 + s_sys_accset.step2
  16. rst_str = '→'+rst_str
  17. parent_subid = Left(arg_subid,s_sys_accset.step1)
  18. FOR i = 1 TO ds_subjecttree_cnt
  19. IF parent_subid = ds_subjecttree.Object.subid[i] THEN
  20. parent_name = ds_subjecttree.Object.Name[i]
  21. EXIT
  22. END IF
  23. NEXT
  24. rst_str = parent_name + rst_str
  25. len_subid = Len(parent_subid)
  26. CASE s_sys_accset.step1 + s_sys_accset.step2 + s_sys_accset.step3
  27. rst_str = '→'+rst_str
  28. parent_subid = Left(arg_subid,s_sys_accset.step1 + s_sys_accset.step2)
  29. FOR i = 1 TO ds_subjecttree_cnt
  30. IF parent_subid = ds_subjecttree.Object.subid[i] THEN
  31. parent_name = ds_subjecttree.Object.Name[i]
  32. EXIT
  33. END IF
  34. NEXT
  35. rst_str = parent_name + rst_str
  36. len_subid = Len(parent_subid)
  37. CASE s_sys_accset.step1 + s_sys_accset.step2 + s_sys_accset.step3 + s_sys_accset.step4
  38. rst_str = '→'+rst_str
  39. parent_subid = Left(arg_subid,s_sys_accset.step1 + s_sys_accset.step2 + s_sys_accset.step3)
  40. FOR i = 1 TO ds_subjecttree_cnt
  41. IF parent_subid = ds_subjecttree.Object.subid[i] THEN
  42. parent_name = ds_subjecttree.Object.Name[i]
  43. EXIT
  44. END IF
  45. NEXT
  46. rst_str = parent_name + rst_str
  47. len_subid = Len(parent_subid)
  48. CASE s_sys_accset.step1 + s_sys_accset.step2 + s_sys_accset.step3 + s_sys_accset.step4 + s_sys_accset.step5
  49. rst_str = '→'+rst_str
  50. parent_subid = Left(arg_subid,s_sys_accset.step1 + s_sys_accset.step2 + s_sys_accset.step3 + s_sys_accset.step4)
  51. FOR i = 1 TO ds_subjecttree_cnt
  52. IF parent_subid = ds_subjecttree.Object.subid[i] THEN
  53. parent_name = ds_subjecttree.Object.Name[i]
  54. EXIT
  55. END IF
  56. NEXT
  57. rst_str = parent_name + rst_str
  58. len_subid = Len(parent_subid)
  59. CASE s_sys_accset.step1 + s_sys_accset.step2 + s_sys_accset.step3 + s_sys_accset.step4 + s_sys_accset.step5 + s_sys_accset.step6
  60. rst_str = '→'+rst_str
  61. parent_subid = Left(arg_subid,s_sys_accset.step1 + s_sys_accset.step2 + s_sys_accset.step3 + s_sys_accset.step4 + s_sys_accset.step5)
  62. FOR i = 1 TO ds_subjecttree_cnt
  63. IF parent_subid = ds_subjecttree.Object.subid[i] THEN
  64. parent_name = ds_subjecttree.Object.Name[i]
  65. EXIT
  66. END IF
  67. NEXT
  68. rst_str = parent_name + rst_str
  69. len_subid = Len(parent_subid)
  70. END CHOOSE
  71. LOOP
  72. rst_str = arg_subid+' '+rst_str+arg_name
  73. RETURN rst_str
  74. end function