الأربعاء، 23 نوفمبر 2022

مجاناً برنامج طباعة الشيكات , يشمل التفقيط وحفظ الأسماء


مجاناً برنامج طباعة الشيكات الأصدار الثاني


يشمل التفقيط وحفظ الأسماء
رابط التنزيل :


https://bit.ly/ChecksPrintXE

الثمن :


         دعوة في ظهر الغيب   


الخميس، 24 أكتوبر 2019

إجراء التفقيط في لغة باسكال الدلفي - Function for Arabic Tafqeet

unit flyingTafqeet;

interface
uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  Menus, Grids, DBGrids, StdCtrls, Mask, DBCtrls, Db, ComCtrls, Qrctrls, ExtCtrls;

   function SpellNumber(MyNumber: Real): string;
   function Horof(X: string): string;
   function SHorof(X: Real): string;
   function THorof(X: Real): string;

implementation

function SpellNumber(MyNumber: Real): string;
begin
Result := Horof(Trim(FloatToStr(MyNumber)));
end;

function Horof(X: string): string;
var
   Ma : string;
   Mi1 : string;
   Mi2 : string;
   N : LONGLONG;
   B : integer;
   R : string;
begin
Ma := ' دينار';
Mi1 := ' فلـ';
Mi2 := 'ـس';

N := Trunc(StrToFloat(X));
B := StrToInt(Copy(trim(FormatFloat('00000000000000.000',StrToFloat(X))),16,3));

R := SHorof(N);
if (R <> '') And (B > 0) Then Result := R + Ma + ' و ' + Mi1+IntToStr(B)+Mi2;
if (R <> '') And (B = 0) Then Result := R + Ma;
if (R = '') And (B <> 0) Then Result := Mi1+IntToStr(B)+Mi2;
Horof := Result;
end;

function SHorof(X: Real): string;
var
   N : LONGLONG;
   C : string;
   C1 : integer;
   C2 : integer;
   C3 : integer;
   C4 : integer;
   C5 : integer;
   C6 : integer;
   C7 : integer;
   Letter1 : string;
   Letter2 : string;
   Letter3 : string;
   Letter4 : string;
   Letter5 : string;
   Letter6 : string;
   Letter7 : string;
begin
N := Trunc(X);
C := Copy(format('%14d',[N]),1,14);
while Pos(' ', C) > 0 do
    C[Pos(' ', C)] := '0';
C1 := StrToInt(Copy(C, 14, 1));
case C1 of
1: Letter1 := 'واحد';
2: Letter1 := 'اثنان';
3: Letter1 := 'ثلاثة';
4: Letter1 := 'اربعة';
5: Letter1 := 'خمسة';
6: Letter1 := 'ستة';
7: Letter1 := 'سبعة';
8: Letter1 := 'ثمانة';
9: Letter1 := 'تسعة';
end;

C2 := StrToInt(Copy(C, 13, 1));
case C2 of
1: Letter2 := 'عشر';
2: Letter2 := 'عشرون';
3: Letter2 := 'ثلاثون';
4: Letter2 := 'اربعون';
5: Letter2 := 'خمسون';
6: Letter2 := 'ستون';
7: Letter2 := 'سبعون';
8: Letter2 := 'ثمانون';
9: Letter2 := 'تسعون';
end;

if (Letter1 <> '') And (C2 > 1) Then Letter2 := Letter1 + ' و' + Letter2;
if Letter2 = '' Then Letter2 := Letter1;
if (C1 = 0) And (C2 = 1) Then Letter2 := Letter2 + 'ة';
if (C1 = 1) And (C2 = 1) Then Letter2 := 'احدى عشر';
if (C1 = 2) And (C2 = 1) Then Letter2 := 'اثنى عشر';
if (C1 > 2) And (C2 = 1) Then Letter2 := Letter1 + ' ' + Letter2;
C3 := StrToInt(Copy(C, 12, 1));
case C3 of
1: Letter3 := 'مائة';
2: Letter3 := 'مئتان';
3..9: Letter3 := Copy(THorof(C3),1, Length(THorof(C3)) - 1) + 'مائة';
end;

if (Letter3 <> '') And (Letter2 <> '') Then Letter3 := Letter3 + ' و' + Letter2;
if Letter3 = '' then Letter3 := Letter2;

C4 := StrToInt(Copy(C, 9, 3));
Case C4 of
1: Letter4 := 'الف';
2: Letter4 := 'الفان';
3..10: Letter4 := THorof(C4) + ' آلاف';
11..999: Letter4 := THorof(C4) + ' الف';
end;

if (Letter4 <> '') And (Letter3 <> '') then Letter4 := Letter4 + ' و' + Letter3;
if Letter4 = '' then Letter4 := Letter3;
C5 := strToInt(Copy(C, 6, 3));
Case C5 of
1: Letter5 := 'مليون';
2: Letter5 := 'مليونان';
3..10: Letter5 := THorof(C5) + ' ملايين';
11..999: Letter5 := THorof(C5) + ' مليون';
end;
if (Letter5 <> '') And (Letter4 <> '') Then Letter5 := Letter5 + ' و' + Letter4;
if Letter5 = '' Then Letter5 := Letter4;

C6 := StrToInt(Copy(C, 3, 3));
Case C6 of
1: Letter6 := 'مليار';
2: Letter6 := 'ملياران';
3..999: Letter6 := THorof(C6) + ' مليار';
end;
if (Letter6 <> '') And (Letter5 <> '') Then Letter6 := Letter6 + ' و' + Letter5;
if Letter6 = '' Then Letter6 := Letter5;
C7 := StrToInt(Copy(C, 1, 2));
Case C7 of
1: Letter7 := 'بليون';
2: Letter7 := 'بليونان';
3..99: Letter7 := THorof(C7) + ' بليون';
end;
if (Letter7 <> '') And (Letter6 <> '') Then Letter7 := Letter7 + ' و' + Letter6;
if Letter7 = '' Then Letter7 := Letter6;
Result := Letter7;
end;

function THorof(X: Real): string;
var
   N : Longint;
   C : string;
   C1 : integer;
   C2 : integer;
   C3 : integer;
   Letter1 : string;
   Letter2 : string;
   Letter3 : string;
begin
N := Trunc(X);
C := Copy(format('%14d',[N]),1,14);
while Pos(' ', C) > 0 do
    C[Pos(' ', C)] := '0';
C1 := StrToInt(Copy(C, 14, 1));
case C1 of
1: Letter1 := 'واحد';
2: Letter1 := 'اثنان';
3: Letter1 := 'ثلاثة';
4: Letter1 := 'اربعة';
5: Letter1 := 'خمسة';
6: Letter1 := 'ستة';
7: Letter1 := 'سبعة';
8: Letter1 := 'ثمانية';
9: Letter1 := 'تسعة';
end;

C2 := StrToInt(Copy(C, 13, 1));
case C2 of
1: Letter2 := 'عشر';
2: Letter2 := 'عشرون';
3: Letter2 := 'ثلاثون';
4: Letter2 := 'اربعون';
5: Letter2 := 'خمسون';
6: Letter2 := 'ستون';
7: Letter2 := 'سبعون';
8: Letter2 := 'ثمانون';
9: Letter2 := 'تسعون';
end;

if (Letter1 <> '') And (C2 > 1) Then Letter2 := Letter1 + ' و' + Letter2;
if Letter2 = '' Then Letter2 := Letter1;
if (C1 = 0) And (C2 = 1) Then Letter2 := Letter2 + 'ة';
if (C1 = 1) And (C2 = 1) Then Letter2 := 'احدى عشر';
if (C1 = 2) And (C2 = 1) Then Letter2 := 'اثنى عشر';
if (C1 > 2) And (C2 = 1) Then Letter2 := Letter1 + ' ' + Letter2;

C3 := StrToInt(Copy(C, 12, 1));
case C3 of
1: Letter3 := 'مائة';
2: Letter3 := 'مئتان';
3..9: Letter3 := Copy(THorof(C3),1, Length(THorof(C3)) - 1) + 'مائة';
end;

if (Letter3 <> '') And (Letter2 <> '') Then Letter3 := Letter3 + ' و' + Letter2;
if Letter3 = '' then Letter3 := Letter2;

Result := Letter3;
end;

end.

الثلاثاء، 1 أكتوبر 2019

إذا ساء فعل المرء ساءت ظنونه - أبو الطيب المتنبي



إذا ساء فعلُ المرء ساءت ظنونه     وصدّق ما يعتاده من توهمِ
وعادى محبّيه بقول عداته     وأصبحَ في ليلٍ من الشك مُظلمِ
أصادق نفس المرء من قبل جسمِه     وأعرفها في فعله والتكلمِ
وأحلم عن خلّي وأعلم أنه     متى أجزه حلمًا على الجهلِ يندمِ
وإن بذل الإنسانُ لي جود عابسٍ     جزيتُ بجود التارك المتبسِّمِ

أبو الطيب المتنبي


Dream World Travel logo

الجمعة، 23 أغسطس 2019

الشافعي - دع الأيام تفعل ما تشاء

 

دَعِ الأَيّامَ تَفعَلُ ما تَشاءُ

وَطِب نَفساً إِذا حَكَمَ القَضاءُ

وَلا تَجزَع لِحادِثَةِ اللَيالي

فَما لِحَوادِثِ الدُنيا بَقاءُ

وَكُن رَجُلاً عَلى الأَهوالِ جَلداً

وَشيمَتُكَ السَماحَةُ وَالوَفاءُ

وَإِن كَثُرَت عُيوبُكَ في البَرايا

وَسَرَّكَ أَن يَكونَ لَها غِطاءُ

تَسَتَّر بِالسَخاءِ فَكُلُّ عَيبٍ

يُغَطّيهِ كَما قيلَ السَخاءُ

وَلا تُرِ لِلأَعادي قَطُّ ذُلّاً

فَإِنَّ شَماتَةَ الأَعدا بَلاءُ

وَلا تَرجُ السَماحَةَ مِن بَخيلٍ

فَما في النارِ لِلظَمآنِ ماءُ

وَرِزقُكَ لَيسَ يُنقِصُهُ التَأَنّي

وَلَيسَ يَزيدُ في الرِزقِ العَناءُ

وَلا حُزنٌ يَدومُ وَلا سُرورٌ

وَلا بُؤسٌ عَلَيكَ وَلا رَخاءُ

إِذا ما كُنتَ ذا قَلبٍ قَنوعٍ

فَأَنتَ وَمالِكُ الدُنيا سَواءُ

وَمَن نَزَلَت بِساحَتِهِ المَنايا

فَلا أَرضٌ تَقيهِ وَلا سَماءُ

وَأَرضُ اللَهِ واسِعَةٌ وَلَكِن

إِذا نَزَلَ القَضا ضاقَ الفَضاءُ

دَعِ الأَيّامَ تَغدِرُ كُلَّ حِينٍ

فَما يُغني عَنِ المَوتِ الدَواءُ





الأحد، 11 أغسطس 2019

إجراء تصدير بيانات من جدول إلى الأكسل بلغة الدلفي - Delphi Function Export To Excel File

هذا الإجراء يستخدم لتصدير بيانات من جدول داتابيس إلى ملف أكسل , بلغة الدلفي

function ExportToExcel(oDataSet : TDataSet; sFile : String; pName : String): Boolean;
var
   iCol,iRow : Integer;
   oExcel : TExcelApplication;
   oWorkbook : TExcelWorkbook;
   oSheet : TExcelWorksheet;
   vRowNo : integer;
   vFieldC : integer;
   vVarCol : OleVariant;
   lcid : integer;
begin
lcid := LOCALE_USER_DEFAULT;
result := True;
oExcel := TExcelApplication.Create(Application);
oWorkbook := TExcelWorkbook.Create(Application);
oSheet := TExcelWorksheet.Create(Application);
try
   oExcel.ConnectKind := ckNewInstance;
   oExcel.Visible[lcid] := False;
   oExcel.Connect;
except
   result := False;
   MessageDlg('Excel may not be installed', mtError, [mbOk], 0);
   exit;
end;

oExcel.Visible[lcid] := True;
oExcel.Caption := 'Title Excel Export ';
oExcel.Workbooks.Add(Null, lcid);

oWorkbook.ConnectTo(oExcel.Workbooks[1]);
oSheet.ConnectTo(oWorkbook.Worksheets[1] as _Worksheet);
oSheet.DisplayRightToLeft[lcid] := True;
iRow := 1;
vRowNo := oDataSet.RecordCount+1;
vFieldC := oDataSet.FieldCount;
case vFieldC of   // لتحديد الأعمدة والعمل على تلوينها حسب ما هو مطلوب  //
  1: vVarCol := 'A1';
  2: vVarCol := 'B1';
  3: vVarCol := 'C1';
  4: vVarCol := 'D1';
  5: vVarCol := 'E1';
  6: vVarCol := 'F1';
  7: vVarCol := 'G1';
  8: vVarCol := 'H1';
  9: vVarCol := 'I1';
  10: vVarCol := 'J1';

     //   Add as required //

end;

for iCol := 1 to oDataSet.FieldCount do
 begin
  oSheet.Cells.Item[iRow,iCol] := oDataSet.Fields[iCol-1].DisplayLabel;
 end;
oDataSet.First;
while NOT oDataSet.Eof do
begin
   Inc(iRow);
   for iCol := 1 to oDataSet.FieldCount do
   begin
   oSheet.Cells.Item[iRow,iCol] := oDataSet.Fields[iCol-1].AsString;
   end;
oDataSet.Next;
end;
oSheet.Name := pName;   // Change the wprksheet name.  //
                       //   Change Color and font to Title of page //
oSheet.Range['A1',vVarCol].EntireRow.Font.Color := clNavy;
oSheet.Range['A1',vVarCol].EntireRow.Font.Size := 12;
oSheet.Range['A1',vVarCol].EntireRow.Font.Bold := True;
oSheet.Range['A1',vVarCol].EntireRow.Font.Name := 'Arabic Transparent';
oSheet.Range['A1',vVarCol].Interior.ColorIndex := 15;
oSheet.Range['A1',vVarCol].Interior.Pattern := xlSolid;

                      //  Change the font properties of a row. //
oSheet.Range['A2','A'+IntToStr(vRowNo)].EntireRow.Font.Color := clBlack;
oSheet.Range['A2','A'+IntToStr(vRowNo)].EntireRow.Font.Size := 12;
oSheet.Range['A2','A'+IntToStr(vRowNo)].EntireRow.Font.Name := 'Arabic Transparent';
oSheet.Columns.AutoFit;
Sleep(10);

if FileExists(sFile) then DeleteFile(sFile);
oSheet.SaveAs(sFile);
oSheet.Disconnect;
oSheet.Free;
oWorkbook.Disconnect;
oWorkbook.Free;
oExcel.Quit;
oExcel.Disconnect;
oExcel.Free;
end;

الجافا : انسياب التحكم

إن البرنامج الذي يتألف من لائحة من العبارات المتتابعة مفيد بما أنه يتم تنفيذ العبارات بالترتيب الذي تم كتابتها فيه. لكن القدرة على التحكم بالترتيب الذي يتم فيه تنفيذ العبارات : أي أن تختبر الشروط وتنفيذ عبارات مختلفة بالاعتماد على نتائج الاختبارات - يضيف قيمة كبيرة إلى طقم الأدوات البرمجية.

العبارات والكتل :
إن العبارات الأساسية هي عبارات التعابير وعبارات التصريح التي رأيت الكثير منها ، عبارات التعابير مثل ++i أو استدعاءات المناهج هي تعابير مع فاصلة منقوطة في النهاية. تنتهي الفاصلة المنقوطة العبارة. وبالفعل فإن الفاصلة المنقوطة بحد ذاتها هي عبارة لا تنفيذ شيء - عبارة فارغة. ولا يمكن أن تصبح جميع التعابير عبارات ، بما أنه ، على سبيل المثال لا يوجد معنى لوجود تعبير مثل x <= y لوحده كعبارة. يمكن تحويل الأنواع التالية من التعابير فقط إلى عبارات بإضافة فاصلة منقوطة :

  • تعابير الاسناد : تلك التي تحتوي على = أو أحد أنواع العوامل =op.
  • النماذج السابقة أو اللاحقة من ++ و -- .
  • استدعاءات المناهج (سواء كانت تعيد قيمة أم لا).
  • تعابير إنشاء الكائنات - تلك التي تستخدم new لإنشاء كائن.




