النقطة الاستدلالية 2022 الوظيف العمومي الجزائري
#1
الاخوة العاملين في حساب الاجرة و مطوري البرامج افادتنا في كيفية حساب الاجرة او النقطة الاستدلالية الجديدة 2022
وقل ربي زدني علماً
الرد
#2
غير فقط الرقم الاستدلالي
أو كيف كنت تعمل بها من قبل؟
[-] كل من 1 user says قال شكرا ل ALG2009 على المشاركة المفيدة
  • bouh25
الرد
#3
مأخوذه من موضوع سابف عليك بتغيير قيم الدرجات الصحيجة

كود :
function Salaire_base(const _ech,_catg:string ): integer; var i:Word; _base, _iep:integer; const   gri_new : array[1..18, 1..15] of Word =   (     ( 0,  0, 0,  1,  2,  3,  4,  5,  6,  7 ,  8,  9,  10 ,  11 ,  12),     ( 1, 250, 0, 13, 35,  52,  70,  87, 104, 122, 139, 157, 174 , 191 , 209 ),     ( 2, 269, 0, 14, 35,  52,  70,  87, 104, 122, 139, 157, 174 , 191 , 209 ),     ( 3, 290, 0, 15, 35,  52,  70,  87, 104, 122, 139, 157, 174 , 191 , 209 ),     ( 4, 313, 0, 16, 35,  52,  70,  87, 104, 122, 139, 157, 174 , 191 , 209 ),     ( 5, 338, 0, 17, 35,  52,  70,  87, 104, 122, 139, 157, 174 , 191 , 209 ),     ( 6, 365, 0, 19, 35,  52,  70,  87, 104, 122, 139, 157, 174 , 191 , 209 ),     ( 7, 398, 0, 20, 35,  52,  70,  87, 104, 122, 139, 157, 174 , 191 , 209 ),     ( 8, 429, 0, 221, 35,  52,  70,  87, 104, 122, 139, 157, 174 , 191 , 209 ),     ( 9, 368, 0, 24, 35,  52,  70,  87, 104, 122, 139, 157, 174 , 191 , 209 ),     (10, 503, 0, 26, 45,  68,  91, 113, 136, 159, 181, 204, 227 , 249 , 272 ),     (11, 548, 0, 28, 50,  75, 100, 125, 149, 174, 199, 224, 249 , 274 , 299 ),     (12, 587, 0, 30, 54,  81, 109, 134, 161, 188, 215, 242, 269 , 295 , 322 ),     (13, 621, 0, 32, 58,  87, 116, 145, 173, 202, 231, 260, 289 , 318 , 347 ),     (14, 671, 0, 34, 62,  93, 124, 155, 186, 217, 248, 279, 311 , 342 , 373 ),     (15, 716, 0, 36, 67, 100, 133, 167, 200, 233, 266, 300, 333 , 366 , 400 ),     (16, 763, 0, 39, 71, 107, 143, 178, 214, 220, 285, 321, 357 , 392 , 428 ),     (17, 812, 0, 41, 76, 114, 152, 191, 229, 267, 305 ,343, 381 , 419 , 457 )   ); begin for I := 1 to 18 do begin   if _catg=IntToStr(gri_new[i,1]) then   begin   _base:=(gri_new[i,2]*45);   _iep:=(gri_new[i, StrToInt(_ech)  +3]*45); Result :=  _base + _iep;   Break;   end; end; end;

استدعاء الدالة
كود :
procedure TForm1.Button1Click(Sender: TObject); begin edit3.Text := FormatFloat('#,##0.00', Salaire_base(edit1.Text,edit2.Text )    ); end;
[-] كل من 3 users say قال شكرا ل ALG2009 على المشاركة المفيدة
  • bassem_43, bousaid, bouh25
الرد
#4
السلام عليكم
هذه دالة مختصرة أستخدمها دائماً في اكسال و وينداف تقوم بحساب الرقم الاستدلالي و جدول الأجر كاملا
قمت بتحويلها لدلفي و هي تعمل جيداً
كود :
Function Indic(Categori:Integer): integer; var     vals:Integer; begin     If (Categori >= 11) And (Categori <= 17) then vals := 18     Else If (Categori >= 9) And (Categori <= 10) Then vals := 10     Else If (Categori >= 7) And (Categori <= 8) Then vals := 4     Else         vals := 0;     Result := vals + (Categori - 1) * 19 + 250 + (Categori - 2) * (Categori - 1); End;

الاستخدام:

كود :
procedure TTMSForm1.Button1Click(Sender: TObject); var v1: integer; begin v1 := strtoint(Edit1.Text); Edit2.Text:= IntToStr(Indic(v1)); end;
[-] كل من 1 user says قال شكرا ل bousaid على المشاركة المفيدة
  • bouh25
الرد
#5
يمكن إستخدام Case
كود :
function TForm1.Indic(Categori: Integer): integer;     var val : Integer; begin     case Categori of       11..17:  val := 18;       9..10: val := 10;       7..8: val := 4;       else val := 0;     end;     result := val + (Categori-1 ) * 19 + 250 + (Categori - 2) * (Categori - 1); end  ;

المناداه
كود :
procedure Form1.Button1Click(Sender: TObject); begin Edit2.Text:=inttostr(indic(StrToInt(Edit1.Text))); end;
[-] كل من 1 user says قال شكرا ل ALG2009 على المشاركة المفيدة
  • bouh25
الرد
#6
(27-04-2022, 06:06 AM)ALG2009 كتب : مأخوذه من موضوع سابف عليك بتغيير قيم الدرجات الصحيجة

كود :
function Salaire_base(const _ech,_catg:string ): integer;

الدالة تعطيني خطا حتى اقوم بتغيير المصفوفة الى  gri_new : array[1..18, 1..15] عوض 10 وذلك منطقي لان المصفوفة فيها 18 سطر
او ان لم افهم المصفوفة وشكرا الاخ ALG2009
وقل ربي زدني علماً
الرد
#7
لقد أصبت كما قلت الخطأ في gri_new : array[1..18, 1..15] of Word =

لقد عدلت على المشاركة السابقة
[-] كل من 1 user says قال شكرا ل ALG2009 على المشاركة المفيدة
  • bouh25
الرد
#8
بالنسبة للدالة للاخ bousaid بالنسبة للانديس يجب توفر قيمتين وهما السلم والدرجة اضن ان الدالة ناقصة
وقل ربي زدني علماً
الرد
#9
(30-04-2022, 07:07 PM)bouh25 كتب : بالنسبة للدالة للاخ bousaid بالنسبة للانديس يجب توفر قيمتين وهما السلم والدرجة اضن ان الدالة ناقصة

هل جربتها حتى تحكم عليها بالنقصان ؟
الدالة تحسب الرقم الاستدلالي للصنف ... و لا تتطلب وجود قيمتين
الرد
#10
عندما يكون عندك موظف مثالا الدرجة 12 و السلم 7 و آخر في نفس الدرجة 12 و السلم 5
كيف تقوم بادخال هذه البيانات ؟؟
وقل ربي زدني علماً
الرد


التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم