بتاريخ: 21 أكتوبر 200619 سنة comment_81235 فضلا" ... كيف أستطيع أن أحصل على البيانات الموجودة فى SIT Segments ليتم أجراء العمليات الحسابية فى Payroll وهل تستخدم SQL لقراءة هذه البيانات وأمرراها للـFast Formula فماهى أوامر SQL لقراءة بيانات SIT Segments تقديم بلاغ
بتاريخ: 22 أكتوبر 200619 سنة comment_81285 اخي aliosm جرب المثال التالي Create or replace FUNCTION CALC_VALUE ( [color=red]p_business_group_id[/color] per_all_assignments_f.business_group_id%TYPE, [color=red]p_assignment_id[/color] per_all_assignments_f.assignment_id%TYPE, any_other_parameters NUMBER) RETURN NUMBERIS CURSOR c1 IS SELECT criteria.segment1 num_seg,criteria.segment2 char_seg,TO_DATE (criteria.segment3, 'yyyy/mm/dd hh24:mi:ss') date_seg FROM [color=blue]per_special_info_types sp_type, per_all_assignments_f assi, fnd_id_flex_structures flex, per_person_analyses analysis, per_analysis_criteria criteria[/color] WHERE sp_type.business_group_id = [color=red]p_business_group_id[/color] AND sp_type.enabled_flag = 'Y' AND sp_type.id_flex_num = flex.id_flex_num AND flex.id_flex_structure_code = '[color=red]SIT NAME[/color]' AND flex.enabled_flag = 'Y' AND flex.id_flex_code = '[color=red]PEA[/color]' AND flex.application_id = [color=red]800[/color] AND analysis.person_id = assi.person_id AND analysis.business_group_id = sp_type.business_group_id AND analysis.business_group_id = assi.business_group_id AND analysis.id_flex_num = sp_type.id_flex_num AND analysis.analysis_criteria_id = criteria.analysis_criteria_id AND criteria.id_flex_num = sp_type.id_flex_num AND criteria.enabled_flag = 'Y' AND criteria.segment5 = 'YES' AND assi.assignment_id = [color=red]p_assignment_id[/color]; val number;BEGIN FOR rec IN c1 LOOP calculate whatever you want here; END LOOP; RETURN val;EXCEPTION WHEN OTHERS THEN RETURN -1;END calc_value;-------------------------------------------------------------1-link this function with a formula using "formula functions" screenp_business_group_id and p_business_group_id are context parameters2-use the formula in your payroll تقديم بلاغ
بتاريخ: 22 أكتوبر 200619 سنة كاتب الموضوع comment_81303 شكر وتقدير لحسن تعاونكم وساحاول أجرب المثال وأفيدكم بالنتائج تقديم بلاغ
بتاريخ: 29 مارس 200718 سنة comment_95451 تستطيع بشكل اسهل من عمل فنكشن والطريقة كالتاليتستخدم Database Items اللي موجودة في شاشة Payroll Formulaلكن قبل لازم تشغل اسمها Create SIT database itemبعدها راح تلقى اسم SIT اللي سويته يظهر لك مع Database items اسم process ماني متاكد منه لكن ادخل Create وسظهر لك اثنين على ما اذكر هو واحد منهاone for SITone for DF تقديم بلاغ
انضم إلى المناقشة
يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.