إن تعابير التصريح (تدعى رسمياً بعبارات التصريح عن المتغيرات المحلية) تصرح عن متغيرة وتمهدها إلى قيمة، وبمكن أن تظهر في أي مكان ضمن الكتلة ، وليس في البداية فقط ، وتبقى المتغيرات المحلية حية فقط في الفترة التي يتم فيها تنفيذ الكتلة التي تحتوي على التصريح عنها ، كما يجب أن يتم تمهيد المتغيرات المحلية قبل استخدامها ، إما بالتمهيد عن التصريح عنها أو بالإسناد ، وإذا استخدمت أي متغيرة محلية قبل أن يتم تمهيدها ، فلن يتم تصريف الشيفرة.

تصريح عبارات تصريح الفئة المحلية عن فئة داخلية محلية يمكن أن تستخدم ضمن الكتلة التي تم فيها التصريح عنها.

بالإضافة إلى عبارات التعبير المذكورة ، فإن العديد من الأنواع الأخرى من العبارات ، مثل العباراتين if و for ، تؤثر على انسياب التحكم عبر البرنامج.

تجمع القوسان الحاصرتان {and} العبارات ضمن الكتلة ، ويمكن استخدام الكتلة في أي مكان تستخدم فيه عبارة واحدة بما أن الكتلة هي عبارة ، ولو أنها عبارة مركبة.

السبت، 27 يوليو 2019

Email marketing

Email marketing is everywhere. Even if you have a website that represents a small local business, chances are that you have a list of your loyal subscribers to inform about happenings in your company. Create email newsletters is very simple and effective.

We can provide you with campaign of email marketing , so among all possible solutions, email campaigns have proved quite beneficial and Increase the number of customers accessing your website.

الخميس، 18 يوليو 2019

الأربعاء، 10 يوليو 2019

أهم أسباب أدت إلى الإنتقال من برامج الدسك توب إلى برامج الويب بيز Web Base

هناك عدة أسباب ، جعلت المبرمجين ينتقلون من برمجة برامج الدسك توب Desktop إلى برامج الويب بيز ومن أهمها :

أولاً : عدم استقرار أنظمة التشغيل وخاصة في الآونة الأخيرة نظام ويندوز

ثانياً : برامج الدسك توب تحتاج لمكتبات ، وفي الغالب هذه المكتبات مكلفة.

ثالثاً : طريقة تصميم المظهر الخارجي للبرامج ، محكومة بنظام التشغيل وهذه الآلية  
تحد من القدرة على تطوير واجهة تواكب التطور التكنولوجي.

رابعاً : عملية ربط عدة أجهزة عن طريق الشبكات المحلية ، لا تواجه قبول من معظم العملاء.

خامساً : ظهور الموبايلات الحديثة ، مما أسهم في تقليص قبول برامج الدسك توب من قبل العملاء ، لأنها لا تعمل على الموبايلات.

سادساً : أصبحت خدمة الإنترنت في متناول الجميع وفي كل مكان سواء بالعمل أو البيت أو حتى في الخارج.

سابعاً : أصبح كثير من العملاء ، يرغبون بتشغيل البرنامج على أي جهاز دون التقيد بنظام التشغيل ، مما ساعد في انتشار برامج الويب بيز التي تعمل على أي جهاز ومن أي مكان.

ثامناً : مرونة التطوير بالنسبة لمطور البرامج ، لوجود ملايين المكتبات الجاهزة من فريم وورك تطوير برامج الويب بيز وكثير منها مفتوح المصدر.

الخميس، 4 يوليو 2019

? Why MySQL Is Still the best

Why MySQL Is Still the best? With the launch of NoSQL, many were of the opinion that it would drive MySQL out of the market. 

But MySQL is an open source (RDBMS) Relational Database Management System which utilizes Structured Query Language (SQL).Flying Forum

MySQL is not about to exit the market, despite imminent competition.

Built on MySQL Enterprise Edition and powered by the Oracle Cloud, Oracle MySQL Cloud Service provides a simple, automated, integrated and enterprise ready MySQL cloud service, enabling organizations to increase business agility and reduce costs.
Flying Soft 

الأربعاء، 3 يوليو 2019

? What would Oracle database cost for big company

Oracle sells enterprise license agreements, which basically means that they promise to not come back to bug you for a few years Flying Forum if you give them lots of money.

it’s going to cost you 17 billion dollars.” The extorted customer responds, well, we’re thinking of moving our database to Sybase or Postgres if we don’t get a good price, and you never fixed any bugs that we reported, and we really don’t need your stuff, so we’ll offer you 5 million dollars. The Oracle salesperson comes back and says well, I did the best I could for you, and got you a price of 10 billion dollars if you buy now.

Details

what about Mysql Database ?

الاثنين، 4 سبتمبر 2017

ترتيب النص العربي في اس كيو ال Sql


Sql Order By with Arabic Name

عملية ترتيب النص العربي في الاستعلام بلغة اس كيو ال عندما نستخدم الحقل دائماً لا تكون بشكل منتظم ، ويكون ترتيب البيانات عشوائي ، لهذا فإن الحل لمثل هذه الحالة يكون بالشكل التالي :

بدل استخدام الاستعلام التالي :
Select Name from Table
حيث أن نوع الحقل  Name  يكون STRING أو VARCHAR 

اذا كنت تستخدم الحقل VARCHAR أو الحقل STRING
يجب أن يتم تبديله أثناء عملية الاستعلام بهذه الطريقة :

Select CAST(Name As WIDESTRING) As NewName from Table
Order By NewName



الاثنين، 28 أغسطس 2017

برنامج طباعة الشيكات

نقدم لكم برنامج طباعة الشيكات مجاناً


تجد قائمة بجميع البرامج , ومن ضمنها بإمكانك تنزيل بعض البرامج المجانية



مثال بالضغط على برنامج الشيكات C
heck Print, يظهر لك خيارات تنزيل برنامج طباعة الشيكات 

وبرامج أخرى مثل برنامج الرواتب المجاني , تنزيل البرامج تابع باستمرار لمشاهدة المزيد من البرامج المجانية.


يرجى الضغط على الكلمة Download ليتم تنزيل البرنامج
نرجوا الإستفادة من البرنامج وننتظر منكم الملاحظات , وشكراً

السبت، 22 يوليو 2017

نقاط البيع Flying POS

نقاط البيع Flying POS


Point Of Sales (POS) System

Ease of use : Look for software with a user-friendly graphical 

Entry : allow you to enter with multi type , manually or automatically via a bar-code scanner. 

Reporting : include sales, by individual inventory items, by salesperson, or by category for the day, month and year to date. also reports for entry time , X report, Z report for the day.

ميزات نظام نقاط البيع

تصميم أنيق يرضي أي مستخدم وقريب للقلب
إدخالات متعددة عن طريق الماوس , الكيبورد واستخدام الرقم الآلي , استخدام البحث عن صنف.
الإدخال باستخدام الطريقة الافتراضية لنقاط البيع عن طريق قارئة الباركود.
اظهار الأصناف المطلوبة باستمرار ضمن قوائم متعددة يمكن تسمتها مع اظهار صورة للصنف تعمل باللمس
اظهار قيم الفاتورة الأخيرة على نقطة البيع كما يمكن تصفح فواتير البيع في ذلك اليوم.
امكانية استخدام زر العميل التالي (Next Customer) بحيث يمكن تخزين عملاء ووضعهم في حالة انتظار , غير محدود.
المزيد من الخيارات والوظائف المتعددة

الأربعاء، 19 يوليو 2017

نظام مالي Flying Money

Flying Money نظام مالي


نظام مالي Flying Money هو عبارة عن نظام يحتوي على 7 دفاتر مالية وهذا النظام ليس بالضرورة للشخص الذي يستخدمه أن يكون ملم بالمحاسبة أو بأي دورة مالية , لأن نظام مالي تم تطويره وبرمجته بناءاً على إدخال مبالغ مالية مباشرة وبدون أي شروط تتعلق بقيود المحاسبة , فأي شخص يقوم باستخدام أحد الدفاتر الموجودة بالنظام ما عليه سوى عمل إضافة ثم القيام بتتبع الخطوات حسب آلية البرنامج ومنها التاريخ , الشركة , الفرع , ومن ثم فتح سطر وإدخال المبلغ , وسيتم شرح الدفاتر تالياً :

  1. دفتر المشتريات
  1. دفتر المصاريف العامة
  1. دفتر المصاريف الشخصية
  1. دفتر الفوائد والعمولات
  1. دفتر مصاريف المقاولين
  1. دفتر مصاريف الرواتب
  1. دفتر الإيرادات والمبيعات


دفتر المشتريات
هذا الدفتر يستخدم لإدراج جميع فواتير المشتريات التي تقوم بشرائها المؤسسة أو الشركة.

نظام المحاسبة والمستودعات

نظام المحاسبة والمستودعات


يتكون نظام المحاسبة والمستودعات من موديولات متعددة , المحاسبة العامة , المستودعات , الذمم العامة , المبيعات , المشتريات بالإضافة إلى متابعة الشيكات , وكما هو معروف لدى الكثير من المحاسبين أن البرنامج الجيد يمتاز بسهولة التنقل بين الشاشات والقدرة على الوصول بالسرعة المطلوبة :

موديول المحاسبة العامة :
  • دفتر الأستاذ العام
  • دفتر اليومية العامة
  • تقارير المحاسبة العامة (يحتوي النظام على تقارير كاملة وشاملة للمحاسبة العامة)

موديول المستودعات :

  • دفتر تعريف المستودعات
  • دفتر بطاقة الصنف
  • دفتر سندات التسوية
  • دفتر سندات الاستلام
  • دفتر سندات التسليم
  • تقارير المستودعات (يحتوي النظام على تقارير تحليلية للأصناف ومتابعتها وتقرير الجرد المالي)
  • تقارير سريعة quick report
موديول الذمم العام :

  • دفتر الأستاذ المساعد
  • تقارير الذمم العام (تشمل تقارير العملاء وتقارير الموردين , بالإضافة إلى تقارير شاملة وتحليلية)

موديول المبيعات :
  • دفتر عروض الأسعار
  • دفتر طلبات البيع
  • دفتر فواتير المبيعات
  • دفتر مرتجع المبيعات
  • دفتر فواتير التصدير
  • تقارير كشوفات المبيعات (تتضمن تقارير متعددة للمبيعات)
موديول المشتريات :
  • دفتر طلبات الشراء
  • دفتر فواتير المشتريات
  • دفتر فواتير المشتريات الخارجية
  • تقارير كشوفات المشتريات (تتضمن تقارير متعددة للمشتريات)




الثلاثاء، 18 يوليو 2017

نقاط مهمة لعمل برنامج بلغة الدلفي أو بلغات أخرى

  1. تحديد الاستفادة والمهام التي سيؤديها البرنامج الذي تفكر أن تقوم بوضع الخطوط العريضة لتنفيذه.
  2. البدء بجمع المعلومات والنقاط التي ستستخدمها في عملية التحليل.
  3. عمل تحليل بطريقة برمجية (System Analysis) لتوضيح خطة سير العمل المراد منها هذا البرنامج بعمل فلوشارت (Flowchart) وهذا معروف لجميع المبرمجين سواء لغة الدلفي أو السي أو الفيجيول بيسك أو غيرها من لغات البرمجة.
  4. وضع استراتيجية للوقت اليومي الذي ستحدده للقيام بهذا البرنامج , حيث أن العمل العشوائي كثيراً ما يكون قاتل , وخاصة في بناء البرامج فأنصحك أن تقوم بترتيب وقتك لتنفيذ هذا العمل , مثال كل يوم ساعة , أو كل أسبوع 5 ساعات في يوم محدد أو يوم بعد يوم .. وهكذا.
  5. عند البدء ببناء البرنامج في محرر لغة الدلفي (Delphi) عليك الأخذ بعين الاعتبار أن هناك أمور تكون متوفرة في معظم البرامج , اذاً نبدء بتجهيز هذه الأمور المشتركة مثل القوائم , والأزرار وأوامر النسخ الاحتياطي وأيضاً في حال كان البرنامج الذي ننوي عمله يستخدم تخزين بيانات (Database) علينا بتحديد ما هي الداتا بيس التي سوف نستخدمها , ونعمل على تجهيز بيئة الدلفي لهذا العمل.
  6. ثم نقوم بالسير ضمن الفلوشارت (Flowchart) الذي قمنا بكتابته في عملية التحليل في النقاط السابقة , وينصح بإنهاء خطوة كاملة قبل الإنتقال إلى خطوة أخرى.
  7. عمل فحص وتشييك على الخطوة التي قمنا بتجهيزها والتأكد من سير عملها ونتائجها بحيث تكون صحيحة , كما يمكن تتبع الأخطاء عن طريق المدقق المضاف في محرر لغة الدلفي والاستعانة به في معظم الاحيان (Debugging).
  8. أن يكون لديك نفس طويل , وقدرة على تلقي النتائج الخاطئة والعمل على تصحيحها وهذه تكون عند المبرمجين الجدد , ومع الوقت تصبح ملم وتكون هذه الخطوة قليل ما تتعرض لها بعد الخبرة.
  9. عندما تواجه نقطة جديدة عليك ينصح بالمحاولة بتنفيذها ولا ضير من استشارة ومناقشة زميل في البرمجة أو في أماكن التوصل الاجتماعي.




يرجى المشاركة في الرأي , وشكراً

طارق زياد

السبت، 15 يوليو 2017

الدلفي والتعامل مع حقل التواريخ

السلام عليكم ورحمة الله وبركاته ,,,

أخواني أخواتي المبرمجين المحترمين عامة ومبرمجين الدلفي خاصة , هذه المدونة قمت بعملها ليس لتعليم الدلفي من الصفر , ولكن لإدراج النقاط المهمة والحساسة والخطيرة التي يجب أن ينتبه لها مبرمجين الدلفي خاصة في الاعمال التجارية وليس أعمال الهواية , وهذا هي الملاحظة الأولى التي أود التنويه لها وهو ما يخص التعامل مع الدلفي في طريقة حساب التاريخ عندما نريد من البرنامج أن يحسب بيانات معينة وخاصة اذا كانت البيانات مخزنة في قاعدة بيانات , وكما تعلمون أن حقل التاريخ يتضمن وقت , فإنه عندما نقوم بتصميم شاشة لتسجيل سجلات مالية سوف نقوم بوضع DateTimePicker في شاشة اضافة السجل , طبعاً يتم اختيار التاريخ الذي نريد أن يتم حفظ السجل فيه , هناك خطأ مخفي لا ينظر له كثير من المبرمجين وهذا الخطأ لا يتم اكتشافه بسهولة لأنه ليس خطأ لغة , وإنما هو عبارة عن سهو يقع على عاتق المبرمج , عندما يكون البرنامج تجارية سيتم بيعه في السوق , ستحتاج لاخراج تقارير ضمن فترة معينة , وسيكون التقرير من تاريخ إلى تاريخ , في هذه اللحظة اذا كان DateTimePicker موضوع مباشرة حسب وقت البرمجة سيأخذ ذلك الوقت وسأوضح الموضوع بالصور لهذا السبب يجب عند وضع DateTimePicker على الفورم أن نذهب للخصائص ونحذف الوقت , حيث يقوم محرر الدلفي بوضع الوقت في منتصف الليل بين التاريخين , وبذلك تصبح نتائج التقارير التي تعتمد على فترة من تاريخ إلى تاريخ صحيحة 100%



يسعدنا تلقي أي ملاحظة في أي وقت ودمتم في رعاية الله , نلتقي بملاحظة جديدة إن شاء الله

طارق زياد

الجمعة، 14 يوليو 2017

رسالة ترحيب بجميع المبرمجين


تحية طيبة

لا يسعني إلا أن أتقدم من جميع المبرمجين بالترحيب الحار في هذه المدونة وأتمنى لهم الاستفادة والافادة ، أخواني أخواتي المبرمجين هناك نقاط مهمة عند القيام باستخدام الدلفي بالبرمجة المرئية , حيث أن الشروع في كتابة كود لبرنامج معين , لا يمكن معرفة نتائجه 100% إلا إذا تم العمل عليه لفترة من الزمن والخبرة في هذه الأمور تكون حتمية وأكيدة للمبرمجين المتمرسين في لغة برمجة معينة , حيث يصبح المبرمج خبير بمعظم أدوات لغة معينة ويمكن الرجوع إليه عند الحاجة , كما أن تبادل الآراء بين المبرمجية يعمل على تقوية الخبرة بينهم , وذلك باكتساب مهارات جديدة واعطاء مهارات للأخرين فأرجو من الأخوة القراء الذين يهتمون بلغة الدلفي أو يمكن أن يكون هناك مشاركات لمبرمجين لغات أخرى علينا التعاون في ما بيننا حتى تعم الفائدة على الجميع 

نتمنى التوفيق للجميع : والمشاركة قدر الإمكان
طارق زياد

? What about Visual basic

Visual basic is hardly even a good idea to use at all today, so the best language of your code modern alternatives Like C#, PHP, Python,...