diff --git a/20_Task/M1/10_Variable/VariableForm.pas b/20_Task/M1/10_Variable/VariableForm.pas
index ce9d2fe..6ababe2 100644
--- a/20_Task/M1/10_Variable/VariableForm.pas
+++ b/20_Task/M1/10_Variable/VariableForm.pas
@@ -2,6 +2,8 @@
interface
+// Ʈ
+
uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls;
@@ -18,6 +20,7 @@ TForm1 = class(TForm)
// () ϴ Լ
{ TODO : (1) FSum ϼ. }
+ FSum : integer;
function AddNum(ANum: Integer): Integer;
public
@@ -36,7 +39,8 @@ function TForm1.AddNum(ANum: Integer): Integer;
{ TODO :
(2) FSum Ķ ANum մϴ.
FSum ȯ }
- Result := 0;
+ FSum := FSum + ANum;
+ Result := FSum;
end;
procedure TForm1.Button1Click(Sender: TObject);
diff --git a/20_Task/M1/20_Function/FunctionForm.pas b/20_Task/M1/20_Function/FunctionForm.pas
index f9f7a4d..12a2af3 100644
--- a/20_Task/M1/20_Function/FunctionForm.pas
+++ b/20_Task/M1/20_Function/FunctionForm.pas
@@ -26,6 +26,7 @@ TForm2 = class(TForm)
function GetNameMsg(AName: string): string;
function GetAgeMsg(AName: string; AAge: Integer): string;
+ function GetUserInfoMsg(AName: string; AAge: Integer; IsMan : boolean): string;
{ TODO :
(2-1) GetUserInfoMsg Լ
Ķ: ̸(), (), ڿ(Boolean)
@@ -53,12 +54,31 @@ function TForm2.GetNameMsg(AName: string): string;
Result := Msg;
end;
+function TForm2.GetUserInfoMsg(AName: string; AAge: Integer;
+ IsMan: boolean): string;
+ var AMan,Msg : string;
+begin
+ AMan := '';
+ if Isman = false then
+ AMan := '';
+
+ Msg := GetAgeMsg(AName, AAge );
+ Msg := Msg + #13#10 + AName + ' ' + AMan + 'Դϴ.' ;
+
+ result := Msg;
+end;
+
function TForm2.GetAgeMsg(AName: string; AAge: Integer): string;
var
- Msg, Adult: string;
+ Msg: string;
+ Adult : string;
begin
+ Adult := '̼';
+ if AAge >= 20 then
+ Adult := '';
+
Msg := GetNameMsg(AName); // λ縻 ǥô
- Msg := Msg + #13#10; // (ϸ ij)
+ Msg := Msg + #13#10 + AName + ' ' + inttostr(AAge) + ' ' + Adult + 'Դϴ.' ; // (ϸ ij)
{ TODO :
(1) Msg '(AName) (AAge) (/̼)Դϴ.' ߰
@@ -66,10 +86,10 @@ function TForm2.GetAgeMsg(AName: string; AAge: Integer): string;
ڿ (ϱ) ϼ.
ڷ ȯ(IntToStr)ϼ.
}
-
Result := Msg;
end;
+
procedure TForm2.Button1Click(Sender: TObject);
var
Name, Msg: string;
@@ -104,12 +124,12 @@ procedure TForm2.Button3Click(Sender: TObject);
Age := StrToInt(edtAge.Text);
IsMan := rdoMan.Checked;
+ MSg := GetUserInfoMsg(Name, Age, IsMan);
{ TODO :
(2) λ縻 + ο Ȯ + Ȯ
ȯϴ Լ(GetUserInfoMsg) ۼϼ
Msg := GetUserInfoMsg(Name, Age, IsMan);
}
-
ShowMessage(Msg);
end;
diff --git a/20_Task/M1/20_Function/FunctionSample.res b/20_Task/M1/20_Function/FunctionSample.res
index e4d1e9f..2c1ac56 100644
Binary files a/20_Task/M1/20_Function/FunctionSample.res and b/20_Task/M1/20_Function/FunctionSample.res differ
diff --git a/20_Task/M1/30_Array/ArrayForm.pas b/20_Task/M1/30_Array/ArrayForm.pas
index c495570..0491ab1 100644
--- a/20_Task/M1/30_Array/ArrayForm.pas
+++ b/20_Task/M1/30_Array/ArrayForm.pas
@@ -65,6 +65,9 @@ procedure TForm3.Button1Click(Sender: TObject);
迭 ũ ǵ ϵ ݺ Length(FNumArr) - 1
> for I := 0 to Length(FNumArr) - 1 do }
+ for I := 0 to length(Fnumarr)-1 do
+ Memo1.Lines.Add(inttostr(FNumarr[i]));
+
Memo1.Lines.Add('迭 ' + IntToStr(Sum) + ' Դϴ.');
Memo1.Lines.Add('迭 ִ밪 ' + IntToStr(MaxNum) + ' Դϴ.');
end;
@@ -75,6 +78,8 @@ function TForm3.GetArraySum: Integer;
begin
Sum := 0;
{ TODO : (2) for ̿ 迭 ȯϵ }
+ for I := 0 to length(Fnumarr)-1 do
+ Sum := sum + Fnumarr[i];
Result := Sum;
end;
@@ -87,6 +92,9 @@ function TForm3.GetArrayMaxNum: Integer;
{ TODO :
(3) for ̿ 迭 ū ȯϵ
if ̿ ڸ }
+ for I := 0 to length(Fnumarr)-1 do
+ if Fnumarr[i] >= MaxNum then
+ MaxNum := Fnumarr[i];
Result := MaxNum;
end;
@@ -104,6 +112,12 @@ procedure TForm3.Button2Click(Sender: TObject);
50 ̸(<) CountUnder 1 ϵ
}
+ for I := 0 to length(Fnumarr)-1 do
+ if Fnumarr[i] >= 50 then
+ inc(CountOver) ;
+ if Fnumarr[i] < 50 then
+ inc(Countunder) ;
+
Memo1.Lines.Add('50 ̻ : ' + IntToStr(CountOver));
Memo1.Lines.Add('50 ̸ : ' + IntToStr(CountUnder));
end;
diff --git a/20_Task/M2/M2(calculation)_yangmyungwhan/Project1.dpr b/20_Task/M2/M2(calculation)_yangmyungwhan/Project1.dpr
new file mode 100644
index 0000000..c9997a2
--- /dev/null
+++ b/20_Task/M2/M2(calculation)_yangmyungwhan/Project1.dpr
@@ -0,0 +1,37 @@
+<<<<<<< HEAD
+program Project1;
+
+uses
+ Vcl.Forms,
+ in '.pas' {Form1},
+ Vcl.Themes,
+ Vcl.Styles;
+
+{$R *.res}
+
+begin
+ Application.Initialize;
+ Application.MainFormOnTaskbar := True;
+ TStyleManager.TrySetStyle('Sky');
+ Application.CreateForm(TForm1, Form1);
+ Application.Run;
+end.
+=======
+program Project1;
+
+uses
+ Vcl.Forms,
+ in '.pas' {Form1},
+ Vcl.Themes,
+ Vcl.Styles;
+
+{$R *.res}
+
+begin
+ Application.Initialize;
+ Application.MainFormOnTaskbar := True;
+ TStyleManager.TrySetStyle('Sky');
+ Application.CreateForm(TForm1, Form1);
+ Application.Run;
+end.
+>>>>>>> ea544203bcbbc8ff04b6fd585b9049812dbf02e4
diff --git a/20_Task/M2/M2(calculation)_yangmyungwhan/Project1.dproj b/20_Task/M2/M2(calculation)_yangmyungwhan/Project1.dproj
new file mode 100644
index 0000000..88c2e09
--- /dev/null
+++ b/20_Task/M2/M2(calculation)_yangmyungwhan/Project1.dproj
@@ -0,0 +1,1245 @@
+<<<<<<< HEAD
+
+
+ {9EABB421-BB6B-46EC-B794-960596BC87E9}
+ 18.6
+ VCL
+ Project1.dpr
+ True
+ Debug
+ Win32
+ 1
+ Application
+
+
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_1
+ true
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_2
+ true
+ true
+
+
+ .\$(Platform)\$(Config)
+ .\$(Platform)\$(Config)
+ false
+ false
+ false
+ false
+ false
+ System;Xml;Data;Datasnap;Web;Soap;Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;$(DCC_Namespace)
+ $(BDS)\bin\delphi_PROJECTICON.ico
+ $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_44.png
+ $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_150.png
+ Project1
+ Amakrits|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Amakrits.vsf;"Amethyst Kamri|VCLSTYLE|$(BDSCOMMONDIR)\Styles\AmethystKamri.vsf";"Aqua Graphite|VCLSTYLE|$(BDSCOMMONDIR)\Styles\AquaGraphite.vsf";"Aqua Light Slate|VCLSTYLE|$(BDSCOMMONDIR)\Styles\AquaLightSlate.vsf";Auric|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Auric.vsf;Carbon|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Carbon.vsf;"Charcoal Dark Slate|VCLSTYLE|$(BDSCOMMONDIR)\Styles\CharcoalDarkSlate.vsf";"Cobalt XEMedia|VCLSTYLE|$(BDSCOMMONDIR)\Styles\CobaltXEMedia.vsf";"Cyan Dusk|VCLSTYLE|$(BDSCOMMONDIR)\Styles\CyanDusk.vsf";"Cyan Night|VCLSTYLE|$(BDSCOMMONDIR)\Styles\CyanNight.vsf";"Emerald Light Slate|VCLSTYLE|$(BDSCOMMONDIR)\Styles\EmeraldLightSlate.vsf";Glossy|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Glossy.vsf;Glow|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Glow.vsf;"Golden Graphite|VCLSTYLE|$(BDSCOMMONDIR)\Styles\GoldenGraphite.vsf";"Iceberg Classico|VCLSTYLE|$(BDSCOMMONDIR)\Styles\IcebergClassico.vsf";"Lavender Classico|VCLSTYLE|$(BDSCOMMONDIR)\Styles\LavenderClassico.vsf";Light|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Light.vsf;Luna|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Luna.vsf;"Metropolis UI Black|VCLSTYLE|$(BDSCOMMONDIR)\Styles\MetropolisUIBlack.vsf";"Metropolis UI Blue|VCLSTYLE|$(BDSCOMMONDIR)\Styles\MetropolisUIBlue.vsf";"Metropolis UI Dark|VCLSTYLE|$(BDSCOMMONDIR)\Styles\MetropolisUIDark.vsf";"Metropolis UI Green|VCLSTYLE|$(BDSCOMMONDIR)\Styles\MetropolisUIGreen.vsf";Obsidian|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Obsidian.vsf;"Onyx Blue|VCLSTYLE|$(BDSCOMMONDIR)\Styles\OnyxBlue.vsf";"Ruby Graphite|VCLSTYLE|$(BDSCOMMONDIR)\Styles\RubyGraphite.vsf";"Sapphire Kamri|VCLSTYLE|$(BDSCOMMONDIR)\Styles\SapphireKamri.vsf";Silver|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Silver.vsf;Sky|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Sky.vsf;"Slate Classico|VCLSTYLE|$(BDSCOMMONDIR)\Styles\SlateClassico.vsf";"Smokey Quartz Kamri|VCLSTYLE|$(BDSCOMMONDIR)\Styles\SmokeyQuartzKamri.vsf";"Tablet Light|VCLSTYLE|$(BDSCOMMONDIR)\Styles\TabletLight.vsf";TabletDark|VCLSTYLE|$(BDSCOMMONDIR)\Styles\TabletDark.vsf;"Turquoise Gray|VCLSTYLE|$(BDSCOMMONDIR)\Styles\TurquoiseGray.vsf";Windows10|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Windows10.vsf;"Windows10 Blue|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Windows10Blue.vsf";"Windows10 Dark|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Windows10Dark.vsf";"Windows10 Green|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Windows10Green.vsf";"Windows10 Purple|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Windows10Purple.vsf";"Windows10 SlateGray|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Windows10SlateGray.vsf"
+
+
+ DBXSqliteDriver;RESTComponents;fmxase;DBXDb2Driver;DBXInterBaseDriver;vclactnband;vclFireDAC;emsclientfiredac;tethering;svnui;DataSnapFireDAC;FireDACADSDriver;DBXMSSQLDriver;DatasnapConnectorsFreePascal;FireDACMSSQLDriver;vcltouch;vcldb;bindcompfmx;svn;DBXOracleDriver;inetdb;FmxTeeUI;emsedge;fmx;FireDACIBDriver;fmxdae;vclib;FireDACDBXDriver;dbexpress;IndyCore;vclx;dsnap;emsclient;DataSnapCommon;FireDACCommon;RESTBackendComponents;DataSnapConnectors;VCLRESTComponents;soapserver;vclie;bindengine;DBXMySQLDriver;CloudService;FireDACOracleDriver;FireDACMySQLDriver;DBXFirebirdDriver;FireDACCommonODBC;FireDACCommonDriver;DataSnapClient;inet;IndyIPCommon;bindcompdbx;vcl;IndyIPServer;DBXSybaseASEDriver;IndySystem;FireDACDb2Driver;dsnapcon;FireDACMSAccDriver;fmxFireDAC;FireDACInfxDriver;vclimg;TeeDB;FireDAC;emshosting;FireDACSqliteDriver;FireDACPgDriver;ibmonitor;FireDACASADriver;DBXOdbcDriver;FireDACTDataDriver;FMXTee;soaprtl;DbxCommonDriver;ibxpress;Tee;DataSnapServer;xmlrtl;soapmidas;DataSnapNativeClient;fmxobj;vclwinx;FireDACDSDriver;rtl;emsserverresource;DbxClientDriver;ibxbindings;DBXSybaseASADriver;CustomIPTransport;vcldsnap;bindcomp;appanalytics;DBXInformixDriver;IndyIPClient;bindcompvcl;TeeUI;vclribbon;dbxcds;VclSmp;adortl;FireDACODBCDriver;DataSnapIndy10ServerTransport;dsnapxml;DataSnapProviderClient;dbrtl;IndyProtocols;inetdbxpress;FireDACMongoDBDriver;DataSnapServerMidas;$(DCC_UsePackage)
+ Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
+ Debug
+ true
+ CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=com.embarcadero.$(MSBuildProjectName);ProductName=$(MSBuildProjectName);ProductVersion=1.0.0.0;Comments=
+ 1033
+ $(BDS)\bin\default_app.manifest
+
+
+ DBXSqliteDriver;RESTComponents;fmxase;DBXDb2Driver;DBXInterBaseDriver;vclactnband;vclFireDAC;emsclientfiredac;tethering;DataSnapFireDAC;FireDACADSDriver;DBXMSSQLDriver;DatasnapConnectorsFreePascal;FireDACMSSQLDriver;vcltouch;vcldb;bindcompfmx;DBXOracleDriver;inetdb;FmxTeeUI;emsedge;fmx;FireDACIBDriver;fmxdae;vclib;FireDACDBXDriver;dbexpress;IndyCore;vclx;dsnap;emsclient;DataSnapCommon;FireDACCommon;RESTBackendComponents;DataSnapConnectors;VCLRESTComponents;soapserver;vclie;bindengine;DBXMySQLDriver;CloudService;FireDACOracleDriver;FireDACMySQLDriver;DBXFirebirdDriver;FireDACCommonODBC;FireDACCommonDriver;DataSnapClient;inet;IndyIPCommon;bindcompdbx;vcl;IndyIPServer;DBXSybaseASEDriver;IndySystem;FireDACDb2Driver;dsnapcon;FireDACMSAccDriver;fmxFireDAC;FireDACInfxDriver;vclimg;TeeDB;FireDAC;emshosting;FireDACSqliteDriver;FireDACPgDriver;ibmonitor;FireDACASADriver;DBXOdbcDriver;FireDACTDataDriver;FMXTee;soaprtl;DbxCommonDriver;ibxpress;Tee;DataSnapServer;xmlrtl;soapmidas;DataSnapNativeClient;fmxobj;vclwinx;FireDACDSDriver;rtl;emsserverresource;DbxClientDriver;ibxbindings;DBXSybaseASADriver;CustomIPTransport;vcldsnap;bindcomp;appanalytics;DBXInformixDriver;IndyIPClient;bindcompvcl;TeeUI;vclribbon;dbxcds;VclSmp;adortl;FireDACODBCDriver;DataSnapIndy10ServerTransport;dsnapxml;DataSnapProviderClient;dbrtl;IndyProtocols;inetdbxpress;FireDACMongoDBDriver;DataSnapServerMidas;$(DCC_UsePackage)
+
+
+ DEBUG;$(DCC_Define)
+ true
+ false
+ true
+ true
+ true
+
+
+ false
+ true
+ PerMonitorV2
+ true
+ 1033
+
+
+ false
+ RELEASE;$(DCC_Define)
+ 0
+ 0
+
+
+ true
+ PerMonitorV2
+
+
+
+ MainSource
+
+
+
+ dfm
+
+
+ Cfg_2
+ Base
+
+
+ Base
+
+
+ Cfg_1
+ Base
+
+
+
+ Delphi.Personality.12
+ Application
+
+
+
+ Project1.dpr
+
+
+ Embarcadero C++Builder Office 2000 Servers Package
+ Embarcadero C++Builder Office XP Servers Package
+ Microsoft Office 2000 Sample Automation Server Wrapper Components
+ Microsoft Office XP Sample Automation Server Wrapper Components
+
+
+
+
+
+ Project1.exe
+ true
+
+
+
+
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ 0
+
+
+
+
+ classes
+ 1
+
+
+
+
+ res\xml
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ library\lib\armeabi
+ 1
+
+
+
+
+ library\lib\mips
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ res\drawable
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+
+
+ res\values-v21
+ 1
+
+
+
+
+ res\drawable
+ 1
+
+
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+
+
+ res\drawable-ldpi
+ 1
+
+
+
+
+ res\drawable-mdpi
+ 1
+
+
+
+
+ res\drawable-hdpi
+ 1
+
+
+
+
+ res\drawable-xhdpi
+ 1
+
+
+
+
+ res\drawable-small
+ 1
+
+
+
+
+ res\drawable-normal
+ 1
+
+
+
+
+ res\drawable-large
+ 1
+
+
+
+
+ res\drawable-xlarge
+ 1
+
+
+
+
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ 0
+
+
+
+
+ Contents\MacOS
+ 1
+ .framework
+
+
+ Contents\MacOS
+ 1
+ .framework
+
+
+ 0
+
+
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ 0
+ .dll;.bpl
+
+
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ 0
+ .bpl
+
+
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ Contents\Resources\StartUp\
+ 0
+
+
+ Contents\Resources\StartUp\
+ 0
+
+
+ 0
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\
+ 1
+
+
+ ..\
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+
+
+ ..\
+ 1
+
+
+ ..\
+ 1
+
+
+
+
+ Contents
+ 1
+
+
+ Contents
+ 1
+
+
+
+
+ Contents\Resources
+ 1
+
+
+ Contents\Resources
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ 0
+
+
+
+
+ 1
+
+
+ 1
+
+
+
+
+ Assets
+ 1
+
+
+ Assets
+ 1
+
+
+
+
+ Assets
+ 1
+
+
+ Assets
+ 1
+
+
+
+
+
+
+
+
+
+
+
+
+
+ True
+ False
+
+
+ 12
+
+
+
+
+
+=======
+
+
+ {9EABB421-BB6B-46EC-B794-960596BC87E9}
+ 18.6
+ VCL
+ Project1.dpr
+ True
+ Debug
+ Win32
+ 1
+ Application
+
+
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_1
+ true
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_2
+ true
+ true
+
+
+ .\$(Platform)\$(Config)
+ .\$(Platform)\$(Config)
+ false
+ false
+ false
+ false
+ false
+ System;Xml;Data;Datasnap;Web;Soap;Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;$(DCC_Namespace)
+ $(BDS)\bin\delphi_PROJECTICON.ico
+ $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_44.png
+ $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_150.png
+ Project1
+ Amakrits|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Amakrits.vsf;"Amethyst Kamri|VCLSTYLE|$(BDSCOMMONDIR)\Styles\AmethystKamri.vsf";"Aqua Graphite|VCLSTYLE|$(BDSCOMMONDIR)\Styles\AquaGraphite.vsf";"Aqua Light Slate|VCLSTYLE|$(BDSCOMMONDIR)\Styles\AquaLightSlate.vsf";Auric|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Auric.vsf;Carbon|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Carbon.vsf;"Charcoal Dark Slate|VCLSTYLE|$(BDSCOMMONDIR)\Styles\CharcoalDarkSlate.vsf";"Cobalt XEMedia|VCLSTYLE|$(BDSCOMMONDIR)\Styles\CobaltXEMedia.vsf";"Cyan Dusk|VCLSTYLE|$(BDSCOMMONDIR)\Styles\CyanDusk.vsf";"Cyan Night|VCLSTYLE|$(BDSCOMMONDIR)\Styles\CyanNight.vsf";"Emerald Light Slate|VCLSTYLE|$(BDSCOMMONDIR)\Styles\EmeraldLightSlate.vsf";Glossy|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Glossy.vsf;Glow|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Glow.vsf;"Golden Graphite|VCLSTYLE|$(BDSCOMMONDIR)\Styles\GoldenGraphite.vsf";"Iceberg Classico|VCLSTYLE|$(BDSCOMMONDIR)\Styles\IcebergClassico.vsf";"Lavender Classico|VCLSTYLE|$(BDSCOMMONDIR)\Styles\LavenderClassico.vsf";Light|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Light.vsf;Luna|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Luna.vsf;"Metropolis UI Black|VCLSTYLE|$(BDSCOMMONDIR)\Styles\MetropolisUIBlack.vsf";"Metropolis UI Blue|VCLSTYLE|$(BDSCOMMONDIR)\Styles\MetropolisUIBlue.vsf";"Metropolis UI Dark|VCLSTYLE|$(BDSCOMMONDIR)\Styles\MetropolisUIDark.vsf";"Metropolis UI Green|VCLSTYLE|$(BDSCOMMONDIR)\Styles\MetropolisUIGreen.vsf";Obsidian|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Obsidian.vsf;"Onyx Blue|VCLSTYLE|$(BDSCOMMONDIR)\Styles\OnyxBlue.vsf";"Ruby Graphite|VCLSTYLE|$(BDSCOMMONDIR)\Styles\RubyGraphite.vsf";"Sapphire Kamri|VCLSTYLE|$(BDSCOMMONDIR)\Styles\SapphireKamri.vsf";Silver|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Silver.vsf;Sky|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Sky.vsf;"Slate Classico|VCLSTYLE|$(BDSCOMMONDIR)\Styles\SlateClassico.vsf";"Smokey Quartz Kamri|VCLSTYLE|$(BDSCOMMONDIR)\Styles\SmokeyQuartzKamri.vsf";"Tablet Light|VCLSTYLE|$(BDSCOMMONDIR)\Styles\TabletLight.vsf";TabletDark|VCLSTYLE|$(BDSCOMMONDIR)\Styles\TabletDark.vsf;"Turquoise Gray|VCLSTYLE|$(BDSCOMMONDIR)\Styles\TurquoiseGray.vsf";Windows10|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Windows10.vsf;"Windows10 Blue|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Windows10Blue.vsf";"Windows10 Dark|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Windows10Dark.vsf";"Windows10 Green|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Windows10Green.vsf";"Windows10 Purple|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Windows10Purple.vsf";"Windows10 SlateGray|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Windows10SlateGray.vsf"
+
+
+ DBXSqliteDriver;RESTComponents;fmxase;DBXDb2Driver;DBXInterBaseDriver;vclactnband;vclFireDAC;emsclientfiredac;tethering;svnui;DataSnapFireDAC;FireDACADSDriver;DBXMSSQLDriver;DatasnapConnectorsFreePascal;FireDACMSSQLDriver;vcltouch;vcldb;bindcompfmx;svn;DBXOracleDriver;inetdb;FmxTeeUI;emsedge;fmx;FireDACIBDriver;fmxdae;vclib;FireDACDBXDriver;dbexpress;IndyCore;vclx;dsnap;emsclient;DataSnapCommon;FireDACCommon;RESTBackendComponents;DataSnapConnectors;VCLRESTComponents;soapserver;vclie;bindengine;DBXMySQLDriver;CloudService;FireDACOracleDriver;FireDACMySQLDriver;DBXFirebirdDriver;FireDACCommonODBC;FireDACCommonDriver;DataSnapClient;inet;IndyIPCommon;bindcompdbx;vcl;IndyIPServer;DBXSybaseASEDriver;IndySystem;FireDACDb2Driver;dsnapcon;FireDACMSAccDriver;fmxFireDAC;FireDACInfxDriver;vclimg;TeeDB;FireDAC;emshosting;FireDACSqliteDriver;FireDACPgDriver;ibmonitor;FireDACASADriver;DBXOdbcDriver;FireDACTDataDriver;FMXTee;soaprtl;DbxCommonDriver;ibxpress;Tee;DataSnapServer;xmlrtl;soapmidas;DataSnapNativeClient;fmxobj;vclwinx;FireDACDSDriver;rtl;emsserverresource;DbxClientDriver;ibxbindings;DBXSybaseASADriver;CustomIPTransport;vcldsnap;bindcomp;appanalytics;DBXInformixDriver;IndyIPClient;bindcompvcl;TeeUI;vclribbon;dbxcds;VclSmp;adortl;FireDACODBCDriver;DataSnapIndy10ServerTransport;dsnapxml;DataSnapProviderClient;dbrtl;IndyProtocols;inetdbxpress;FireDACMongoDBDriver;DataSnapServerMidas;$(DCC_UsePackage)
+ Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
+ Debug
+ true
+ CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=com.embarcadero.$(MSBuildProjectName);ProductName=$(MSBuildProjectName);ProductVersion=1.0.0.0;Comments=
+ 1033
+ $(BDS)\bin\default_app.manifest
+
+
+ DBXSqliteDriver;RESTComponents;fmxase;DBXDb2Driver;DBXInterBaseDriver;vclactnband;vclFireDAC;emsclientfiredac;tethering;DataSnapFireDAC;FireDACADSDriver;DBXMSSQLDriver;DatasnapConnectorsFreePascal;FireDACMSSQLDriver;vcltouch;vcldb;bindcompfmx;DBXOracleDriver;inetdb;FmxTeeUI;emsedge;fmx;FireDACIBDriver;fmxdae;vclib;FireDACDBXDriver;dbexpress;IndyCore;vclx;dsnap;emsclient;DataSnapCommon;FireDACCommon;RESTBackendComponents;DataSnapConnectors;VCLRESTComponents;soapserver;vclie;bindengine;DBXMySQLDriver;CloudService;FireDACOracleDriver;FireDACMySQLDriver;DBXFirebirdDriver;FireDACCommonODBC;FireDACCommonDriver;DataSnapClient;inet;IndyIPCommon;bindcompdbx;vcl;IndyIPServer;DBXSybaseASEDriver;IndySystem;FireDACDb2Driver;dsnapcon;FireDACMSAccDriver;fmxFireDAC;FireDACInfxDriver;vclimg;TeeDB;FireDAC;emshosting;FireDACSqliteDriver;FireDACPgDriver;ibmonitor;FireDACASADriver;DBXOdbcDriver;FireDACTDataDriver;FMXTee;soaprtl;DbxCommonDriver;ibxpress;Tee;DataSnapServer;xmlrtl;soapmidas;DataSnapNativeClient;fmxobj;vclwinx;FireDACDSDriver;rtl;emsserverresource;DbxClientDriver;ibxbindings;DBXSybaseASADriver;CustomIPTransport;vcldsnap;bindcomp;appanalytics;DBXInformixDriver;IndyIPClient;bindcompvcl;TeeUI;vclribbon;dbxcds;VclSmp;adortl;FireDACODBCDriver;DataSnapIndy10ServerTransport;dsnapxml;DataSnapProviderClient;dbrtl;IndyProtocols;inetdbxpress;FireDACMongoDBDriver;DataSnapServerMidas;$(DCC_UsePackage)
+
+
+ DEBUG;$(DCC_Define)
+ true
+ false
+ true
+ true
+ true
+
+
+ false
+ true
+ PerMonitorV2
+ true
+ 1033
+
+
+ false
+ RELEASE;$(DCC_Define)
+ 0
+ 0
+
+
+ true
+ PerMonitorV2
+
+
+
+ MainSource
+
+
+
+ dfm
+
+
+ Cfg_2
+ Base
+
+
+ Base
+
+
+ Cfg_1
+ Base
+
+
+
+ Delphi.Personality.12
+ Application
+
+
+
+ Project1.dpr
+
+
+ Embarcadero C++Builder Office 2000 Servers Package
+ Embarcadero C++Builder Office XP Servers Package
+ Microsoft Office 2000 Sample Automation Server Wrapper Components
+ Microsoft Office XP Sample Automation Server Wrapper Components
+
+
+
+
+
+ Project1.exe
+ true
+
+
+
+
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ 0
+
+
+
+
+ classes
+ 1
+
+
+
+
+ res\xml
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ library\lib\armeabi
+ 1
+
+
+
+
+ library\lib\mips
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ res\drawable
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+
+
+ res\values-v21
+ 1
+
+
+
+
+ res\drawable
+ 1
+
+
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+
+
+ res\drawable-ldpi
+ 1
+
+
+
+
+ res\drawable-mdpi
+ 1
+
+
+
+
+ res\drawable-hdpi
+ 1
+
+
+
+
+ res\drawable-xhdpi
+ 1
+
+
+
+
+ res\drawable-small
+ 1
+
+
+
+
+ res\drawable-normal
+ 1
+
+
+
+
+ res\drawable-large
+ 1
+
+
+
+
+ res\drawable-xlarge
+ 1
+
+
+
+
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ 0
+
+
+
+
+ Contents\MacOS
+ 1
+ .framework
+
+
+ Contents\MacOS
+ 1
+ .framework
+
+
+ 0
+
+
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ 0
+ .dll;.bpl
+
+
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ 0
+ .bpl
+
+
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ Contents\Resources\StartUp\
+ 0
+
+
+ Contents\Resources\StartUp\
+ 0
+
+
+ 0
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\
+ 1
+
+
+ ..\
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+
+
+ ..\
+ 1
+
+
+ ..\
+ 1
+
+
+
+
+ Contents
+ 1
+
+
+ Contents
+ 1
+
+
+
+
+ Contents\Resources
+ 1
+
+
+ Contents\Resources
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ 0
+
+
+
+
+ 1
+
+
+ 1
+
+
+
+
+ Assets
+ 1
+
+
+ Assets
+ 1
+
+
+
+
+ Assets
+ 1
+
+
+ Assets
+ 1
+
+
+
+
+
+
+
+
+
+
+
+
+
+ True
+ False
+
+
+ 12
+
+
+
+
+
+>>>>>>> ea544203bcbbc8ff04b6fd585b9049812dbf02e4
diff --git a/20_Task/M2/M2(calculation)_yangmyungwhan/Project1.dproj.local b/20_Task/M2/M2(calculation)_yangmyungwhan/Project1.dproj.local
new file mode 100644
index 0000000..c252dd7
--- /dev/null
+++ b/20_Task/M2/M2(calculation)_yangmyungwhan/Project1.dproj.local
@@ -0,0 +1,12 @@
+
+
+
+ 1899-12-30 00:00:00.000.188,=C:\Users\양명환\Documents\Embarcadero\Studio\Projects\Unit1.pas
+ 1899-12-30 00:00:00.000.600,=D:\201907_델파이교육\계산기\계산기.pas
+ 1899-12-30 00:00:00.000.620,D:\201907_델파이교육\계산기\계산기.pas=D:\git hub\20_Task\M2\M2(calculation)_yangmyungwhan\계산기.pas
+ 1899-12-30 00:00:00.000.632,=C:\Users\양명환\Documents\Embarcadero\Studio\Projects\Unit1.pas
+ 1899-12-30 00:00:00.000.620,D:\201907_델파이교육\계산기\계산기.dfm=D:\git hub\20_Task\M2\M2(calculation)_yangmyungwhan\계산기.dfm
+ 1899-12-30 00:00:00.000.628,C:\Users\양명환\Documents\Embarcadero\Studio\Projects\Project1.dproj=D:\git hub\20_Task\M2\M2(calculation)_yangmyungwhan\Project1.dproj
+ 1899-12-30 00:00:00.000.145,=C:\Users\양명환\Documents\Embarcadero\Studio\Projects\Unit1.pas
+
+
diff --git a/20_Task/M2/M2(calculation)_yangmyungwhan/Project1.identcache b/20_Task/M2/M2(calculation)_yangmyungwhan/Project1.identcache
new file mode 100644
index 0000000..eec6262
Binary files /dev/null and b/20_Task/M2/M2(calculation)_yangmyungwhan/Project1.identcache differ
diff --git a/20_Task/M2/M2(calculation)_yangmyungwhan/Project1.res b/20_Task/M2/M2(calculation)_yangmyungwhan/Project1.res
new file mode 100644
index 0000000..66f6600
Binary files /dev/null and b/20_Task/M2/M2(calculation)_yangmyungwhan/Project1.res differ
diff --git a/20_Task/M2/M2(calculation)_yangmyungwhan/Win32/Debug/Project1.exe b/20_Task/M2/M2(calculation)_yangmyungwhan/Win32/Debug/Project1.exe
new file mode 100644
index 0000000..e111d56
Binary files /dev/null and b/20_Task/M2/M2(calculation)_yangmyungwhan/Win32/Debug/Project1.exe differ
diff --git "a/20_Task/M2/M2(calculation)_yangmyungwhan/Win32/Debug/\352\263\204\354\202\260\352\270\260.dcu" "b/20_Task/M2/M2(calculation)_yangmyungwhan/Win32/Debug/\352\263\204\354\202\260\352\270\260.dcu"
new file mode 100644
index 0000000..1548841
Binary files /dev/null and "b/20_Task/M2/M2(calculation)_yangmyungwhan/Win32/Debug/\352\263\204\354\202\260\352\270\260.dcu" differ
diff --git "a/20_Task/M2/M2(calculation)_yangmyungwhan/\352\263\204\354\202\260\352\270\260.dfm" "b/20_Task/M2/M2(calculation)_yangmyungwhan/\352\263\204\354\202\260\352\270\260.dfm"
new file mode 100644
index 0000000..045f115
--- /dev/null
+++ "b/20_Task/M2/M2(calculation)_yangmyungwhan/\352\263\204\354\202\260\352\270\260.dfm"
@@ -0,0 +1,977 @@
+<<<<<<< HEAD
+object Form1: TForm1
+ Left = 0
+ Top = 0
+ Width = 436
+ Height = 512
+ AutoScroll = True
+ AutoSize = True
+ Caption = 'Form1'
+ Color = clBtnFace
+ Font.Charset = DEFAULT_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -11
+ Font.Name = 'Tahoma'
+ Font.Style = []
+ OldCreateOrder = False
+ OnCreate = FormCreat
+ PixelsPerInch = 96
+ TextHeight = 13
+ object GridPanel1: TGridPanel
+ Left = 0
+ Top = 184
+ Width = 345
+ Height = 289
+ ColumnCollection = <
+ item
+ Value = 24.999999979639880000
+ end
+ item
+ Value = 24.999999987997510000
+ end
+ item
+ Value = 25.000000023508310000
+ end
+ item
+ Value = 25.000000008854300000
+ end>
+ ControlCollection = <
+ item
+ Column = 0
+ Control = num7
+ Row = 0
+ end
+ item
+ Column = 1
+ Control = num8
+ Row = 0
+ end
+ item
+ Column = 2
+ Control = num9
+ Row = 0
+ end
+ item
+ Column = 3
+ Control = divide
+ Row = 0
+ end
+ item
+ Column = 0
+ Control = num4
+ Row = 1
+ end
+ item
+ Column = 1
+ Control = num5
+ Row = 1
+ end
+ item
+ Column = 2
+ Control = num6
+ Row = 1
+ end
+ item
+ Column = 3
+ Control = tbutton14
+ Row = 1
+ end
+ item
+ Column = 0
+ Control = num1
+ Row = 2
+ end
+ item
+ Column = 1
+ Control = num2
+ Row = 2
+ end
+ item
+ Column = 2
+ Control = num3
+ Row = 2
+ end
+ item
+ Column = 3
+ Control = sub
+ Row = 2
+ end
+ item
+ Column = 0
+ Control = num0
+ Row = 3
+ end
+ item
+ Column = 1
+ Control = num00
+ Row = 3
+ end
+ item
+ Column = 2
+ Control = dot
+ Row = 3
+ end
+ item
+ Column = 3
+ Control = add
+ Row = 3
+ end>
+ RowCollection = <
+ item
+ Value = 24.999999969173500000
+ end
+ item
+ Value = 25.000000041850130000
+ end
+ item
+ Value = 25.000000007200240000
+ end
+ item
+ Value = 24.999999981776130000
+ end>
+ TabOrder = 0
+ object num7: TButton
+ Tag = 7
+ Left = 1
+ Top = 1
+ Width = 85
+ Height = 71
+ Align = alClient
+ Caption = '7'
+ Font.Charset = HANGEUL_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -27
+ Font.Name = 'HY'#44053'M'
+ Font.Style = [fsBold]
+ ParentFont = False
+ TabOrder = 7
+ TabStop = False
+ OnClick = numbuttonclick
+ end
+ object num8: TButton
+ Tag = 8
+ Left = 86
+ Top = 1
+ Width = 85
+ Height = 71
+ Align = alClient
+ Caption = '8'
+ Font.Charset = HANGEUL_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -27
+ Font.Name = 'HY'#44053'M'
+ Font.Style = [fsBold]
+ ParentFont = False
+ TabOrder = 8
+ TabStop = False
+ OnClick = numbuttonclick
+ end
+ object num9: TButton
+ Tag = 9
+ Left = 171
+ Top = 1
+ Width = 85
+ Height = 71
+ Align = alClient
+ Caption = '9'
+ Font.Charset = HANGEUL_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -27
+ Font.Name = 'HY'#44053'M'
+ Font.Style = [fsBold]
+ ParentFont = False
+ TabOrder = 9
+ TabStop = False
+ OnClick = numbuttonclick
+ end
+ object divide: TButton
+ Tag = 17
+ Left = 256
+ Top = 1
+ Width = 88
+ Height = 71
+ Align = alClient
+ Caption = '/'
+ Font.Charset = HANGEUL_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -27
+ Font.Name = 'HY'#44053'M'
+ Font.Style = [fsBold]
+ ParentFont = False
+ TabOrder = 11
+ TabStop = False
+ OnClick = numbuttonclick
+ end
+ object num4: TButton
+ Tag = 4
+ Left = 1
+ Top = 72
+ Width = 85
+ Height = 71
+ Align = alClient
+ Caption = '4'
+ Font.Charset = HANGEUL_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -27
+ Font.Name = 'HY'#44053'M'
+ Font.Style = [fsBold]
+ ParentFont = False
+ TabOrder = 4
+ TabStop = False
+ OnClick = numbuttonclick
+ end
+ object num5: TButton
+ Tag = 5
+ Left = 86
+ Top = 72
+ Width = 85
+ Height = 71
+ Align = alClient
+ Caption = '5'
+ Font.Charset = HANGEUL_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -27
+ Font.Name = 'HY'#44053'M'
+ Font.Style = [fsBold]
+ ParentFont = False
+ TabOrder = 5
+ TabStop = False
+ OnClick = numbuttonclick
+ end
+ object num6: TButton
+ Tag = 6
+ Left = 171
+ Top = 72
+ Width = 85
+ Height = 71
+ Align = alClient
+ Caption = '6'
+ Font.Charset = HANGEUL_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -27
+ Font.Name = 'HY'#44053'M'
+ Font.Style = [fsBold]
+ ParentFont = False
+ TabOrder = 6
+ TabStop = False
+ OnClick = numbuttonclick
+ end
+ object tbutton14: TButton
+ Tag = 16
+ Left = 256
+ Top = 72
+ Width = 88
+ Height = 71
+ Align = alClient
+ Caption = '*'
+ Font.Charset = HANGEUL_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -27
+ Font.Name = 'HY'#44053'M'
+ Font.Style = [fsBold]
+ ParentFont = False
+ TabOrder = 14
+ TabStop = False
+ OnClick = numbuttonclick
+ end
+ object num1: TButton
+ Tag = 1
+ Left = 1
+ Top = 143
+ Width = 85
+ Height = 71
+ Align = alClient
+ Caption = '1'
+ Font.Charset = HANGEUL_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -27
+ Font.Name = 'HY'#44053'M'
+ Font.Style = [fsBold]
+ ParentFont = False
+ TabOrder = 1
+ TabStop = False
+ OnClick = numbuttonclick
+ end
+ object num2: TButton
+ Tag = 2
+ Left = 86
+ Top = 143
+ Width = 85
+ Height = 71
+ Align = alClient
+ Caption = '2'
+ Font.Charset = HANGEUL_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -27
+ Font.Name = 'HY'#44053'M'
+ Font.Style = [fsBold]
+ ParentFont = False
+ TabOrder = 2
+ TabStop = False
+ OnClick = numbuttonclick
+ end
+ object num3: TButton
+ Tag = 3
+ Left = 171
+ Top = 143
+ Width = 85
+ Height = 71
+ Align = alClient
+ Caption = '3'
+ Font.Charset = HANGEUL_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -27
+ Font.Name = 'HY'#44053'M'
+ Font.Style = [fsBold]
+ ParentFont = False
+ TabOrder = 3
+ TabStop = False
+ OnClick = numbuttonclick
+ end
+ object sub: TButton
+ Tag = 15
+ Left = 256
+ Top = 143
+ Width = 88
+ Height = 71
+ Align = alClient
+ Caption = '-'
+ Font.Charset = HANGEUL_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -27
+ Font.Name = 'HY'#44053'M'
+ Font.Style = [fsBold]
+ ParentFont = False
+ TabOrder = 13
+ TabStop = False
+ OnClick = numbuttonclick
+ end
+ object num0: TButton
+ Left = 1
+ Top = 214
+ Width = 85
+ Height = 74
+ Align = alClient
+ Caption = '0'
+ Font.Charset = HANGEUL_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -27
+ Font.Name = 'HY'#44053'M'
+ Font.Style = [fsBold]
+ ParentFont = False
+ TabOrder = 0
+ TabStop = False
+ OnClick = numbuttonclick
+ end
+ object num00: TButton
+ Left = 86
+ Top = 214
+ Width = 85
+ Height = 74
+ Align = alClient
+ Caption = '00'
+ Font.Charset = HANGEUL_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -27
+ Font.Name = 'HY'#44053'M'
+ Font.Style = [fsBold]
+ ParentFont = False
+ TabOrder = 10
+ TabStop = False
+ OnClick = numbuttonclick
+ end
+ object dot: TButton
+ Tag = 20
+ Left = 171
+ Top = 214
+ Width = 85
+ Height = 74
+ Align = alClient
+ Caption = '.'
+ TabOrder = 15
+ TabStop = False
+ OnClick = numbuttonclick
+ end
+ object add: TButton
+ Tag = 14
+ Left = 256
+ Top = 214
+ Width = 88
+ Height = 74
+ Align = alClient
+ Caption = '+'
+ Font.Charset = HANGEUL_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -27
+ Font.Name = 'HY'#44053'M'
+ Font.Style = [fsBold]
+ ParentFont = False
+ TabOrder = 12
+ TabStop = False
+ OnClick = numbuttonclick
+ end
+ end
+ object ToolBar1: TToolBar
+ Left = 0
+ Top = 0
+ Width = 420
+ Height = 29
+ Caption = 'ToolBar1'
+ TabOrder = 1
+ end
+ object result: TButton
+ Tag = 18
+ Left = 344
+ Top = 327
+ Width = 75
+ Height = 146
+ Caption = '='
+ Font.Charset = HANGEUL_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -27
+ Font.Name = 'HY'#44053'M'
+ Font.Style = [fsBold]
+ ParentFont = False
+ TabOrder = 2
+ TabStop = False
+ OnClick = numbuttonclick
+ end
+ object clear: TButton
+ Tag = 21
+ Left = 344
+ Top = 256
+ Width = 75
+ Height = 71
+ Caption = 'C'
+ Font.Charset = HANGEUL_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -27
+ Font.Name = 'HY'#44053'M'
+ Font.Style = [fsBold]
+ ParentFont = False
+ TabOrder = 4
+ TabStop = False
+ OnClick = numbuttonclick
+ end
+ object delete: TButton
+ Tag = 22
+ Left = 344
+ Top = 185
+ Width = 75
+ Height = 71
+ Caption = #8592
+ Font.Charset = HANGEUL_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -27
+ Font.Name = 'HY'#44053'M'
+ Font.Style = [fsBold]
+ ParentFont = False
+ TabOrder = 5
+ TabStop = False
+ OnClick = numbuttonclick
+ end
+ object Edit1: TEdit
+ Left = 0
+ Top = 29
+ Width = 420
+ Height = 56
+ Align = alTop
+ Alignment = taRightJustify
+ Font.Charset = HANGEUL_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -48
+ Font.Name = 'HY'#44053'M'
+ Font.Style = [fsBold]
+ ParentFont = False
+ TabOrder = 3
+ end
+end
+=======
+object Form1: TForm1
+ Left = 0
+ Top = 0
+ Width = 436
+ Height = 512
+ AutoScroll = True
+ AutoSize = True
+ Caption = 'Form1'
+ Color = clBtnFace
+ Font.Charset = DEFAULT_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -11
+ Font.Name = 'Tahoma'
+ Font.Style = []
+ OldCreateOrder = False
+ OnCreate = FormCreat
+ PixelsPerInch = 96
+ TextHeight = 13
+ object GridPanel1: TGridPanel
+ Left = 0
+ Top = 184
+ Width = 345
+ Height = 289
+ ColumnCollection = <
+ item
+ Value = 24.999999979639880000
+ end
+ item
+ Value = 24.999999987997510000
+ end
+ item
+ Value = 25.000000023508310000
+ end
+ item
+ Value = 25.000000008854300000
+ end>
+ ControlCollection = <
+ item
+ Column = 0
+ Control = num7
+ Row = 0
+ end
+ item
+ Column = 1
+ Control = num8
+ Row = 0
+ end
+ item
+ Column = 2
+ Control = num9
+ Row = 0
+ end
+ item
+ Column = 3
+ Control = divide
+ Row = 0
+ end
+ item
+ Column = 0
+ Control = num4
+ Row = 1
+ end
+ item
+ Column = 1
+ Control = num5
+ Row = 1
+ end
+ item
+ Column = 2
+ Control = num6
+ Row = 1
+ end
+ item
+ Column = 3
+ Control = tbutton14
+ Row = 1
+ end
+ item
+ Column = 0
+ Control = num1
+ Row = 2
+ end
+ item
+ Column = 1
+ Control = num2
+ Row = 2
+ end
+ item
+ Column = 2
+ Control = num3
+ Row = 2
+ end
+ item
+ Column = 3
+ Control = sub
+ Row = 2
+ end
+ item
+ Column = 0
+ Control = num0
+ Row = 3
+ end
+ item
+ Column = 1
+ Control = num00
+ Row = 3
+ end
+ item
+ Column = 2
+ Control = dot
+ Row = 3
+ end
+ item
+ Column = 3
+ Control = add
+ Row = 3
+ end>
+ RowCollection = <
+ item
+ Value = 24.999999969173500000
+ end
+ item
+ Value = 25.000000041850130000
+ end
+ item
+ Value = 25.000000007200240000
+ end
+ item
+ Value = 24.999999981776130000
+ end>
+ TabOrder = 0
+ object num7: TButton
+ Tag = 7
+ Left = 1
+ Top = 1
+ Width = 85
+ Height = 71
+ Align = alClient
+ Caption = '7'
+ Font.Charset = HANGEUL_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -27
+ Font.Name = 'HY'#44053'M'
+ Font.Style = [fsBold]
+ ParentFont = False
+ TabOrder = 7
+ TabStop = False
+ OnClick = numbuttonclick
+ end
+ object num8: TButton
+ Tag = 8
+ Left = 86
+ Top = 1
+ Width = 85
+ Height = 71
+ Align = alClient
+ Caption = '8'
+ Font.Charset = HANGEUL_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -27
+ Font.Name = 'HY'#44053'M'
+ Font.Style = [fsBold]
+ ParentFont = False
+ TabOrder = 8
+ TabStop = False
+ OnClick = numbuttonclick
+ end
+ object num9: TButton
+ Tag = 9
+ Left = 171
+ Top = 1
+ Width = 85
+ Height = 71
+ Align = alClient
+ Caption = '9'
+ Font.Charset = HANGEUL_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -27
+ Font.Name = 'HY'#44053'M'
+ Font.Style = [fsBold]
+ ParentFont = False
+ TabOrder = 9
+ TabStop = False
+ OnClick = numbuttonclick
+ end
+ object divide: TButton
+ Tag = 17
+ Left = 256
+ Top = 1
+ Width = 88
+ Height = 71
+ Align = alClient
+ Caption = '/'
+ Font.Charset = HANGEUL_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -27
+ Font.Name = 'HY'#44053'M'
+ Font.Style = [fsBold]
+ ParentFont = False
+ TabOrder = 11
+ TabStop = False
+ OnClick = numbuttonclick
+ end
+ object num4: TButton
+ Tag = 4
+ Left = 1
+ Top = 72
+ Width = 85
+ Height = 71
+ Align = alClient
+ Caption = '4'
+ Font.Charset = HANGEUL_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -27
+ Font.Name = 'HY'#44053'M'
+ Font.Style = [fsBold]
+ ParentFont = False
+ TabOrder = 4
+ TabStop = False
+ OnClick = numbuttonclick
+ end
+ object num5: TButton
+ Tag = 5
+ Left = 86
+ Top = 72
+ Width = 85
+ Height = 71
+ Align = alClient
+ Caption = '5'
+ Font.Charset = HANGEUL_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -27
+ Font.Name = 'HY'#44053'M'
+ Font.Style = [fsBold]
+ ParentFont = False
+ TabOrder = 5
+ TabStop = False
+ OnClick = numbuttonclick
+ end
+ object num6: TButton
+ Tag = 6
+ Left = 171
+ Top = 72
+ Width = 85
+ Height = 71
+ Align = alClient
+ Caption = '6'
+ Font.Charset = HANGEUL_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -27
+ Font.Name = 'HY'#44053'M'
+ Font.Style = [fsBold]
+ ParentFont = False
+ TabOrder = 6
+ TabStop = False
+ OnClick = numbuttonclick
+ end
+ object tbutton14: TButton
+ Tag = 16
+ Left = 256
+ Top = 72
+ Width = 88
+ Height = 71
+ Align = alClient
+ Caption = '*'
+ Font.Charset = HANGEUL_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -27
+ Font.Name = 'HY'#44053'M'
+ Font.Style = [fsBold]
+ ParentFont = False
+ TabOrder = 14
+ TabStop = False
+ OnClick = numbuttonclick
+ end
+ object num1: TButton
+ Tag = 1
+ Left = 1
+ Top = 143
+ Width = 85
+ Height = 71
+ Align = alClient
+ Caption = '1'
+ Font.Charset = HANGEUL_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -27
+ Font.Name = 'HY'#44053'M'
+ Font.Style = [fsBold]
+ ParentFont = False
+ TabOrder = 1
+ TabStop = False
+ OnClick = numbuttonclick
+ end
+ object num2: TButton
+ Tag = 2
+ Left = 86
+ Top = 143
+ Width = 85
+ Height = 71
+ Align = alClient
+ Caption = '2'
+ Font.Charset = HANGEUL_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -27
+ Font.Name = 'HY'#44053'M'
+ Font.Style = [fsBold]
+ ParentFont = False
+ TabOrder = 2
+ TabStop = False
+ OnClick = numbuttonclick
+ end
+ object num3: TButton
+ Tag = 3
+ Left = 171
+ Top = 143
+ Width = 85
+ Height = 71
+ Align = alClient
+ Caption = '3'
+ Font.Charset = HANGEUL_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -27
+ Font.Name = 'HY'#44053'M'
+ Font.Style = [fsBold]
+ ParentFont = False
+ TabOrder = 3
+ TabStop = False
+ OnClick = numbuttonclick
+ end
+ object sub: TButton
+ Tag = 15
+ Left = 256
+ Top = 143
+ Width = 88
+ Height = 71
+ Align = alClient
+ Caption = '-'
+ Font.Charset = HANGEUL_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -27
+ Font.Name = 'HY'#44053'M'
+ Font.Style = [fsBold]
+ ParentFont = False
+ TabOrder = 13
+ TabStop = False
+ OnClick = numbuttonclick
+ end
+ object num0: TButton
+ Left = 1
+ Top = 214
+ Width = 85
+ Height = 74
+ Align = alClient
+ Caption = '0'
+ Font.Charset = HANGEUL_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -27
+ Font.Name = 'HY'#44053'M'
+ Font.Style = [fsBold]
+ ParentFont = False
+ TabOrder = 0
+ TabStop = False
+ OnClick = numbuttonclick
+ end
+ object num00: TButton
+ Left = 86
+ Top = 214
+ Width = 85
+ Height = 74
+ Align = alClient
+ Caption = '00'
+ Font.Charset = HANGEUL_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -27
+ Font.Name = 'HY'#44053'M'
+ Font.Style = [fsBold]
+ ParentFont = False
+ TabOrder = 10
+ TabStop = False
+ OnClick = numbuttonclick
+ end
+ object dot: TButton
+ Tag = 20
+ Left = 171
+ Top = 214
+ Width = 85
+ Height = 74
+ Align = alClient
+ Caption = '.'
+ TabOrder = 15
+ TabStop = False
+ OnClick = numbuttonclick
+ end
+ object add: TButton
+ Tag = 14
+ Left = 256
+ Top = 214
+ Width = 88
+ Height = 74
+ Align = alClient
+ Caption = '+'
+ Font.Charset = HANGEUL_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -27
+ Font.Name = 'HY'#44053'M'
+ Font.Style = [fsBold]
+ ParentFont = False
+ TabOrder = 12
+ TabStop = False
+ OnClick = numbuttonclick
+ end
+ end
+ object ToolBar1: TToolBar
+ Left = 0
+ Top = 0
+ Width = 420
+ Height = 29
+ Caption = 'ToolBar1'
+ TabOrder = 1
+ end
+ object result: TButton
+ Tag = 18
+ Left = 344
+ Top = 327
+ Width = 75
+ Height = 146
+ Caption = '='
+ Font.Charset = HANGEUL_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -27
+ Font.Name = 'HY'#44053'M'
+ Font.Style = [fsBold]
+ ParentFont = False
+ TabOrder = 2
+ TabStop = False
+ OnClick = numbuttonclick
+ end
+ object clear: TButton
+ Tag = 21
+ Left = 344
+ Top = 256
+ Width = 75
+ Height = 71
+ Caption = 'C'
+ Font.Charset = HANGEUL_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -27
+ Font.Name = 'HY'#44053'M'
+ Font.Style = [fsBold]
+ ParentFont = False
+ TabOrder = 4
+ TabStop = False
+ OnClick = numbuttonclick
+ end
+ object delete: TButton
+ Tag = 22
+ Left = 344
+ Top = 185
+ Width = 75
+ Height = 71
+ Caption = #8592
+ Font.Charset = HANGEUL_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -27
+ Font.Name = 'HY'#44053'M'
+ Font.Style = [fsBold]
+ ParentFont = False
+ TabOrder = 5
+ TabStop = False
+ OnClick = numbuttonclick
+ end
+ object Edit1: TEdit
+ Left = 0
+ Top = 29
+ Width = 420
+ Height = 56
+ Align = alTop
+ Alignment = taRightJustify
+ Font.Charset = HANGEUL_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -48
+ Font.Name = 'HY'#44053'M'
+ Font.Style = [fsBold]
+ ParentFont = False
+ TabOrder = 3
+ end
+end
+>>>>>>> ea544203bcbbc8ff04b6fd585b9049812dbf02e4
diff --git "a/20_Task/M2/M2(calculation)_yangmyungwhan/\352\263\204\354\202\260\352\270\260.pas" "b/20_Task/M2/M2(calculation)_yangmyungwhan/\352\263\204\354\202\260\352\270\260.pas"
new file mode 100644
index 0000000..f3d8542
--- /dev/null
+++ "b/20_Task/M2/M2(calculation)_yangmyungwhan/\352\263\204\354\202\260\352\270\260.pas"
@@ -0,0 +1,347 @@
+<<<<<<< HEAD
+unit ;
+
+interface
+
+uses
+ Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
+ Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.ToolWin, Vcl.ComCtrls, Vcl.StdCtrls,
+ Vcl.ExtCtrls, Vcl.Menus;
+
+type
+ TForm1 = class(TForm)
+ GridPanel1: TGridPanel;
+ num7: TButton;
+ num8: TButton;
+ num9: TButton;
+ divide: TButton;
+ num4: TButton;
+ num5: TButton;
+ num6: TButton;
+ tbutton14: TButton;
+ num1: TButton;
+ num2: TButton;
+ num3: TButton;
+ sub: TButton;
+ num0: TButton;
+ num00: TButton;
+ dot: TButton;
+ add: TButton;
+ ToolBar1: TToolBar;
+ result: TButton;
+ clear: TButton;
+ delete: TButton;
+ Edit1: TEdit;
+
+ Procedure FormCreat(Sender: TObject);
+ Procedure NumButtonClick(Sender: TObject);
+
+ private
+ { Private declarations }
+ public
+ { Public declarations }
+ end;
+
+var
+ Form1: TForm1;
+ tag: integer;
+ calvar1: string;
+ calvar2: string; // or
+ calvar3: string; //operand1 ʱԷ°, ﰪ
+ calvar4: real; //
+ calvar5: integer; //
+ calvar6: string; //operand2
+
+implementation
+
+{$R *.dfm}
+
+{ TForm1 }
+
+procedure TForm1.numbuttonclick(sender: Tobject);
+begin
+ tag := (sender as TButton).Tag;
+ begin
+
+ case tag of
+ 20:
+ begin
+ if pos('.', Edit1.Text) = 0 then // ϳ
+ Edit1.Text := Edit1.Text +'.';
+ end;
+
+ 21:
+ begin
+ edit1.Text := '0'; //clear
+ calvar2 := '0';
+ calvar3 := '';
+ calvar4 := 0;
+ calvar6 := '';
+ end;
+
+ 22:
+ begin
+ edit1.text := copy(edit1.text, 1, length(edit1.Text)-1); // backspace
+ if length(edit1.Text)=0 then
+ edit1.Text :='0';
+ end
+ end;
+ end;
+
+ if tag<19 then
+ begin
+ if (tag >=0) and (tag <11) then // ư(0~11) 0, (12~18) 1
+ calvar1 := '0';
+
+ if (tag >=11) and (tag <19) then
+ calvar1 := '1';
+
+ calvar2 := calvar2 + calvar1;
+
+ if length(edit1.Text) >10 then //Է¹ 10
+ showmessage('Է¹ʰ');
+
+ if (calvar2 = '00') or (calvar2 = '0') then //'00' : clear, '0' Է, operand1
+ begin
+ edit1.Text := '';
+ calvar2 :='0';
+ edit1.Text := edit1.Text + floattostr((sender as tbutton).Tag); //floattostr : εҼ ڿ ȯϴ Լ
+ calvar3 := edit1.Text;
+ calvar4 := 0;
+ end;
+
+ if calvar2 = '01' then // Է
+ begin
+ calvar5 := tag;
+ edit1.Text := '';
+ end;
+
+ if (calvar2 = '010') or (calvar2 = '0100') then //operand2
+ begin
+ calvar2 := '010';
+ calvar6 := calvar6 + floattostr(tag);
+ edit1.text := calvar6;
+ end;
+
+ if (calvar2 = '0101') then // Է, '=' Է
+ begin //'0101' : 'óԷ, Է, ι°~Է, = ư or ߰'
+ calvar2 := '01'; // 0 1 0 1
+ case calvar5 of
+ 17 :
+ begin
+ try
+ calvar4 := strtofloat(calvar3) / strtofloat(calvar6);
+ except on e:EMathError do
+ showmessage('0 ϴ.');
+ end;
+ end;
+ 14 : calvar4 := strtofloat(calvar3) + strtofloat(calvar6);
+ 15 : calvar4 := strtofloat(calvar3) - strtofloat(calvar6);
+ 16 : calvar4 := strtofloat(calvar3) * strtofloat(calvar6);
+ end;
+
+ if tag = 18 then //
+ begin
+ edit1.Text := floattostr(calvar4);
+ calvar2 := '010'; //117 ư غ
+ end;
+
+ calvar6 := '';
+ edit1.Text := floattostr(calvar4);
+ calvar3 := floattostr(calvar4); //
+ calvar5 := tag;
+ end;
+
+ if (calvar2 = '1') or (calvar2 = '011') then
+ begin
+ calvar2 := '0';
+ if tag = 15 then
+ edit1.Text := '-'
+ else
+ showmessage('߸ ԷԴϴ.')
+ end;
+ end;
+end;
+
+
+procedure TForm1.FormCreat(Sender: TObject);
+begin
+ edit1.Text := '';
+end;
+
+
+end.
+=======
+unit ;
+
+interface
+
+uses
+ Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
+ Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.ToolWin, Vcl.ComCtrls, Vcl.StdCtrls,
+ Vcl.ExtCtrls, Vcl.Menus;
+
+type
+ TForm1 = class(TForm)
+ GridPanel1: TGridPanel;
+ num7: TButton;
+ num8: TButton;
+ num9: TButton;
+ divide: TButton;
+ num4: TButton;
+ num5: TButton;
+ num6: TButton;
+ tbutton14: TButton;
+ num1: TButton;
+ num2: TButton;
+ num3: TButton;
+ sub: TButton;
+ num0: TButton;
+ num00: TButton;
+ dot: TButton;
+ add: TButton;
+ ToolBar1: TToolBar;
+ result: TButton;
+ clear: TButton;
+ delete: TButton;
+ Edit1: TEdit;
+
+ Procedure FormCreat(Sender: TObject);
+ Procedure NumButtonClick(Sender: TObject);
+
+ private
+ { Private declarations }
+ public
+ { Public declarations }
+ end;
+
+var
+ Form1: TForm1;
+ tag: integer;
+ calvar1: string;
+ calvar2: string; // or
+ calvar3: string; //operand1 ʱԷ°, ﰪ
+ calvar4: real; //
+ calvar5: integer; //
+ calvar6: string; //operand2
+
+implementation
+
+{$R *.dfm}
+
+{ TForm1 }
+
+procedure TForm1.numbuttonclick(sender: Tobject);
+begin
+ tag := (sender as TButton).Tag;
+ begin
+
+ case tag of
+ 20:
+ begin
+ if pos('.', Edit1.Text) = 0 then // ϳ
+ Edit1.Text := Edit1.Text +'.';
+ end;
+
+ 21:
+ begin
+ edit1.Text := '0'; //clear
+ calvar2 := '0';
+ calvar3 := '';
+ calvar4 := 0;
+ calvar6 := '';
+ end;
+
+ 22:
+ begin
+ edit1.text := copy(edit1.text, 1, length(edit1.Text)-1); // backspace
+ if length(edit1.Text)=0 then
+ edit1.Text :='0';
+ end
+ end;
+ end;
+
+ if tag<19 then
+ begin
+ if (tag >=0) and (tag <11) then // ư(0~11) 0, (12~18) 1
+ calvar1 := '0';
+
+ if (tag >=11) and (tag <19) then
+ calvar1 := '1';
+
+ calvar2 := calvar2 + calvar1;
+
+ if length(edit1.Text) >10 then //Է¹ 10
+ showmessage('Է¹ʰ');
+
+ if (calvar2 = '00') or (calvar2 = '0') then //'00' : clear, '0' Է, operand1
+ begin
+ edit1.Text := '';
+ calvar2 :='0';
+ edit1.Text := edit1.Text + floattostr((sender as tbutton).Tag); //floattostr : εҼ ڿ ȯϴ Լ
+ calvar3 := edit1.Text;
+ calvar4 := 0;
+ end;
+
+ if calvar2 = '01' then // Է
+ begin
+ calvar5 := tag;
+ edit1.Text := '';
+ end;
+
+ if (calvar2 = '010') or (calvar2 = '0100') then //operand2
+ begin
+ calvar2 := '010';
+ calvar6 := calvar6 + floattostr(tag);
+ edit1.text := calvar6;
+ end;
+
+ if (calvar2 = '0101') then // Է, '=' Է
+ begin //'0101' : 'óԷ, Է, ι°~Է, = ư or ߰'
+ calvar2 := '01'; // 0 1 0 1
+ case calvar5 of
+ 17 :
+ begin
+ try
+ calvar4 := strtofloat(calvar3) / strtofloat(calvar6);
+ except on e:EMathError do
+ showmessage('0 ϴ.');
+ end;
+ end;
+ 14 : calvar4 := strtofloat(calvar3) + strtofloat(calvar6);
+ 15 : calvar4 := strtofloat(calvar3) - strtofloat(calvar6);
+ 16 : calvar4 := strtofloat(calvar3) * strtofloat(calvar6);
+ end;
+
+ if tag = 18 then //
+ begin
+ edit1.Text := floattostr(calvar4);
+ calvar2 := '010'; //117 ư غ
+ end;
+
+ calvar6 := '';
+ edit1.Text := floattostr(calvar4);
+ calvar3 := floattostr(calvar4); //
+ calvar5 := tag;
+ end;
+
+ if (calvar2 = '1') or (calvar2 = '011') then
+ begin
+ calvar2 := '0';
+ if tag = 15 then
+ edit1.Text := '-'
+ else
+ showmessage('߸ ԷԴϴ.')
+ end;
+ end;
+end;
+
+
+procedure TForm1.FormCreat(Sender: TObject);
+begin
+ edit1.Text := '';
+end;
+
+
+end.
+>>>>>>> ea544203bcbbc8ff04b6fd585b9049812dbf02e4
diff --git "a/20_Task/M2/\352\263\274\354\240\234\354\240\234\354\266\234_M2(\352\263\204\354\202\260\352\270\260)_\354\226\221\353\252\205\355\231\230/Win32/Debug/\352\263\204\354\202\260\352\270\260.dcu" "b/20_Task/M2/\352\263\274\354\240\234\354\240\234\354\266\234_M2(\352\263\204\354\202\260\352\270\260)_\354\226\221\353\252\205\355\231\230/Win32/Debug/\352\263\204\354\202\260\352\270\260.dcu"
new file mode 100644
index 0000000..4c40fb8
Binary files /dev/null and "b/20_Task/M2/\352\263\274\354\240\234\354\240\234\354\266\234_M2(\352\263\204\354\202\260\352\270\260)_\354\226\221\353\252\205\355\231\230/Win32/Debug/\352\263\204\354\202\260\352\270\260.dcu" differ
diff --git "a/20_Task/M2/\352\263\274\354\240\234\354\240\234\354\266\234_M2(\352\263\204\354\202\260\352\270\260)_\354\226\221\353\252\205\355\231\230/Win32/Debug/\352\263\204\354\202\260\352\270\260_\354\226\221\353\252\205\355\231\230.exe" "b/20_Task/M2/\352\263\274\354\240\234\354\240\234\354\266\234_M2(\352\263\204\354\202\260\352\270\260)_\354\226\221\353\252\205\355\231\230/Win32/Debug/\352\263\204\354\202\260\352\270\260_\354\226\221\353\252\205\355\231\230.exe"
new file mode 100644
index 0000000..be806ab
Binary files /dev/null and "b/20_Task/M2/\352\263\274\354\240\234\354\240\234\354\266\234_M2(\352\263\204\354\202\260\352\270\260)_\354\226\221\353\252\205\355\231\230/Win32/Debug/\352\263\204\354\202\260\352\270\260_\354\226\221\353\252\205\355\231\230.exe" differ
diff --git "a/20_Task/M2/\352\263\274\354\240\234\354\240\234\354\266\234_M2(\352\263\204\354\202\260\352\270\260)_\354\226\221\353\252\205\355\231\230/\352\263\204\354\202\260\352\270\260_\354\226\221\353\252\205\355\231\230.dpr" "b/20_Task/M2/\352\263\274\354\240\234\354\240\234\354\266\234_M2(\352\263\204\354\202\260\352\270\260)_\354\226\221\353\252\205\355\231\230/\352\263\204\354\202\260\352\270\260_\354\226\221\353\252\205\355\231\230.dpr"
new file mode 100644
index 0000000..fed6517
--- /dev/null
+++ "b/20_Task/M2/\352\263\274\354\240\234\354\240\234\354\266\234_M2(\352\263\204\354\202\260\352\270\260)_\354\226\221\353\252\205\355\231\230/\352\263\204\354\202\260\352\270\260_\354\226\221\353\252\205\355\231\230.dpr"
@@ -0,0 +1,17 @@
+program _ȯ;
+
+uses
+ Vcl.Forms,
+ in '..\\.pas' {Form1},
+ Vcl.Themes,
+ Vcl.Styles;
+
+{$R *.res}
+
+begin
+ Application.Initialize;
+ Application.MainFormOnTaskbar := True;
+ TStyleManager.TrySetStyle('Sky');
+ Application.CreateForm(TForm1, Form1);
+ Application.Run;
+end.
diff --git "a/20_Task/M2/\352\263\274\354\240\234\354\240\234\354\266\234_M2(\352\263\204\354\202\260\352\270\260)_\354\226\221\353\252\205\355\231\230/\352\263\204\354\202\260\352\270\260_\354\226\221\353\252\205\355\231\230.dproj" "b/20_Task/M2/\352\263\274\354\240\234\354\240\234\354\266\234_M2(\352\263\204\354\202\260\352\270\260)_\354\226\221\353\252\205\355\231\230/\352\263\204\354\202\260\352\270\260_\354\226\221\353\252\205\355\231\230.dproj"
new file mode 100644
index 0000000..343ac29
--- /dev/null
+++ "b/20_Task/M2/\352\263\274\354\240\234\354\240\234\354\266\234_M2(\352\263\204\354\202\260\352\270\260)_\354\226\221\353\252\205\355\231\230/\352\263\204\354\202\260\352\270\260_\354\226\221\353\252\205\355\231\230.dproj"
@@ -0,0 +1,621 @@
+
+
+ {081B45EC-0424-4AF5-92E1-6191645A0AF9}
+ 18.6
+ VCL
+ 계산기_양명환.dpr
+ True
+ Debug
+ Win32
+ 1
+ Application
+
+
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_1
+ true
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_2
+ true
+ true
+
+
+ .\$(Platform)\$(Config)
+ .\$(Platform)\$(Config)
+ false
+ false
+ false
+ false
+ false
+ System;Xml;Data;Datasnap;Web;Soap;Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;$(DCC_Namespace)
+ $(BDS)\bin\delphi_PROJECTICON.ico
+ $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_44.png
+ $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_150.png
+ 계산기_양명환
+ Amakrits|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Amakrits.vsf;"Amethyst Kamri|VCLSTYLE|$(BDSCOMMONDIR)\Styles\AmethystKamri.vsf";"Aqua Graphite|VCLSTYLE|$(BDSCOMMONDIR)\Styles\AquaGraphite.vsf";"Aqua Light Slate|VCLSTYLE|$(BDSCOMMONDIR)\Styles\AquaLightSlate.vsf";Auric|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Auric.vsf;Carbon|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Carbon.vsf;"Charcoal Dark Slate|VCLSTYLE|$(BDSCOMMONDIR)\Styles\CharcoalDarkSlate.vsf";"Cobalt XEMedia|VCLSTYLE|$(BDSCOMMONDIR)\Styles\CobaltXEMedia.vsf";"Cyan Dusk|VCLSTYLE|$(BDSCOMMONDIR)\Styles\CyanDusk.vsf";"Cyan Night|VCLSTYLE|$(BDSCOMMONDIR)\Styles\CyanNight.vsf";"Emerald Light Slate|VCLSTYLE|$(BDSCOMMONDIR)\Styles\EmeraldLightSlate.vsf";Glossy|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Glossy.vsf;Glow|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Glow.vsf;"Golden Graphite|VCLSTYLE|$(BDSCOMMONDIR)\Styles\GoldenGraphite.vsf";"Iceberg Classico|VCLSTYLE|$(BDSCOMMONDIR)\Styles\IcebergClassico.vsf";"Lavender Classico|VCLSTYLE|$(BDSCOMMONDIR)\Styles\LavenderClassico.vsf";Light|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Light.vsf;Luna|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Luna.vsf;"Metropolis UI Black|VCLSTYLE|$(BDSCOMMONDIR)\Styles\MetropolisUIBlack.vsf";"Metropolis UI Blue|VCLSTYLE|$(BDSCOMMONDIR)\Styles\MetropolisUIBlue.vsf";"Metropolis UI Dark|VCLSTYLE|$(BDSCOMMONDIR)\Styles\MetropolisUIDark.vsf";"Metropolis UI Green|VCLSTYLE|$(BDSCOMMONDIR)\Styles\MetropolisUIGreen.vsf";Obsidian|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Obsidian.vsf;"Onyx Blue|VCLSTYLE|$(BDSCOMMONDIR)\Styles\OnyxBlue.vsf";"Ruby Graphite|VCLSTYLE|$(BDSCOMMONDIR)\Styles\RubyGraphite.vsf";"Sapphire Kamri|VCLSTYLE|$(BDSCOMMONDIR)\Styles\SapphireKamri.vsf";Silver|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Silver.vsf;Sky|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Sky.vsf;"Slate Classico|VCLSTYLE|$(BDSCOMMONDIR)\Styles\SlateClassico.vsf";"Smokey Quartz Kamri|VCLSTYLE|$(BDSCOMMONDIR)\Styles\SmokeyQuartzKamri.vsf";"Tablet Light|VCLSTYLE|$(BDSCOMMONDIR)\Styles\TabletLight.vsf";TabletDark|VCLSTYLE|$(BDSCOMMONDIR)\Styles\TabletDark.vsf;"Turquoise Gray|VCLSTYLE|$(BDSCOMMONDIR)\Styles\TurquoiseGray.vsf";Windows10|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Windows10.vsf;"Windows10 Blue|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Windows10Blue.vsf";"Windows10 Dark|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Windows10Dark.vsf";"Windows10 Green|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Windows10Green.vsf";"Windows10 Purple|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Windows10Purple.vsf";"Windows10 SlateGray|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Windows10SlateGray.vsf"
+
+
+ DBXSqliteDriver;RESTComponents;fmxase;DBXDb2Driver;DBXInterBaseDriver;vclactnband;vclFireDAC;emsclientfiredac;tethering;svnui;DataSnapFireDAC;FireDACADSDriver;DBXMSSQLDriver;DatasnapConnectorsFreePascal;FireDACMSSQLDriver;vcltouch;vcldb;bindcompfmx;svn;DBXOracleDriver;inetdb;FmxTeeUI;emsedge;fmx;FireDACIBDriver;fmxdae;vclib;FireDACDBXDriver;dbexpress;IndyCore;vclx;dsnap;emsclient;DataSnapCommon;FireDACCommon;RESTBackendComponents;DataSnapConnectors;VCLRESTComponents;soapserver;vclie;bindengine;DBXMySQLDriver;CloudService;FireDACOracleDriver;FireDACMySQLDriver;DBXFirebirdDriver;FireDACCommonODBC;FireDACCommonDriver;DataSnapClient;inet;IndyIPCommon;bindcompdbx;vcl;IndyIPServer;DBXSybaseASEDriver;IndySystem;FireDACDb2Driver;dsnapcon;FireDACMSAccDriver;fmxFireDAC;FireDACInfxDriver;vclimg;TeeDB;FireDAC;emshosting;FireDACSqliteDriver;FireDACPgDriver;ibmonitor;FireDACASADriver;DBXOdbcDriver;FireDACTDataDriver;FMXTee;soaprtl;DbxCommonDriver;ibxpress;Tee;DataSnapServer;xmlrtl;soapmidas;DataSnapNativeClient;fmxobj;vclwinx;FireDACDSDriver;rtl;emsserverresource;DbxClientDriver;ibxbindings;DBXSybaseASADriver;CustomIPTransport;vcldsnap;bindcomp;appanalytics;DBXInformixDriver;IndyIPClient;bindcompvcl;TeeUI;vclribbon;dbxcds;VclSmp;adortl;FireDACODBCDriver;DataSnapIndy10ServerTransport;dsnapxml;DataSnapProviderClient;dbrtl;IndyProtocols;inetdbxpress;FireDACMongoDBDriver;DataSnapServerMidas;$(DCC_UsePackage)
+ Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
+ Debug
+ true
+ CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=com.embarcadero.$(MSBuildProjectName);ProductName=$(MSBuildProjectName);ProductVersion=1.0.0.0;Comments=
+ 1033
+ $(BDS)\bin\default_app.manifest
+
+
+ DBXSqliteDriver;RESTComponents;fmxase;DBXDb2Driver;DBXInterBaseDriver;vclactnband;vclFireDAC;emsclientfiredac;tethering;DataSnapFireDAC;FireDACADSDriver;DBXMSSQLDriver;DatasnapConnectorsFreePascal;FireDACMSSQLDriver;vcltouch;vcldb;bindcompfmx;DBXOracleDriver;inetdb;FmxTeeUI;emsedge;fmx;FireDACIBDriver;fmxdae;vclib;FireDACDBXDriver;dbexpress;IndyCore;vclx;dsnap;emsclient;DataSnapCommon;FireDACCommon;RESTBackendComponents;DataSnapConnectors;VCLRESTComponents;soapserver;vclie;bindengine;DBXMySQLDriver;CloudService;FireDACOracleDriver;FireDACMySQLDriver;DBXFirebirdDriver;FireDACCommonODBC;FireDACCommonDriver;DataSnapClient;inet;IndyIPCommon;bindcompdbx;vcl;IndyIPServer;DBXSybaseASEDriver;IndySystem;FireDACDb2Driver;dsnapcon;FireDACMSAccDriver;fmxFireDAC;FireDACInfxDriver;vclimg;TeeDB;FireDAC;emshosting;FireDACSqliteDriver;FireDACPgDriver;ibmonitor;FireDACASADriver;DBXOdbcDriver;FireDACTDataDriver;FMXTee;soaprtl;DbxCommonDriver;ibxpress;Tee;DataSnapServer;xmlrtl;soapmidas;DataSnapNativeClient;fmxobj;vclwinx;FireDACDSDriver;rtl;emsserverresource;DbxClientDriver;ibxbindings;DBXSybaseASADriver;CustomIPTransport;vcldsnap;bindcomp;appanalytics;DBXInformixDriver;IndyIPClient;bindcompvcl;TeeUI;vclribbon;dbxcds;VclSmp;adortl;FireDACODBCDriver;DataSnapIndy10ServerTransport;dsnapxml;DataSnapProviderClient;dbrtl;IndyProtocols;inetdbxpress;FireDACMongoDBDriver;DataSnapServerMidas;$(DCC_UsePackage)
+
+
+ DEBUG;$(DCC_Define)
+ true
+ false
+ true
+ true
+ true
+
+
+ false
+ true
+ PerMonitorV2
+ true
+ 1033
+
+
+ false
+ RELEASE;$(DCC_Define)
+ 0
+ 0
+
+
+ true
+ PerMonitorV2
+
+
+
+ MainSource
+
+
+
+ dfm
+
+
+ Cfg_2
+ Base
+
+
+ Base
+
+
+ Cfg_1
+ Base
+
+
+
+ Delphi.Personality.12
+ Application
+
+
+
+ 계산기_양명환.dpr
+
+
+ Embarcadero C++Builder Office 2000 Servers Package
+ Embarcadero C++Builder Office XP Servers Package
+ Microsoft Office 2000 Sample Automation Server Wrapper Components
+ Microsoft Office XP Sample Automation Server Wrapper Components
+
+
+
+
+
+ 계산기_양명환.exe
+ true
+
+
+
+
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ 0
+
+
+
+
+ classes
+ 1
+
+
+
+
+ res\xml
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ library\lib\armeabi
+ 1
+
+
+
+
+ library\lib\mips
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ res\drawable
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+
+
+ res\values-v21
+ 1
+
+
+
+
+ res\drawable
+ 1
+
+
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+
+
+ res\drawable-ldpi
+ 1
+
+
+
+
+ res\drawable-mdpi
+ 1
+
+
+
+
+ res\drawable-hdpi
+ 1
+
+
+
+
+ res\drawable-xhdpi
+ 1
+
+
+
+
+ res\drawable-small
+ 1
+
+
+
+
+ res\drawable-normal
+ 1
+
+
+
+
+ res\drawable-large
+ 1
+
+
+
+
+ res\drawable-xlarge
+ 1
+
+
+
+
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ 0
+
+
+
+
+ Contents\MacOS
+ 1
+ .framework
+
+
+ Contents\MacOS
+ 1
+ .framework
+
+
+ 0
+
+
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ 0
+ .dll;.bpl
+
+
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ 0
+ .bpl
+
+
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ Contents\Resources\StartUp\
+ 0
+
+
+ Contents\Resources\StartUp\
+ 0
+
+
+ 0
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\
+ 1
+
+
+ ..\
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+
+
+ ..\
+ 1
+
+
+ ..\
+ 1
+
+
+
+
+ Contents
+ 1
+
+
+ Contents
+ 1
+
+
+
+
+ Contents\Resources
+ 1
+
+
+ Contents\Resources
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ 0
+
+
+
+
+ 1
+
+
+ 1
+
+
+
+
+ Assets
+ 1
+
+
+ Assets
+ 1
+
+
+
+
+ Assets
+ 1
+
+
+ Assets
+ 1
+
+
+
+
+
+
+
+
+
+
+
+
+
+ True
+ False
+
+
+ 12
+
+
+
+
+
diff --git "a/20_Task/M2/\352\263\274\354\240\234\354\240\234\354\266\234_M2(\352\263\204\354\202\260\352\270\260)_\354\226\221\353\252\205\355\231\230/\352\263\204\354\202\260\352\270\260_\354\226\221\353\252\205\355\231\230.dproj.local" "b/20_Task/M2/\352\263\274\354\240\234\354\240\234\354\266\234_M2(\352\263\204\354\202\260\352\270\260)_\354\226\221\353\252\205\355\231\230/\352\263\204\354\202\260\352\270\260_\354\226\221\353\252\205\355\231\230.dproj.local"
new file mode 100644
index 0000000..2406107
--- /dev/null
+++ "b/20_Task/M2/\352\263\274\354\240\234\354\240\234\354\266\234_M2(\352\263\204\354\202\260\352\270\260)_\354\226\221\353\252\205\355\231\230/\352\263\204\354\202\260\352\270\260_\354\226\221\353\252\205\355\231\230.dproj.local"
@@ -0,0 +1,12 @@
+
+
+
+ 1899-12-30 00:00:00.000.416,C:\Users\양명환\Documents\Embarcadero\Studio\Projects\Unit1.pas=D:\201907_델파이교육\계산기\계산기.pas
+ 1899-12-30 00:00:00.000.416,C:\Users\양명환\Documents\Embarcadero\Studio\Projects\Unit1.dfm=D:\201907_델파이교육\계산기\계산기.dfm
+ 1899-12-30 00:00:00.000.198,D:\201907_델파이교육\계산기 과제_양명환\계산기_양명환.dproj=D:\201907_델파이교육\계산기 과제_양명환\계산기_양명환.dproj
+ 1899-12-30 00:00:00.000.239,=C:\Users\양명환\Documents\Embarcadero\Studio\Projects\Unit1.pas
+ 1899-12-30 00:00:00.000.779,C:\Users\양명환\Documents\Embarcadero\Studio\Projects\Project1.dproj=D:\201907_델파이교육\계산기\계산시_양명환.dproj
+ 1899-12-30 00:00:00.000.206,D:\201907_델파이교육\계산기\계산시_양명환.dproj=D:\201907_델파이교육\계산기\계산시_양명환.dproj
+ 1899-12-30 00:00:00.000.334,D:\201907_델파이교육\계산기\계산시_양명환.dproj=D:\201907_델파이교육\계산기 과제_양명환\계산기_양명환.dproj
+
+
diff --git "a/20_Task/M2/\352\263\274\354\240\234\354\240\234\354\266\234_M2(\352\263\204\354\202\260\352\270\260)_\354\226\221\353\252\205\355\231\230/\352\263\204\354\202\260\352\270\260_\354\226\221\353\252\205\355\231\230.identcache" "b/20_Task/M2/\352\263\274\354\240\234\354\240\234\354\266\234_M2(\352\263\204\354\202\260\352\270\260)_\354\226\221\353\252\205\355\231\230/\352\263\204\354\202\260\352\270\260_\354\226\221\353\252\205\355\231\230.identcache"
new file mode 100644
index 0000000..623d648
Binary files /dev/null and "b/20_Task/M2/\352\263\274\354\240\234\354\240\234\354\266\234_M2(\352\263\204\354\202\260\352\270\260)_\354\226\221\353\252\205\355\231\230/\352\263\204\354\202\260\352\270\260_\354\226\221\353\252\205\355\231\230.identcache" differ
diff --git "a/20_Task/M2/\352\263\274\354\240\234\354\240\234\354\266\234_M2(\352\263\204\354\202\260\352\270\260)_\354\226\221\353\252\205\355\231\230/\352\263\204\354\202\260\352\270\260_\354\226\221\353\252\205\355\231\230.res" "b/20_Task/M2/\352\263\274\354\240\234\354\240\234\354\266\234_M2(\352\263\204\354\202\260\352\270\260)_\354\226\221\353\252\205\355\231\230/\352\263\204\354\202\260\352\270\260_\354\226\221\353\252\205\355\231\230.res"
new file mode 100644
index 0000000..d8b8b77
Binary files /dev/null and "b/20_Task/M2/\352\263\274\354\240\234\354\240\234\354\266\234_M2(\352\263\204\354\202\260\352\270\260)_\354\226\221\353\252\205\355\231\230/\352\263\204\354\202\260\352\270\260_\354\226\221\353\252\205\355\231\230.res" differ
diff --git "a/20_Task/M2/\352\263\274\354\240\234\354\240\234\354\266\234_M2(\352\263\204\354\202\260\352\270\260)_\354\226\221\353\252\205\355\231\230/\352\263\204\354\202\260\352\270\260_\354\226\221\353\252\205\355\231\230.stat" "b/20_Task/M2/\352\263\274\354\240\234\354\240\234\354\266\234_M2(\352\263\204\354\202\260\352\270\260)_\354\226\221\353\252\205\355\231\230/\352\263\204\354\202\260\352\270\260_\354\226\221\353\252\205\355\231\230.stat"
new file mode 100644
index 0000000..1a3dbf5
--- /dev/null
+++ "b/20_Task/M2/\352\263\274\354\240\234\354\240\234\354\266\234_M2(\352\263\204\354\202\260\352\270\260)_\354\226\221\353\252\205\355\231\230/\352\263\204\354\202\260\352\270\260_\354\226\221\353\252\205\355\231\230.stat"
@@ -0,0 +1,10 @@
+[Stats]
+EditorSecs=7470
+DesignerSecs=303
+InspectorSecs=122
+CompileSecs=127369
+OtherSecs=141
+StartTime=2019-07-08 8:54:06
+RealKeys=0
+EffectiveKeys=0
+DebugSecs=1
diff --git a/30_Test/T1/ConditionTest/ConditionForm.dfm b/30_Test/T1/ConditionTest/ConditionForm.dfm
new file mode 100644
index 0000000..83e32da
--- /dev/null
+++ b/30_Test/T1/ConditionTest/ConditionForm.dfm
@@ -0,0 +1,56 @@
+object frmCondition: TfrmCondition
+ Left = 0
+ Top = 0
+ Caption = #54632#49688' '#48143' '#51312#44148#47928
+ ClientHeight = 300
+ ClientWidth = 316
+ Color = clBtnFace
+ Font.Charset = DEFAULT_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -11
+ Font.Name = 'Tahoma'
+ Font.Style = []
+ OldCreateOrder = False
+ OnCreate = FormCreate
+ PixelsPerInch = 96
+ TextHeight = 13
+ object Label1: TLabel
+ Left = 32
+ Top = 112
+ Width = 58
+ Height = 13
+ Caption = #50500#51060#46356' '#47785#47197
+ end
+ object edtId: TEdit
+ Left = 32
+ Top = 40
+ Width = 121
+ Height = 21
+ TabOrder = 0
+ TextHint = #50500#51060#46356
+ end
+ object edtPwd: TEdit
+ Left = 32
+ Top = 74
+ Width = 121
+ Height = 21
+ TabOrder = 1
+ TextHint = #48708#48128#48264#54840
+ end
+ object Button1: TButton
+ Left = 159
+ Top = 72
+ Width = 75
+ Height = 25
+ Caption = #47196#44536#51064
+ TabOrder = 2
+ OnClick = Button1Click
+ end
+ object mmoIds: TMemo
+ Left = 32
+ Top = 131
+ Width = 257
+ Height = 137
+ TabOrder = 3
+ end
+end
diff --git a/30_Test/T1/ConditionTest/ConditionForm.pas b/30_Test/T1/ConditionTest/ConditionForm.pas
new file mode 100644
index 0000000..c589518
--- /dev/null
+++ b/30_Test/T1/ConditionTest/ConditionForm.pas
@@ -0,0 +1,91 @@
+unit ConditionForm;
+
+interface
+
+uses
+ Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
+ Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls;
+
+type
+ TfrmCondition = class(TForm)
+ edtId: TEdit;
+ edtPwd: TEdit;
+ Button1: TButton;
+ mmoIds: TMemo;
+ Label1: TLabel;
+ procedure FormCreate(Sender: TObject);
+ procedure Button1Click(Sender: TObject);
+ private
+ FIds: array of string;
+ FPwds: array of string;
+ public
+ { Public declarations }
+ procedure InitData;
+
+ function LoginCheck(AId, APwd: string): Integer;
+ end;
+
+var
+ frmCondition: TfrmCondition;
+
+const
+ LOGIN_RESULT_OK = 0;
+ LOGIN_RESULT_NOTFOUND_ID = 10;
+ LOGIN_RESULT_INCORRECT = 20;
+ LOGIN_RESULT_EMPTY = 30;
+
+implementation
+
+{$R *.dfm}
+
+{ TForm2 }
+
+procedure TfrmCondition.FormCreate(Sender: TObject);
+var
+ I: Integer;
+begin
+ InitData;
+
+ for I := 0 to Length(FIds) - 1 do
+ mmoIds.Lines.Add(FIds[I] + '/' + FPwds[I]);
+end;
+
+procedure TfrmCondition.InitData;
+begin
+ FIds := ['abc', 'test', 'yourid', 'myid', 'unknown'];
+ FPwds := ['123', '123', '123', '123', '123'];
+end;
+
+function TfrmCondition.LoginCheck(AId, APwd: string): Integer;
+begin
+ { TODO : ̵ йȣ () 30 ȯ }
+
+ { TODO : ̵ FIds 迭ȿ 10 ȯ }
+
+ { TODO : йȣ ʴ 20 ȯ }
+
+ { TODO : ̵ йȣ ´ 0 ȯ }
+
+ Result := LOGIN_RESULT_OK;
+end;
+
+procedure TfrmCondition.Button1Click(Sender: TObject);
+var
+ LoginResult: Integer;
+begin
+ LoginResult := LoginCheck(edtId.Text, edtPwd.Text);
+
+ if LoginResult > 0 then
+ begin
+ case LoginResult of
+ LOGIN_RESULT_NOTFOUND_ID,
+ LOGIN_RESULT_INCORRECT: ShowMessage('̵ Ǵ йȣ ʽϴ.');
+ LOGIN_RESULT_EMPTY: ShowMessage('̵ йȣ Էϼ.');
+ end;
+ Exit;
+ end;
+
+ ShowMessage('α ');
+end;
+
+end.
diff --git a/30_Test/T1/ConditionTest/ConditionTest.dpr b/30_Test/T1/ConditionTest/ConditionTest.dpr
new file mode 100644
index 0000000..c593a27
--- /dev/null
+++ b/30_Test/T1/ConditionTest/ConditionTest.dpr
@@ -0,0 +1,14 @@
+program ConditionTest;
+
+uses
+ Vcl.Forms,
+ ConditionForm in 'ConditionForm.pas' {frmCondition};
+
+{$R *.res}
+
+begin
+ Application.Initialize;
+ Application.MainFormOnTaskbar := True;
+ Application.CreateForm(TfrmCondition, frmCondition);
+ Application.Run;
+end.
diff --git a/30_Test/T1/ConditionTest/ConditionTest.dproj b/30_Test/T1/ConditionTest/ConditionTest.dproj
new file mode 100644
index 0000000..7ccc922
--- /dev/null
+++ b/30_Test/T1/ConditionTest/ConditionTest.dproj
@@ -0,0 +1,612 @@
+
+
+ {C276C5A3-F3B9-4C9B-BFA4-957FB643EA50}
+ 18.6
+ VCL
+ ConditionTest.dpr
+ True
+ Debug
+ Win32
+ 1
+ Application
+
+
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_1
+ true
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_2
+ true
+ true
+
+
+ .\$(Platform)\$(Config)
+ .\$(Platform)\$(Config)
+ false
+ false
+ false
+ false
+ false
+ System;Xml;Data;Datasnap;Web;Soap;Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;$(DCC_Namespace)
+ $(BDS)\bin\delphi_PROJECTICON.ico
+ $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_44.png
+ $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_150.png
+ ConditionTest
+
+
+ DBXSqliteDriver;dxFlowChartRS26;dxPSdxMapControlLnkRS26;DBXDb2Driver;vclactnband;dxBarRS26;vclFireDAC;dxFireDACEMFRS26;tethering;dxSpreadSheetInplaceRichEditRS26;FireDACADSDriver;dxRichEditCoreRS26;dxPSdxSpreadSheetLnkRS26;FireDACMSSQLDriver;vcltouch;vcldb;svn;dxPSTeeChartRS26;dxGDIPlusRS26;dxPSdxFCLnkRS26;dxCloudServiceLibraryRS26;dxPSLnksRS26;FireDACDBXDriver;cxGridRS26;dxPDFViewerRS26;dxPsPrVwAdvRS26;vclx;dxPScxTLLnkRS26;RESTBackendComponents;VCLRESTComponents;Month;vclie;bindengine;CloudService;dxmdsRS26;FireDACMySQLDriver;dxdborRS26;DataSnapClient;dxFireDACServerModeRS26;bindcompdbx;BabaComp103;IndyIPServer;DBXSybaseASEDriver;HsBarcode1DRun;cxPivotGridRS26;IndySystem;cxTreeListdxBarPopupMenuRS26;dsnapcon;cxTreeListRS26;dxPScxPivotGridLnkRS26;cxSchedulerRibbonStyleEventEditorRS26;dxPSCoreRS26;FireDACMSAccDriver;fmxFireDAC;FireDACInfxDriver;vclimg;dxSpreadSheetRS26;dxBarExtItemsRS26;dxPSdxGaugeControlLnkRS26;emshosting;DBXOdbcDriver;FireDACTDataDriver;FMXTee;dxdbtrRS26;dxRichEditControlCoreRS26;soaprtl;DbxCommonDriver;dxFlowChartAdvancedCustomizeFormRS26;dxDockingRS26;xmlrtl;soapmidas;DataSnapNativeClient;fmxobj;cxLibraryRS26;rtl;emsserverresource;DbxClientDriver;DBXSybaseASADriver;dxPScxSchedulerLnkRS26;CodeSiteExpressPkg;dxSpreadSheetConditionalFormattingDialogsRS26;appanalytics;dxRibbonCustomizationFormRS26;cxSchedulerGridRS26;QR506RunDXE10_3;IndyIPClient;bindcompvcl;TeeUI;dxADOEMFRS26;VclSmp;cxInitD103;FireDACODBCDriver;dxRibbonRS26;DataSnapIndy10ServerTransport;dxPScxCommonRS26;dxRichEditDocumentModelRS26;DataSnapProviderClient;FireDACMongoDBDriver;dxFlowChartDesignerRS26;dxPScxGridLnkRS26;dxSpreadSheetCoreRS26;DataSnapServerMidas;RESTComponents;DBXInterBaseDriver;dxPScxExtCommonRS26;emsclientfiredac;DataSnapFireDAC;svnui;DBXMSSQLDriver;dxRichEditControlRS26;DatasnapConnectorsFreePascal;dxGaugeControlRS26;dxorgcRS26;dxPScxVGridLnkRS26;bindcompfmx;DBXOracleDriver;inetdb;dxBarDBNavRS26;dxDBXServerModeRS26;FmxTeeUI;emsedge;fmx;FireDACIBDriver;fmxdae;dxServerModeRS26;dxWizardControlRS26;dxTabbedMDIRS26;dxEMFRS26;dbexpress;IndyCore;dxComnRS26;dsnap;emsclient;DataSnapCommon;FireDACCommon;DataSnapConnectors;cxSchedulerTreeBrowserRS26;dxADOServerModeRS26;soapserver;cxPivotGridOLAPRS26;cxVerticalGridRS26;dxtrmdRS26;FireDACOracleDriver;DBXMySQLDriver;cxSchedulerRS26;cxSchedulerWebServiceStorageRS26;dxPSdxLCLnkRS26;DBXFirebirdDriver;FireDACCommonODBC;FireDACCommonDriver;dxMapControlRS26;inet;dxSpellCheckerRS26;IndyIPCommon;dxSpreadSheetCoreConditionalFormattingDialogsRS26;vcl;dxPSdxDBOCLnkRS26;FireDACDb2Driver;dxSpreadSheetReportDesignerRS26;ConvertPack260;dxPScxPCProdRS26;dxNavBarRS26;dxCoreRS26;cxExportRS26;TeeDB;FireDAC;dxHttpIndyRequestRS26;dxPSPrVwRibbonRS26;FireDACSqliteDriver;FireDACPgDriver;dxPSRichEditControlLnkRS26;FireDACASADriver;cxPivotGridChartRS26;dxPSDBTeeChartRS26;Tee;DataSnapServer;dxPSdxDBTVLnkRS26;vclwinx;FireDACDSDriver;dxTileControlRS26;dxSkinsCoreRS26;CustomIPTransport;vcldsnap;bindcomp;dxPSdxOCLnkRS26;DBXInformixDriver;dbxcds;adortl;dxSpreadSheetCoreDialogsRS26;dxBarExtDBItemsRS26;dsnapxml;dbrtl;IndyProtocols;inetdbxpress;dxPSdxPDFViewerLnkRS26;dxRichEditInplaceRS26;fmxase;$(DCC_UsePackage)
+ Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
+ Debug
+ true
+ CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=com.embarcadero.$(MSBuildProjectName);ProductName=$(MSBuildProjectName);ProductVersion=1.0.0.0;Comments=
+ 1033
+ $(BDS)\bin\default_app.manifest
+
+
+ DBXSqliteDriver;dxFlowChartRS26;dxPSdxMapControlLnkRS26;DBXDb2Driver;vclactnband;dxBarRS26;vclFireDAC;dxFireDACEMFRS26;tethering;dxSpreadSheetInplaceRichEditRS26;FireDACADSDriver;dxRichEditCoreRS26;dxPSdxSpreadSheetLnkRS26;FireDACMSSQLDriver;vcltouch;vcldb;dxPSTeeChartRS26;dxGDIPlusRS26;dxPSdxFCLnkRS26;dxCloudServiceLibraryRS26;dxPSLnksRS26;FireDACDBXDriver;cxGridRS26;dxPDFViewerRS26;dxPsPrVwAdvRS26;vclx;dxPScxTLLnkRS26;RESTBackendComponents;VCLRESTComponents;vclie;bindengine;CloudService;dxmdsRS26;FireDACMySQLDriver;dxdborRS26;DataSnapClient;dxFireDACServerModeRS26;bindcompdbx;IndyIPServer;DBXSybaseASEDriver;HsBarcode1DRun;cxPivotGridRS26;IndySystem;cxTreeListdxBarPopupMenuRS26;dsnapcon;cxTreeListRS26;dxPScxPivotGridLnkRS26;cxSchedulerRibbonStyleEventEditorRS26;dxPSCoreRS26;FireDACMSAccDriver;fmxFireDAC;FireDACInfxDriver;vclimg;dxSpreadSheetRS26;dxBarExtItemsRS26;dxPSdxGaugeControlLnkRS26;emshosting;DBXOdbcDriver;FireDACTDataDriver;FMXTee;dxdbtrRS26;dxRichEditControlCoreRS26;soaprtl;DbxCommonDriver;dxFlowChartAdvancedCustomizeFormRS26;dxDockingRS26;xmlrtl;soapmidas;DataSnapNativeClient;fmxobj;cxLibraryRS26;rtl;emsserverresource;DbxClientDriver;DBXSybaseASADriver;dxPScxSchedulerLnkRS26;dxSpreadSheetConditionalFormattingDialogsRS26;appanalytics;dxRibbonCustomizationFormRS26;cxSchedulerGridRS26;QR506RunDXE10_3;IndyIPClient;bindcompvcl;TeeUI;dxADOEMFRS26;VclSmp;FireDACODBCDriver;dxRibbonRS26;DataSnapIndy10ServerTransport;dxPScxCommonRS26;dxRichEditDocumentModelRS26;DataSnapProviderClient;FireDACMongoDBDriver;dxFlowChartDesignerRS26;dxPScxGridLnkRS26;dxSpreadSheetCoreRS26;DataSnapServerMidas;RESTComponents;DBXInterBaseDriver;dxPScxExtCommonRS26;emsclientfiredac;DataSnapFireDAC;DBXMSSQLDriver;dxRichEditControlRS26;DatasnapConnectorsFreePascal;dxGaugeControlRS26;dxorgcRS26;dxPScxVGridLnkRS26;bindcompfmx;DBXOracleDriver;inetdb;dxBarDBNavRS26;dxDBXServerModeRS26;FmxTeeUI;emsedge;fmx;FireDACIBDriver;fmxdae;dxServerModeRS26;dxWizardControlRS26;dxTabbedMDIRS26;dxEMFRS26;dbexpress;IndyCore;dxComnRS26;dsnap;emsclient;DataSnapCommon;FireDACCommon;DataSnapConnectors;cxSchedulerTreeBrowserRS26;dxADOServerModeRS26;soapserver;cxPivotGridOLAPRS26;cxVerticalGridRS26;dxtrmdRS26;FireDACOracleDriver;DBXMySQLDriver;cxSchedulerRS26;cxSchedulerWebServiceStorageRS26;dxPSdxLCLnkRS26;DBXFirebirdDriver;FireDACCommonODBC;FireDACCommonDriver;dxMapControlRS26;inet;dxSpellCheckerRS26;IndyIPCommon;dxSpreadSheetCoreConditionalFormattingDialogsRS26;vcl;dxPSdxDBOCLnkRS26;FireDACDb2Driver;dxSpreadSheetReportDesignerRS26;dxPScxPCProdRS26;dxNavBarRS26;dxCoreRS26;cxExportRS26;TeeDB;FireDAC;dxHttpIndyRequestRS26;dxPSPrVwRibbonRS26;FireDACSqliteDriver;FireDACPgDriver;dxPSRichEditControlLnkRS26;FireDACASADriver;cxPivotGridChartRS26;dxPSDBTeeChartRS26;Tee;DataSnapServer;dxPSdxDBTVLnkRS26;vclwinx;FireDACDSDriver;dxTileControlRS26;dxSkinsCoreRS26;CustomIPTransport;vcldsnap;bindcomp;dxPSdxOCLnkRS26;DBXInformixDriver;dbxcds;adortl;dxSpreadSheetCoreDialogsRS26;dxBarExtDBItemsRS26;dsnapxml;dbrtl;IndyProtocols;inetdbxpress;dxPSdxPDFViewerLnkRS26;dxRichEditInplaceRS26;fmxase;$(DCC_UsePackage)
+
+
+ DEBUG;$(DCC_Define)
+ true
+ false
+ true
+ true
+ true
+
+
+ false
+ true
+ PerMonitorV2
+
+
+ false
+ RELEASE;$(DCC_Define)
+ 0
+ 0
+
+
+ true
+ PerMonitorV2
+
+
+
+ MainSource
+
+
+
+ dfm
+
+
+ Cfg_2
+ Base
+
+
+ Base
+
+
+ Cfg_1
+ Base
+
+
+
+ Delphi.Personality.12
+ Application
+
+
+
+ ConditionTest.dpr
+
+
+
+
+
+ ConditionTest.exe
+ true
+
+
+
+
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ 0
+
+
+
+
+ classes
+ 1
+
+
+
+
+ res\xml
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ library\lib\armeabi
+ 1
+
+
+
+
+ library\lib\mips
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ res\drawable
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+
+
+ res\values-v21
+ 1
+
+
+
+
+ res\drawable
+ 1
+
+
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+
+
+ res\drawable-ldpi
+ 1
+
+
+
+
+ res\drawable-mdpi
+ 1
+
+
+
+
+ res\drawable-hdpi
+ 1
+
+
+
+
+ res\drawable-xhdpi
+ 1
+
+
+
+
+ res\drawable-small
+ 1
+
+
+
+
+ res\drawable-normal
+ 1
+
+
+
+
+ res\drawable-large
+ 1
+
+
+
+
+ res\drawable-xlarge
+ 1
+
+
+
+
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ 0
+
+
+
+
+ Contents\MacOS
+ 1
+ .framework
+
+
+ Contents\MacOS
+ 1
+ .framework
+
+
+ 0
+
+
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ 0
+ .dll;.bpl
+
+
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ 0
+ .bpl
+
+
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ Contents\Resources\StartUp\
+ 0
+
+
+ Contents\Resources\StartUp\
+ 0
+
+
+ 0
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\
+ 1
+
+
+ ..\
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+
+
+ ..\
+ 1
+
+
+ ..\
+ 1
+
+
+
+
+ Contents
+ 1
+
+
+ Contents
+ 1
+
+
+
+
+ Contents\Resources
+ 1
+
+
+ Contents\Resources
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ 0
+
+
+
+
+ 1
+
+
+ 1
+
+
+
+
+ Assets
+ 1
+
+
+ Assets
+ 1
+
+
+
+
+ Assets
+ 1
+
+
+ Assets
+ 1
+
+
+
+
+
+
+
+
+
+
+
+
+
+ True
+ False
+
+
+ 12
+
+
+
+
+
diff --git a/30_Test/T1/ConditionTest/ConditionTest.res b/30_Test/T1/ConditionTest/ConditionTest.res
new file mode 100644
index 0000000..7e8fd36
Binary files /dev/null and b/30_Test/T1/ConditionTest/ConditionTest.res differ
diff --git a/30_Test/T1/LoopTest/LoopForm.dfm b/30_Test/T1/LoopTest/LoopForm.dfm
new file mode 100644
index 0000000..3c4f9cb
--- /dev/null
+++ b/30_Test/T1/LoopTest/LoopForm.dfm
@@ -0,0 +1,59 @@
+object frmLoop: TfrmLoop
+ Left = 0
+ Top = 0
+ Caption = 'frmLoop'
+ ClientHeight = 144
+ ClientWidth = 227
+ Color = clBtnFace
+ Font.Charset = DEFAULT_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -11
+ Font.Name = 'Tahoma'
+ Font.Style = []
+ OldCreateOrder = False
+ PixelsPerInch = 96
+ TextHeight = 13
+ object Label1: TLabel
+ Left = 103
+ Top = 35
+ Width = 8
+ Height = 13
+ Caption = '~'
+ end
+ object edtStartNum: TEdit
+ Left = 40
+ Top = 32
+ Width = 57
+ Height = 21
+ NumbersOnly = True
+ TabOrder = 0
+ TextHint = #49884#51089
+ end
+ object btnOddCount: TButton
+ Left = 40
+ Top = 59
+ Width = 161
+ Height = 25
+ Caption = #46160' '#49688' '#49324#51060#51032' '#54848#49688' '#44079#49688#45716'?'
+ TabOrder = 2
+ OnClick = btnOddCountClick
+ end
+ object edtEndNum: TEdit
+ Left = 128
+ Top = 32
+ Width = 57
+ Height = 21
+ NumbersOnly = True
+ TabOrder = 1
+ TextHint = #45149
+ end
+ object btnMul3Sum: TButton
+ Left = 40
+ Top = 90
+ Width = 161
+ Height = 25
+ Caption = #46160' '#49688' '#49324#51060#51032' 3'#51032' '#48176#49688#51032' '#54633#51008'?'
+ TabOrder = 3
+ OnClick = btnMul3SumClick
+ end
+end
diff --git a/30_Test/T1/LoopTest/LoopForm.pas b/30_Test/T1/LoopTest/LoopForm.pas
new file mode 100644
index 0000000..0b64261
--- /dev/null
+++ b/30_Test/T1/LoopTest/LoopForm.pas
@@ -0,0 +1,81 @@
+unit LoopForm;
+
+interface
+
+uses
+ Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
+ Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls;
+
+type
+ TfrmVariable = class(TForm)
+ Label2: TLabel;
+ Label1: TLabel;
+ edtSum: TEdit;
+ edtNum: TEdit;
+ btnPlus: TButton;
+ btnMinus: TButton;
+ procedure btnPlusClick(Sender: TObject);
+ procedure btnMinusClick(Sender: TObject);
+
+ private
+ FSum : integer;
+ { Private declarations }
+ public
+ { Public declarations }
+ /// FSum ʱȭ Ѵ.
+ procedure InitData;
+ /// FSum Ķ ANum Ѵ.
+ function AddNum(ANum: Integer): Integer;
+ /// FSum Ķ ANum .
+ function SubNum(ANum: Integer): Integer;
+ end;
+
+var
+ frmVariable: TfrmVariable;
+
+implementation
+
+{$R *.dfm}
+
+{ TForm1 }
+
+// Էµ ϴ.
+procedure TfrmVariable.btnMinusClick(Sender: TObject);
+var
+ Num, Sum: Integer;
+begin
+ Num := StrToInt(edtNum.Text);
+ Sum := SubNum(Num);
+
+ edtSum.Text := IntToStr(Sum);
+end;
+
+// Էµ մϴ.
+procedure TfrmVariable.btnPlusClick(Sender: TObject);
+var
+ Num, Sum: Integer;
+begin
+ Num := StrToInt(edtNum.Text);
+ Sum := AddNum(Num);
+
+ edtSum.Text := IntToStr(Sum);
+end;
+
+procedure TfrmVariable.InitData;
+begin
+ // FNum ʱȭ ϼ.
+end;
+
+function TfrmVariable.AddNum(ANum: Integer): Integer;
+begin
+ Fsum := Fsum + ANum;
+ Result := FSum;
+end;
+
+function TfrmVariable.SubNum(ANum: Integer): Integer;
+begin
+ FSum := Fsum - Anum;
+ Result := FSum;
+end;
+
+end.
diff --git a/30_Test/T1/LoopTest/LoopTest.dpr b/30_Test/T1/LoopTest/LoopTest.dpr
new file mode 100644
index 0000000..2ccb46a
--- /dev/null
+++ b/30_Test/T1/LoopTest/LoopTest.dpr
@@ -0,0 +1,14 @@
+program LoopTest;
+
+uses
+ Vcl.Forms,
+ LoopForm in 'LoopForm.pas' {frmLoop};
+
+{$R *.res}
+
+begin
+ Application.Initialize;
+ Application.MainFormOnTaskbar := True;
+ Application.CreateForm(TfrmLoop, frmLoop);
+ Application.Run;
+end.
diff --git a/30_Test/T1/LoopTest/LoopTest.dproj b/30_Test/T1/LoopTest/LoopTest.dproj
new file mode 100644
index 0000000..df341c6
--- /dev/null
+++ b/30_Test/T1/LoopTest/LoopTest.dproj
@@ -0,0 +1,615 @@
+
+
+ {5BDA901E-191B-4C85-9E35-854C64537FE3}
+ 18.6
+ VCL
+ LoopTest.dpr
+ True
+ Debug
+ Win32
+ 1
+ Application
+
+
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_1
+ true
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_2
+ true
+ true
+
+
+ .\$(Platform)\$(Config)
+ .\$(Platform)\$(Config)
+ false
+ false
+ false
+ false
+ false
+ System;Xml;Data;Datasnap;Web;Soap;Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;$(DCC_Namespace)
+ $(BDS)\bin\delphi_PROJECTICON.ico
+ $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_44.png
+ $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_150.png
+ LoopTest
+
+
+ DBXSqliteDriver;dxFlowChartRS26;dxPSdxMapControlLnkRS26;DBXDb2Driver;vclactnband;dxBarRS26;vclFireDAC;dxFireDACEMFRS26;tethering;dxSpreadSheetInplaceRichEditRS26;FireDACADSDriver;dxRichEditCoreRS26;dxPSdxSpreadSheetLnkRS26;FireDACMSSQLDriver;vcltouch;vcldb;svn;dxPSTeeChartRS26;dxGDIPlusRS26;dxPSdxFCLnkRS26;dxCloudServiceLibraryRS26;dxPSLnksRS26;FireDACDBXDriver;cxGridRS26;dxPDFViewerRS26;dxPsPrVwAdvRS26;vclx;dxPScxTLLnkRS26;RESTBackendComponents;VCLRESTComponents;Month;vclie;bindengine;CloudService;dxmdsRS26;FireDACMySQLDriver;dxdborRS26;DataSnapClient;dxFireDACServerModeRS26;bindcompdbx;BabaComp103;IndyIPServer;DBXSybaseASEDriver;HsBarcode1DRun;cxPivotGridRS26;IndySystem;cxTreeListdxBarPopupMenuRS26;dsnapcon;cxTreeListRS26;dxPScxPivotGridLnkRS26;cxSchedulerRibbonStyleEventEditorRS26;dxPSCoreRS26;FireDACMSAccDriver;fmxFireDAC;FireDACInfxDriver;vclimg;dxSpreadSheetRS26;dxBarExtItemsRS26;dxPSdxGaugeControlLnkRS26;emshosting;DBXOdbcDriver;FireDACTDataDriver;FMXTee;dxdbtrRS26;dxRichEditControlCoreRS26;soaprtl;DbxCommonDriver;dxFlowChartAdvancedCustomizeFormRS26;dxDockingRS26;xmlrtl;soapmidas;DataSnapNativeClient;fmxobj;cxLibraryRS26;rtl;emsserverresource;DbxClientDriver;DBXSybaseASADriver;dxPScxSchedulerLnkRS26;CodeSiteExpressPkg;dxSpreadSheetConditionalFormattingDialogsRS26;appanalytics;dxRibbonCustomizationFormRS26;cxSchedulerGridRS26;QR506RunDXE10_3;IndyIPClient;bindcompvcl;TeeUI;dxADOEMFRS26;VclSmp;cxInitD103;FireDACODBCDriver;dxRibbonRS26;DataSnapIndy10ServerTransport;dxPScxCommonRS26;dxRichEditDocumentModelRS26;DataSnapProviderClient;FireDACMongoDBDriver;dxFlowChartDesignerRS26;dxPScxGridLnkRS26;dxSpreadSheetCoreRS26;DataSnapServerMidas;RESTComponents;DBXInterBaseDriver;dxPScxExtCommonRS26;emsclientfiredac;DataSnapFireDAC;svnui;DBXMSSQLDriver;dxRichEditControlRS26;DatasnapConnectorsFreePascal;dxGaugeControlRS26;dxorgcRS26;dxPScxVGridLnkRS26;bindcompfmx;DBXOracleDriver;inetdb;dxBarDBNavRS26;dxDBXServerModeRS26;FmxTeeUI;emsedge;fmx;FireDACIBDriver;fmxdae;dxServerModeRS26;dxWizardControlRS26;dxTabbedMDIRS26;dxEMFRS26;dbexpress;IndyCore;dxComnRS26;dsnap;emsclient;DataSnapCommon;FireDACCommon;DataSnapConnectors;cxSchedulerTreeBrowserRS26;dxADOServerModeRS26;soapserver;cxPivotGridOLAPRS26;cxVerticalGridRS26;dxtrmdRS26;FireDACOracleDriver;DBXMySQLDriver;cxSchedulerRS26;cxSchedulerWebServiceStorageRS26;dxPSdxLCLnkRS26;DBXFirebirdDriver;FireDACCommonODBC;FireDACCommonDriver;dxMapControlRS26;inet;dxSpellCheckerRS26;IndyIPCommon;dxSpreadSheetCoreConditionalFormattingDialogsRS26;vcl;dxPSdxDBOCLnkRS26;FireDACDb2Driver;dxSpreadSheetReportDesignerRS26;ConvertPack260;dxPScxPCProdRS26;dxNavBarRS26;dxCoreRS26;cxExportRS26;TeeDB;FireDAC;dxHttpIndyRequestRS26;dxPSPrVwRibbonRS26;FireDACSqliteDriver;FireDACPgDriver;dxPSRichEditControlLnkRS26;FireDACASADriver;cxPivotGridChartRS26;dxPSDBTeeChartRS26;Tee;DataSnapServer;dxPSdxDBTVLnkRS26;vclwinx;FireDACDSDriver;dxTileControlRS26;dxSkinsCoreRS26;CustomIPTransport;vcldsnap;bindcomp;dxPSdxOCLnkRS26;DBXInformixDriver;dbxcds;adortl;dxSpreadSheetCoreDialogsRS26;dxBarExtDBItemsRS26;dsnapxml;dbrtl;IndyProtocols;inetdbxpress;dxPSdxPDFViewerLnkRS26;dxRichEditInplaceRS26;fmxase;$(DCC_UsePackage)
+ Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
+ Debug
+ true
+ CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=com.embarcadero.$(MSBuildProjectName);ProductName=$(MSBuildProjectName);ProductVersion=1.0.0.0;Comments=
+ 1033
+ $(BDS)\bin\default_app.manifest
+
+
+ DBXSqliteDriver;dxFlowChartRS26;dxPSdxMapControlLnkRS26;DBXDb2Driver;vclactnband;dxBarRS26;vclFireDAC;dxFireDACEMFRS26;tethering;dxSpreadSheetInplaceRichEditRS26;FireDACADSDriver;dxRichEditCoreRS26;dxPSdxSpreadSheetLnkRS26;FireDACMSSQLDriver;vcltouch;vcldb;dxPSTeeChartRS26;dxGDIPlusRS26;dxPSdxFCLnkRS26;dxCloudServiceLibraryRS26;dxPSLnksRS26;FireDACDBXDriver;cxGridRS26;dxPDFViewerRS26;dxPsPrVwAdvRS26;vclx;dxPScxTLLnkRS26;RESTBackendComponents;VCLRESTComponents;vclie;bindengine;CloudService;dxmdsRS26;FireDACMySQLDriver;dxdborRS26;DataSnapClient;dxFireDACServerModeRS26;bindcompdbx;IndyIPServer;DBXSybaseASEDriver;HsBarcode1DRun;cxPivotGridRS26;IndySystem;cxTreeListdxBarPopupMenuRS26;dsnapcon;cxTreeListRS26;dxPScxPivotGridLnkRS26;cxSchedulerRibbonStyleEventEditorRS26;dxPSCoreRS26;FireDACMSAccDriver;fmxFireDAC;FireDACInfxDriver;vclimg;dxSpreadSheetRS26;dxBarExtItemsRS26;dxPSdxGaugeControlLnkRS26;emshosting;DBXOdbcDriver;FireDACTDataDriver;FMXTee;dxdbtrRS26;dxRichEditControlCoreRS26;soaprtl;DbxCommonDriver;dxFlowChartAdvancedCustomizeFormRS26;dxDockingRS26;xmlrtl;soapmidas;DataSnapNativeClient;fmxobj;cxLibraryRS26;rtl;emsserverresource;DbxClientDriver;DBXSybaseASADriver;dxPScxSchedulerLnkRS26;dxSpreadSheetConditionalFormattingDialogsRS26;appanalytics;dxRibbonCustomizationFormRS26;cxSchedulerGridRS26;QR506RunDXE10_3;IndyIPClient;bindcompvcl;TeeUI;dxADOEMFRS26;VclSmp;FireDACODBCDriver;dxRibbonRS26;DataSnapIndy10ServerTransport;dxPScxCommonRS26;dxRichEditDocumentModelRS26;DataSnapProviderClient;FireDACMongoDBDriver;dxFlowChartDesignerRS26;dxPScxGridLnkRS26;dxSpreadSheetCoreRS26;DataSnapServerMidas;RESTComponents;DBXInterBaseDriver;dxPScxExtCommonRS26;emsclientfiredac;DataSnapFireDAC;DBXMSSQLDriver;dxRichEditControlRS26;DatasnapConnectorsFreePascal;dxGaugeControlRS26;dxorgcRS26;dxPScxVGridLnkRS26;bindcompfmx;DBXOracleDriver;inetdb;dxBarDBNavRS26;dxDBXServerModeRS26;FmxTeeUI;emsedge;fmx;FireDACIBDriver;fmxdae;dxServerModeRS26;dxWizardControlRS26;dxTabbedMDIRS26;dxEMFRS26;dbexpress;IndyCore;dxComnRS26;dsnap;emsclient;DataSnapCommon;FireDACCommon;DataSnapConnectors;cxSchedulerTreeBrowserRS26;dxADOServerModeRS26;soapserver;cxPivotGridOLAPRS26;cxVerticalGridRS26;dxtrmdRS26;FireDACOracleDriver;DBXMySQLDriver;cxSchedulerRS26;cxSchedulerWebServiceStorageRS26;dxPSdxLCLnkRS26;DBXFirebirdDriver;FireDACCommonODBC;FireDACCommonDriver;dxMapControlRS26;inet;dxSpellCheckerRS26;IndyIPCommon;dxSpreadSheetCoreConditionalFormattingDialogsRS26;vcl;dxPSdxDBOCLnkRS26;FireDACDb2Driver;dxSpreadSheetReportDesignerRS26;dxPScxPCProdRS26;dxNavBarRS26;dxCoreRS26;cxExportRS26;TeeDB;FireDAC;dxHttpIndyRequestRS26;dxPSPrVwRibbonRS26;FireDACSqliteDriver;FireDACPgDriver;dxPSRichEditControlLnkRS26;FireDACASADriver;cxPivotGridChartRS26;dxPSDBTeeChartRS26;Tee;DataSnapServer;dxPSdxDBTVLnkRS26;vclwinx;FireDACDSDriver;dxTileControlRS26;dxSkinsCoreRS26;CustomIPTransport;vcldsnap;bindcomp;dxPSdxOCLnkRS26;DBXInformixDriver;dbxcds;adortl;dxSpreadSheetCoreDialogsRS26;dxBarExtDBItemsRS26;dsnapxml;dbrtl;IndyProtocols;inetdbxpress;dxPSdxPDFViewerLnkRS26;dxRichEditInplaceRS26;fmxase;$(DCC_UsePackage)
+
+
+ DEBUG;$(DCC_Define)
+ true
+ false
+ true
+ true
+ true
+
+
+ false
+ true
+ PerMonitorV2
+
+
+ false
+ RELEASE;$(DCC_Define)
+ 0
+ 0
+
+
+ true
+ PerMonitorV2
+
+
+
+ MainSource
+
+
+
+ dfm
+
+
+ Cfg_2
+ Base
+
+
+ Base
+
+
+ Cfg_1
+ Base
+
+
+
+ Delphi.Personality.12
+ Application
+
+
+
+ LoopTest.dpr
+
+
+
+
+
+ LoopTest.exe
+ true
+
+
+
+
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ 0
+
+
+
+
+ classes
+ 1
+
+
+
+
+ res\xml
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ library\lib\armeabi
+ 1
+
+
+
+
+ library\lib\mips
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ res\drawable
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+
+
+ res\values-v21
+ 1
+
+
+
+
+ res\drawable
+ 1
+
+
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+
+
+ res\drawable-ldpi
+ 1
+
+
+
+
+ res\drawable-mdpi
+ 1
+
+
+
+
+ res\drawable-hdpi
+ 1
+
+
+
+
+ res\drawable-xhdpi
+ 1
+
+
+
+
+ res\drawable-small
+ 1
+
+
+
+
+ res\drawable-normal
+ 1
+
+
+
+
+ res\drawable-large
+ 1
+
+
+
+
+ res\drawable-xlarge
+ 1
+
+
+
+
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ 0
+
+
+
+
+ Contents\MacOS
+ 1
+ .framework
+
+
+ Contents\MacOS
+ 1
+ .framework
+
+
+ 0
+
+
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ 0
+ .dll;.bpl
+
+
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ 0
+ .bpl
+
+
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ Contents\Resources\StartUp\
+ 0
+
+
+ Contents\Resources\StartUp\
+ 0
+
+
+ 0
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\
+ 1
+
+
+ ..\
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+
+
+ ..\
+ 1
+
+
+ ..\
+ 1
+
+
+
+
+ Contents
+ 1
+
+
+ Contents
+ 1
+
+
+
+
+ Contents\Resources
+ 1
+
+
+ Contents\Resources
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ 0
+
+
+
+
+ 1
+
+
+ 1
+
+
+
+
+ Assets
+ 1
+
+
+ Assets
+ 1
+
+
+
+
+ Assets
+ 1
+
+
+ Assets
+ 1
+
+
+
+
+
+
+
+
+
+
+
+
+
+ True
+ False
+
+
+ D:\Lectures\DelphiMaster\Master201907\30_Test\T1\LoopTest\Test\Week1TestTests.dproj
+
+
+ 12
+
+
+
+
+
diff --git a/30_Test/T1/LoopTest/LoopTest.res b/30_Test/T1/LoopTest/LoopTest.res
new file mode 100644
index 0000000..03a2a0d
Binary files /dev/null and b/30_Test/T1/LoopTest/LoopTest.res differ
diff --git a/30_Test/T1/Test/TestConditionForm.pas b/30_Test/T1/Test/TestConditionForm.pas
new file mode 100644
index 0000000..0468f50
--- /dev/null
+++ b/30_Test/T1/Test/TestConditionForm.pas
@@ -0,0 +1,84 @@
+unit TestConditionForm;
+{
+
+ Delphi DUnit Test Case
+ ----------------------
+ This unit contains a skeleton test case class generated by the Test Case Wizard.
+ Modify the generated code to correctly setup and call the methods from the unit
+ being tested.
+
+}
+
+interface
+
+uses
+ TestFramework, Vcl.Dialogs, Winapi.Windows, System.SysUtils, ConditionForm,
+ Vcl.Graphics, System.Variants, Winapi.Messages, Vcl.StdCtrls, Vcl.Controls, Vcl.Forms,
+ System.Classes;
+
+type
+ // Test methods for class TfrmFunction
+
+ TestTfrmCondition = class(TTestCase)
+ strict private
+ FfrmCondition: TfrmCondition;
+ public
+ procedure SetUp; override;
+ procedure TearDown; override;
+ published
+ procedure TestLoginCheckEmpty;
+ procedure TestLoginCheckNotfound;
+ procedure TestLoginCheckIncorrect;
+ procedure TestLoginCheckOK;
+ end;
+
+implementation
+
+procedure TestTfrmCondition.SetUp;
+begin
+ FfrmCondition := TfrmCondition.Create(nil);
+end;
+
+procedure TestTfrmCondition.TearDown;
+begin
+ FfrmCondition.Free;
+ FfrmCondition := nil;
+end;
+
+procedure TestTfrmCondition.TestLoginCheckEmpty;
+var
+ ReturnValue: Integer;
+begin
+ ReturnValue := FfrmCondition.LoginCheck('', '');
+ CheckEquals(ReturnValue, LOGIN_RESULT_EMPTY, ' Ȯ');
+end;
+
+procedure TestTfrmCondition.TestLoginCheckNotfound;
+var
+ ReturnValue: Integer;
+begin
+ ReturnValue := FfrmCondition.LoginCheck('no_id', '');
+ CheckEquals(ReturnValue, LOGIN_RESULT_NOTFOUND_ID, 'Id ');
+end;
+
+procedure TestTfrmCondition.TestLoginCheckIncorrect;
+var
+ ReturnValue: Integer;
+begin
+ ReturnValue := FfrmCondition.LoginCheck('abc', '0000');
+ CheckEquals(ReturnValue, LOGIN_RESULT_INCORRECT, 'Id йȣ ġ');
+end;
+
+procedure TestTfrmCondition.TestLoginCheckOK;
+var
+ ReturnValue: Integer;
+begin
+ ReturnValue := FfrmCondition.LoginCheck('abc', '123');
+ CheckEquals(ReturnValue, LOGIN_RESULT_OK, 'OK');
+end;
+
+initialization
+ // Register any test cases with the test runner
+ RegisterTest(TestTfrmCondition.Suite);
+end.
+
diff --git a/30_Test/T1/Test/TestLoopForm.pas b/30_Test/T1/Test/TestLoopForm.pas
new file mode 100644
index 0000000..59725fd
--- /dev/null
+++ b/30_Test/T1/Test/TestLoopForm.pas
@@ -0,0 +1,78 @@
+unit TestLoopForm;
+{
+
+ Delphi DUnit Test Case
+ ----------------------
+ This unit contains a skeleton test case class generated by the Test Case Wizard.
+ Modify the generated code to correctly setup and call the methods from the unit
+ being tested.
+
+}
+
+interface
+
+uses
+ TestFramework, Vcl.Dialogs, Winapi.Windows, System.SysUtils, LoopForm, Vcl.Graphics,
+ System.Variants, Winapi.Messages, Vcl.StdCtrls, Vcl.Controls, Vcl.Forms,
+ System.Classes;
+
+type
+ // Test methods for class TForm3
+
+ TestTfrmLoop = class(TTestCase)
+ strict private
+ FfrmLoop: TfrmLoop;
+ public
+ procedure SetUp; override;
+ procedure TearDown; override;
+ published
+ procedure TestCalcOddNumCount;
+ procedure TestCalcMul3NumSum;
+ end;
+
+implementation
+
+procedure TestTfrmLoop.SetUp;
+begin
+ FfrmLoop := TfrmLoop.Create(nil);
+end;
+
+procedure TestTfrmLoop.TearDown;
+begin
+ FfrmLoop.Free;
+ FfrmLoop := nil;
+end;
+
+procedure TestTfrmLoop.TestCalcOddNumCount;
+var
+ ReturnValue: Integer;
+begin
+ ReturnValue := FfrmLoop.CalcOddNumCount(2, 5);
+ CheckEquals(ReturnValue, 2, '3, 5');
+
+ ReturnValue := FfrmLoop.CalcOddNumCount(1, 100);
+ CheckEquals(ReturnValue, 50, 'Odd count : 1 to 100');
+
+ ReturnValue := FfrmLoop.CalcOddNumCount(23, 231);
+ CheckEquals(ReturnValue, 105, 'Odd count : 23 to 231');
+end;
+
+procedure TestTfrmLoop.TestCalcMul3NumSum;
+var
+ ReturnValue: Integer;
+begin
+ ReturnValue := FfrmLoop.CalcMul3NumSum(1, 7);
+ CheckEquals(ReturnValue, 9, '3, 6');
+
+ ReturnValue := FfrmLoop.CalcMul3NumSum(4, 87);
+ CheckEquals(ReturnValue, 1302, 'Mul3 sum : 4 to 87');
+
+ ReturnValue := FfrmLoop.CalcMul3NumSum(1, 500);
+ CheckEquals(ReturnValue, 41583, 'Mul3 sum : 1 to 500');
+end;
+
+initialization
+ // Register any test cases with the test runner
+ RegisterTest(TestTfrmLoop.Suite);
+end.
+
diff --git a/30_Test/T1/Test/TestVariableForm.pas b/30_Test/T1/Test/TestVariableForm.pas
new file mode 100644
index 0000000..459963b
--- /dev/null
+++ b/30_Test/T1/Test/TestVariableForm.pas
@@ -0,0 +1,93 @@
+unit TestVariableForm;
+{
+
+ Delphi DUnit Test Case
+ ----------------------
+ This unit contains a skeleton test case class generated by the Test Case Wizard.
+ Modify the generated code to correctly setup and call the methods from the unit
+ being tested.
+
+}
+
+interface
+
+uses
+ TestFramework, Vcl.Dialogs, Winapi.Windows, VariableForm, System.SysUtils,
+ Vcl.Graphics, System.Variants, Winapi.Messages, Vcl.StdCtrls, Vcl.Controls, Vcl.Forms,
+ System.Classes;
+
+type
+ // Test methods for class TfrmVariable
+
+ TestTfrmVariable = class(TTestCase)
+ strict private
+ FfrmVariable: TfrmVariable;
+ public
+ procedure SetUp; override;
+ procedure TearDown; override;
+ published
+ procedure TestAddNum;
+ procedure TestSubNum;
+ procedure TestAddAndSubNum;
+ end;
+
+implementation
+
+procedure TestTfrmVariable.SetUp;
+begin
+ FfrmVariable := TfrmVariable.Create(nil);
+end;
+
+procedure TestTfrmVariable.TearDown;
+begin
+ FfrmVariable.Free;
+ FfrmVariable := nil;
+end;
+
+procedure TestTfrmVariable.TestAddNum;
+var
+ ReturnValue: Integer;
+begin
+ FfrmVariable.InitData;
+
+ ReturnValue := FfrmVariable.AddNum(2);
+ CheckEquals(ReturnValue, 2, '0 + 2 = 2');
+
+ ReturnValue := FfrmVariable.AddNum(3);
+ CheckEquals(ReturnValue, 5, '2 + 3 = 5');
+end;
+
+procedure TestTfrmVariable.TestSubNum;
+var
+ ReturnValue: Integer;
+begin
+ FfrmVariable.InitData;
+
+ ReturnValue := FfrmVariable.SubNum(3);
+ CheckEquals(ReturnValue, -3, '0 - 3 = -3');
+
+ ReturnValue := FfrmVariable.SubNum(4);
+ CheckEquals(ReturnValue, -7, '-3 - 4 = -7');
+end;
+
+procedure TestTfrmVariable.TestAddAndSubNum;
+var
+ ReturnValue: Integer;
+begin
+ FfrmVariable.InitData;
+
+ ReturnValue := FfrmVariable.AddNum(2);
+ CheckEquals(ReturnValue, 2, '0 + 2 = 2');
+
+ ReturnValue := FfrmVariable.AddNum(3);
+ CheckEquals(ReturnValue, 5, '2 + 3 = 5');
+
+ ReturnValue := FfrmVariable.SubNum(1);
+ CheckEquals(ReturnValue, 4, '5 - 1 = 4');
+end;
+
+initialization
+ // Register any test cases with the test runner
+ RegisterTest(TestTfrmVariable.Suite);
+end.
+
diff --git a/30_Test/T1/Test/Week1TestTests.dpr b/30_Test/T1/Test/Week1TestTests.dpr
new file mode 100644
index 0000000..ce5cb44
--- /dev/null
+++ b/30_Test/T1/Test/Week1TestTests.dpr
@@ -0,0 +1,31 @@
+program Week1TestTests;
+{
+
+ Delphi DUnit Test Project
+ -------------------------
+ This project contains the DUnit test framework and the GUI/Console test runners.
+ Add "CONSOLE_TESTRUNNER" to the conditional defines entry in the project options
+ to use the console test runner. Otherwise the GUI test runner will be used by
+ default.
+
+}
+
+{$IFDEF CONSOLE_TESTRUNNER}
+{$APPTYPE CONSOLE}
+{$ENDIF}
+
+uses
+ DUnitTestRunner,
+ VariableForm in '..\VariableTest\VariableForm.pas',
+ ConditionForm in '..\ConditionTest\ConditionForm.pas' {frmCondition},
+ TestVariableForm in 'TestVariableForm.pas',
+ TestConditionForm in 'TestConditionForm.pas',
+ TestLoopForm in 'TestLoopForm.pas',
+ LoopForm in '..\LoopTest\LoopForm.pas' {frmLoop};
+
+{$R *.RES}
+
+begin
+ DUnitTestRunner.RunRegisteredTests;
+end.
+
diff --git a/30_Test/T1/Test/Week1TestTests.dproj b/30_Test/T1/Test/Week1TestTests.dproj
new file mode 100644
index 0000000..8c0ed50
--- /dev/null
+++ b/30_Test/T1/Test/Week1TestTests.dproj
@@ -0,0 +1,635 @@
+
+
+ {CBD6EA17-A169-4B58-BDB6-F75F527BEF37}
+ 18.6
+ VCL
+ True
+ Debug
+ Win32
+ 1
+ Console
+ Week1TestTests.dpr
+
+
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_1
+ true
+ true
+
+
+ true
+ Base
+ true
+
+
+ .
+ .\$(Platform)\$(Config)
+ false
+ false
+ false
+ false
+ false
+ System;Xml;Data;Datasnap;Web;Soap;Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;$(DCC_Namespace)
+ $(BDS)\Source\DUnit\src;$(DCC_UnitSearchPath)
+ _CONSOLE_TESTRUNNER;$(DCC_Define)
+ Week1TestTests
+
+
+ DBXSqliteDriver;dxFlowChartRS26;dxPSdxMapControlLnkRS26;DBXDb2Driver;vclactnband;dxBarRS26;vclFireDAC;dxFireDACEMFRS26;tethering;dxSpreadSheetInplaceRichEditRS26;FireDACADSDriver;dxRichEditCoreRS26;dxPSdxSpreadSheetLnkRS26;FireDACMSSQLDriver;vcltouch;vcldb;svn;dxPSTeeChartRS26;dxGDIPlusRS26;dxPSdxFCLnkRS26;dxCloudServiceLibraryRS26;dxPSLnksRS26;FireDACDBXDriver;cxGridRS26;dxPDFViewerRS26;dxPsPrVwAdvRS26;vclx;dxPScxTLLnkRS26;RESTBackendComponents;VCLRESTComponents;Month;vclie;bindengine;CloudService;dxmdsRS26;FireDACMySQLDriver;dxdborRS26;DataSnapClient;dxFireDACServerModeRS26;bindcompdbx;BabaComp103;IndyIPServer;DBXSybaseASEDriver;HsBarcode1DRun;cxPivotGridRS26;IndySystem;cxTreeListdxBarPopupMenuRS26;dsnapcon;cxTreeListRS26;dxPScxPivotGridLnkRS26;cxSchedulerRibbonStyleEventEditorRS26;dxPSCoreRS26;FireDACMSAccDriver;fmxFireDAC;FireDACInfxDriver;vclimg;dxSpreadSheetRS26;dxBarExtItemsRS26;dxPSdxGaugeControlLnkRS26;emshosting;DBXOdbcDriver;FireDACTDataDriver;FMXTee;dxdbtrRS26;dxRichEditControlCoreRS26;soaprtl;DbxCommonDriver;dxFlowChartAdvancedCustomizeFormRS26;dxDockingRS26;xmlrtl;soapmidas;DataSnapNativeClient;fmxobj;cxLibraryRS26;rtl;emsserverresource;DbxClientDriver;DBXSybaseASADriver;dxPScxSchedulerLnkRS26;CodeSiteExpressPkg;dxSpreadSheetConditionalFormattingDialogsRS26;appanalytics;dxRibbonCustomizationFormRS26;cxSchedulerGridRS26;QR506RunDXE10_3;IndyIPClient;bindcompvcl;TeeUI;dxADOEMFRS26;VclSmp;cxInitD103;FireDACODBCDriver;dxRibbonRS26;DataSnapIndy10ServerTransport;dxPScxCommonRS26;dxRichEditDocumentModelRS26;DataSnapProviderClient;FireDACMongoDBDriver;dxFlowChartDesignerRS26;dxPScxGridLnkRS26;dxSpreadSheetCoreRS26;DataSnapServerMidas;RESTComponents;DBXInterBaseDriver;dxPScxExtCommonRS26;emsclientfiredac;DataSnapFireDAC;svnui;DBXMSSQLDriver;dxRichEditControlRS26;DatasnapConnectorsFreePascal;dxGaugeControlRS26;dxorgcRS26;dxPScxVGridLnkRS26;bindcompfmx;DBXOracleDriver;inetdb;dxBarDBNavRS26;dxDBXServerModeRS26;FmxTeeUI;emsedge;fmx;FireDACIBDriver;fmxdae;dxServerModeRS26;dxWizardControlRS26;dxTabbedMDIRS26;dxEMFRS26;dbexpress;IndyCore;dxComnRS26;dsnap;emsclient;DataSnapCommon;FireDACCommon;DataSnapConnectors;cxSchedulerTreeBrowserRS26;dxADOServerModeRS26;soapserver;cxPivotGridOLAPRS26;cxVerticalGridRS26;dxtrmdRS26;FireDACOracleDriver;DBXMySQLDriver;cxSchedulerRS26;cxSchedulerWebServiceStorageRS26;dxPSdxLCLnkRS26;DBXFirebirdDriver;FireDACCommonODBC;FireDACCommonDriver;dxMapControlRS26;inet;dxSpellCheckerRS26;IndyIPCommon;dxSpreadSheetCoreConditionalFormattingDialogsRS26;vcl;dxPSdxDBOCLnkRS26;FireDACDb2Driver;dxSpreadSheetReportDesignerRS26;ConvertPack260;dxPScxPCProdRS26;dxNavBarRS26;dxCoreRS26;cxExportRS26;TeeDB;FireDAC;dxHttpIndyRequestRS26;dxPSPrVwRibbonRS26;FireDACSqliteDriver;FireDACPgDriver;dxPSRichEditControlLnkRS26;FireDACASADriver;cxPivotGridChartRS26;dxPSDBTeeChartRS26;Tee;DataSnapServer;dxPSdxDBTVLnkRS26;vclwinx;FireDACDSDriver;dxTileControlRS26;dxSkinsCoreRS26;CustomIPTransport;vcldsnap;bindcomp;dxPSdxOCLnkRS26;DBXInformixDriver;dbxcds;adortl;dxSpreadSheetCoreDialogsRS26;dxBarExtDBItemsRS26;dsnapxml;dbrtl;IndyProtocols;inetdbxpress;dxPSdxPDFViewerLnkRS26;dxRichEditInplaceRS26;fmxase;$(DCC_UsePackage)
+ Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
+ Debug
+ CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=com.embarcadero.$(MSBuildProjectName);ProductName=$(MSBuildProjectName);ProductVersion=1.0.0.0;Comments=
+ 1033
+
+
+ DBXSqliteDriver;dxFlowChartRS26;dxPSdxMapControlLnkRS26;DBXDb2Driver;vclactnband;dxBarRS26;vclFireDAC;dxFireDACEMFRS26;tethering;dxSpreadSheetInplaceRichEditRS26;FireDACADSDriver;dxRichEditCoreRS26;dxPSdxSpreadSheetLnkRS26;FireDACMSSQLDriver;vcltouch;vcldb;dxPSTeeChartRS26;dxGDIPlusRS26;dxPSdxFCLnkRS26;dxCloudServiceLibraryRS26;dxPSLnksRS26;FireDACDBXDriver;cxGridRS26;dxPDFViewerRS26;dxPsPrVwAdvRS26;vclx;dxPScxTLLnkRS26;RESTBackendComponents;VCLRESTComponents;vclie;bindengine;CloudService;dxmdsRS26;FireDACMySQLDriver;dxdborRS26;DataSnapClient;dxFireDACServerModeRS26;bindcompdbx;IndyIPServer;DBXSybaseASEDriver;HsBarcode1DRun;cxPivotGridRS26;IndySystem;cxTreeListdxBarPopupMenuRS26;dsnapcon;cxTreeListRS26;dxPScxPivotGridLnkRS26;cxSchedulerRibbonStyleEventEditorRS26;dxPSCoreRS26;FireDACMSAccDriver;fmxFireDAC;FireDACInfxDriver;vclimg;dxSpreadSheetRS26;dxBarExtItemsRS26;dxPSdxGaugeControlLnkRS26;emshosting;DBXOdbcDriver;FireDACTDataDriver;FMXTee;dxdbtrRS26;dxRichEditControlCoreRS26;soaprtl;DbxCommonDriver;dxFlowChartAdvancedCustomizeFormRS26;dxDockingRS26;xmlrtl;soapmidas;DataSnapNativeClient;fmxobj;cxLibraryRS26;rtl;emsserverresource;DbxClientDriver;DBXSybaseASADriver;dxPScxSchedulerLnkRS26;dxSpreadSheetConditionalFormattingDialogsRS26;appanalytics;dxRibbonCustomizationFormRS26;cxSchedulerGridRS26;QR506RunDXE10_3;IndyIPClient;bindcompvcl;TeeUI;dxADOEMFRS26;VclSmp;FireDACODBCDriver;dxRibbonRS26;DataSnapIndy10ServerTransport;dxPScxCommonRS26;dxRichEditDocumentModelRS26;DataSnapProviderClient;FireDACMongoDBDriver;dxFlowChartDesignerRS26;dxPScxGridLnkRS26;dxSpreadSheetCoreRS26;DataSnapServerMidas;RESTComponents;DBXInterBaseDriver;dxPScxExtCommonRS26;emsclientfiredac;DataSnapFireDAC;DBXMSSQLDriver;dxRichEditControlRS26;DatasnapConnectorsFreePascal;dxGaugeControlRS26;dxorgcRS26;dxPScxVGridLnkRS26;bindcompfmx;DBXOracleDriver;inetdb;dxBarDBNavRS26;dxDBXServerModeRS26;FmxTeeUI;emsedge;fmx;FireDACIBDriver;fmxdae;dxServerModeRS26;dxWizardControlRS26;dxTabbedMDIRS26;dxEMFRS26;dbexpress;IndyCore;dxComnRS26;dsnap;emsclient;DataSnapCommon;FireDACCommon;DataSnapConnectors;cxSchedulerTreeBrowserRS26;dxADOServerModeRS26;soapserver;cxPivotGridOLAPRS26;cxVerticalGridRS26;dxtrmdRS26;FireDACOracleDriver;DBXMySQLDriver;cxSchedulerRS26;cxSchedulerWebServiceStorageRS26;dxPSdxLCLnkRS26;DBXFirebirdDriver;FireDACCommonODBC;FireDACCommonDriver;dxMapControlRS26;inet;dxSpellCheckerRS26;IndyIPCommon;dxSpreadSheetCoreConditionalFormattingDialogsRS26;vcl;dxPSdxDBOCLnkRS26;FireDACDb2Driver;dxSpreadSheetReportDesignerRS26;dxPScxPCProdRS26;dxNavBarRS26;dxCoreRS26;cxExportRS26;TeeDB;FireDAC;dxHttpIndyRequestRS26;dxPSPrVwRibbonRS26;FireDACSqliteDriver;FireDACPgDriver;dxPSRichEditControlLnkRS26;FireDACASADriver;cxPivotGridChartRS26;dxPSDBTeeChartRS26;Tee;DataSnapServer;dxPSdxDBTVLnkRS26;vclwinx;FireDACDSDriver;dxTileControlRS26;dxSkinsCoreRS26;CustomIPTransport;vcldsnap;bindcomp;dxPSdxOCLnkRS26;DBXInformixDriver;dbxcds;adortl;dxSpreadSheetCoreDialogsRS26;dxBarExtDBItemsRS26;dsnapxml;dbrtl;IndyProtocols;inetdbxpress;dxPSdxPDFViewerLnkRS26;dxRichEditInplaceRS26;fmxase;$(DCC_UsePackage)
+
+
+ DEBUG;$(DCC_Define)
+ true
+ false
+ true
+ true
+ true
+
+
+ false
+
+
+ false
+ RELEASE;$(DCC_Define)
+ 0
+ 0
+
+
+
+ MainSource
+
+
+
+
+
+
+
+
+
+
+ dfm
+
+
+ Cfg_2
+ Base
+
+
+ Base
+
+
+ Cfg_1
+ Base
+
+
+
+ Delphi.Personality.12
+ Application
+
+
+
+ Week1TestTests.dpr
+
+
+
+
+
+ true
+
+
+
+
+ true
+
+
+
+
+ true
+
+
+
+
+ true
+
+
+
+
+ true
+
+
+
+
+ Week1TestTests.exe
+ true
+
+
+
+
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ 0
+
+
+
+
+ classes
+ 1
+
+
+
+
+ res\xml
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ library\lib\armeabi
+ 1
+
+
+
+
+ library\lib\mips
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ res\drawable
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+
+
+ res\values-v21
+ 1
+
+
+
+
+ res\drawable
+ 1
+
+
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+
+
+ res\drawable-ldpi
+ 1
+
+
+
+
+ res\drawable-mdpi
+ 1
+
+
+
+
+ res\drawable-hdpi
+ 1
+
+
+
+
+ res\drawable-xhdpi
+ 1
+
+
+
+
+ res\drawable-small
+ 1
+
+
+
+
+ res\drawable-normal
+ 1
+
+
+
+
+ res\drawable-large
+ 1
+
+
+
+
+ res\drawable-xlarge
+ 1
+
+
+
+
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ 0
+
+
+
+
+ Contents\MacOS
+ 1
+ .framework
+
+
+ Contents\MacOS
+ 1
+ .framework
+
+
+ 0
+
+
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ 0
+ .dll;.bpl
+
+
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ 0
+ .bpl
+
+
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ Contents\Resources\StartUp\
+ 0
+
+
+ Contents\Resources\StartUp\
+ 0
+
+
+ 0
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\
+ 1
+
+
+ ..\
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+
+
+ ..\
+ 1
+
+
+ ..\
+ 1
+
+
+
+
+ Contents
+ 1
+
+
+ Contents
+ 1
+
+
+
+
+ Contents\Resources
+ 1
+
+
+ Contents\Resources
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ 0
+
+
+
+
+ 1
+
+
+ 1
+
+
+
+
+ Assets
+ 1
+
+
+ Assets
+ 1
+
+
+
+
+ Assets
+ 1
+
+
+ Assets
+ 1
+
+
+
+
+
+
+
+
+
+
+
+
+
+ True
+ False
+
+
+ DUnit / Delphi Win32
+ GUI
+ D:\Lectures\DelphiMaster\Master201907\30_Test\T1\LoopTest\LoopTest.dproj
+
+
+
+ 12
+
+
+
+
+
diff --git a/30_Test/T1/Test/Week1TestTests.res b/30_Test/T1/Test/Week1TestTests.res
new file mode 100644
index 0000000..7435995
Binary files /dev/null and b/30_Test/T1/Test/Week1TestTests.res differ
diff --git a/30_Test/T1/VariableTest/VariableForm.dfm b/30_Test/T1/VariableTest/VariableForm.dfm
new file mode 100644
index 0000000..b0aaaa8
--- /dev/null
+++ b/30_Test/T1/VariableTest/VariableForm.dfm
@@ -0,0 +1,62 @@
+object frmVariable: TfrmVariable
+ Left = 0
+ Top = 0
+ Caption = #48320#49688' '#49324#50857
+ ClientHeight = 165
+ ClientWidth = 353
+ Color = clBtnFace
+ Font.Charset = DEFAULT_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -11
+ Font.Name = 'Tahoma'
+ Font.Style = []
+ OldCreateOrder = False
+ PixelsPerInch = 96
+ TextHeight = 13
+ object Label2: TLabel
+ Left = 24
+ Top = 85
+ Width = 58
+ Height = 13
+ Caption = #49707#51088#46308#51032' '#54633
+ end
+ object Label1: TLabel
+ Left = 24
+ Top = 29
+ Width = 47
+ Height = 13
+ Caption = #49707#51088' '#51077#47141
+ end
+ object edtSum: TEdit
+ Left = 24
+ Top = 104
+ Width = 121
+ Height = 21
+ TabOrder = 0
+ end
+ object edtNum: TEdit
+ Left = 24
+ Top = 48
+ Width = 121
+ Height = 21
+ TabOrder = 1
+ end
+ object btnPlus: TButton
+ Left = 151
+ Top = 46
+ Width = 75
+ Height = 25
+ Caption = #45908#54616#44592
+ TabOrder = 2
+ OnClick = btnPlusClick
+ end
+ object btnMinus: TButton
+ Left = 232
+ Top = 46
+ Width = 75
+ Height = 25
+ Caption = #48764#44592
+ TabOrder = 3
+ OnClick = btnMinusClick
+ end
+end
diff --git a/30_Test/T1/VariableTest/VariableForm.pas b/30_Test/T1/VariableTest/VariableForm.pas
new file mode 100644
index 0000000..3f2a51a
--- /dev/null
+++ b/30_Test/T1/VariableTest/VariableForm.pas
@@ -0,0 +1,81 @@
+unit VariableForm;
+
+interface
+
+uses
+ Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
+ Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls;
+
+type
+ TfrmVariable = class(TForm)
+ Label2: TLabel;
+ Label1: TLabel;
+ edtSum: TEdit;
+ edtNum: TEdit;
+ btnPlus: TButton;
+ btnMinus: TButton;
+ procedure btnPlusClick(Sender: TObject);
+ procedure btnMinusClick(Sender: TObject);
+
+ private
+ FSum : integer;
+ { Private declarations }
+ public
+ { Public declarations }
+ /// FSum ʱȭ Ѵ.
+ procedure InitData;
+ /// FSum Ķ ANum Ѵ.
+ function AddNum(ANum: Integer): Integer;
+ /// FSum Ķ ANum .
+ function SubNum(ANum: Integer): Integer;
+ end;
+
+var
+ frmVariable: TfrmVariable;
+
+implementation
+
+{$R *.dfm}
+
+{ TForm1 }
+
+// Էµ ϴ.
+procedure TfrmVariable.btnMinusClick(Sender: TObject);
+var
+ Num, Sum: Integer;
+begin
+ Num := StrToInt(edtNum.Text);
+ Sum := SubNum(Num);
+
+ edtSum.Text := IntToStr(Sum);
+end;
+
+// Էµ մϴ.
+procedure TfrmVariable.btnPlusClick(Sender: TObject);
+var
+ Num, Sum: Integer;
+begin
+ Num := StrToInt(edtNum.Text);
+ Sum := AddNum(Num);
+
+ edtSum.Text := IntToStr(Sum);
+end;
+
+procedure TfrmVariable.InitData;
+begin
+ // FNum ʱȭ ϼ.
+end;
+
+function TfrmVariable.AddNum(ANum: Integer): Integer;
+begin
+ Fsum := Fsum + ANum;
+ Result := FSum;
+end;
+
+function TfrmVariable.SubNum(ANum: Integer): Integer;
+begin
+ FSum := Fsum - Anum;
+ Result := FSum;
+end;
+
+end.
diff --git a/30_Test/T1/VariableTest/VariableTest.dpr b/30_Test/T1/VariableTest/VariableTest.dpr
new file mode 100644
index 0000000..c4cb622
--- /dev/null
+++ b/30_Test/T1/VariableTest/VariableTest.dpr
@@ -0,0 +1,14 @@
+program VariableTest;
+
+uses
+ Vcl.Forms,
+ VariableForm in 'VariableForm.pas' {frmVariable};
+
+{$R *.res}
+
+begin
+ Application.Initialize;
+ Application.MainFormOnTaskbar := True;
+ Application.CreateForm(TfrmVariable, frmVariable);
+ Application.Run;
+end.
diff --git a/30_Test/T1/VariableTest/VariableTest.dproj b/30_Test/T1/VariableTest/VariableTest.dproj
new file mode 100644
index 0000000..babb8d1
--- /dev/null
+++ b/30_Test/T1/VariableTest/VariableTest.dproj
@@ -0,0 +1,612 @@
+
+
+ {1A9F757D-0140-42FB-96FC-1B67743DB155}
+ 18.6
+ VCL
+ VariableTest.dpr
+ True
+ Debug
+ Win32
+ 1
+ Application
+
+
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_1
+ true
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_2
+ true
+ true
+
+
+ .\$(Platform)\$(Config)
+ .\$(Platform)\$(Config)
+ false
+ false
+ false
+ false
+ false
+ System;Xml;Data;Datasnap;Web;Soap;Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;$(DCC_Namespace)
+ $(BDS)\bin\delphi_PROJECTICON.ico
+ $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_44.png
+ $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_150.png
+ VariableTest
+
+
+ DBXSqliteDriver;dxFlowChartRS26;dxPSdxMapControlLnkRS26;DBXDb2Driver;vclactnband;dxBarRS26;vclFireDAC;dxFireDACEMFRS26;tethering;dxSpreadSheetInplaceRichEditRS26;FireDACADSDriver;dxRichEditCoreRS26;dxPSdxSpreadSheetLnkRS26;FireDACMSSQLDriver;vcltouch;vcldb;svn;dxPSTeeChartRS26;dxGDIPlusRS26;dxPSdxFCLnkRS26;dxCloudServiceLibraryRS26;dxPSLnksRS26;FireDACDBXDriver;cxGridRS26;dxPDFViewerRS26;dxPsPrVwAdvRS26;vclx;dxPScxTLLnkRS26;RESTBackendComponents;VCLRESTComponents;Month;vclie;bindengine;CloudService;dxmdsRS26;FireDACMySQLDriver;dxdborRS26;DataSnapClient;dxFireDACServerModeRS26;bindcompdbx;BabaComp103;IndyIPServer;DBXSybaseASEDriver;HsBarcode1DRun;cxPivotGridRS26;IndySystem;cxTreeListdxBarPopupMenuRS26;dsnapcon;cxTreeListRS26;dxPScxPivotGridLnkRS26;cxSchedulerRibbonStyleEventEditorRS26;dxPSCoreRS26;FireDACMSAccDriver;fmxFireDAC;FireDACInfxDriver;vclimg;dxSpreadSheetRS26;dxBarExtItemsRS26;dxPSdxGaugeControlLnkRS26;emshosting;DBXOdbcDriver;FireDACTDataDriver;FMXTee;dxdbtrRS26;dxRichEditControlCoreRS26;soaprtl;DbxCommonDriver;dxFlowChartAdvancedCustomizeFormRS26;dxDockingRS26;xmlrtl;soapmidas;DataSnapNativeClient;fmxobj;cxLibraryRS26;rtl;emsserverresource;DbxClientDriver;DBXSybaseASADriver;dxPScxSchedulerLnkRS26;CodeSiteExpressPkg;dxSpreadSheetConditionalFormattingDialogsRS26;appanalytics;dxRibbonCustomizationFormRS26;cxSchedulerGridRS26;QR506RunDXE10_3;IndyIPClient;bindcompvcl;TeeUI;dxADOEMFRS26;VclSmp;cxInitD103;FireDACODBCDriver;dxRibbonRS26;DataSnapIndy10ServerTransport;dxPScxCommonRS26;dxRichEditDocumentModelRS26;DataSnapProviderClient;FireDACMongoDBDriver;dxFlowChartDesignerRS26;dxPScxGridLnkRS26;dxSpreadSheetCoreRS26;DataSnapServerMidas;RESTComponents;DBXInterBaseDriver;dxPScxExtCommonRS26;emsclientfiredac;DataSnapFireDAC;svnui;DBXMSSQLDriver;dxRichEditControlRS26;DatasnapConnectorsFreePascal;dxGaugeControlRS26;dxorgcRS26;dxPScxVGridLnkRS26;bindcompfmx;DBXOracleDriver;inetdb;dxBarDBNavRS26;dxDBXServerModeRS26;FmxTeeUI;emsedge;fmx;FireDACIBDriver;fmxdae;dxServerModeRS26;dxWizardControlRS26;dxTabbedMDIRS26;dxEMFRS26;dbexpress;IndyCore;dxComnRS26;dsnap;emsclient;DataSnapCommon;FireDACCommon;DataSnapConnectors;cxSchedulerTreeBrowserRS26;dxADOServerModeRS26;soapserver;cxPivotGridOLAPRS26;cxVerticalGridRS26;dxtrmdRS26;FireDACOracleDriver;DBXMySQLDriver;cxSchedulerRS26;cxSchedulerWebServiceStorageRS26;dxPSdxLCLnkRS26;DBXFirebirdDriver;FireDACCommonODBC;FireDACCommonDriver;dxMapControlRS26;inet;dxSpellCheckerRS26;IndyIPCommon;dxSpreadSheetCoreConditionalFormattingDialogsRS26;vcl;dxPSdxDBOCLnkRS26;FireDACDb2Driver;dxSpreadSheetReportDesignerRS26;ConvertPack260;dxPScxPCProdRS26;dxNavBarRS26;dxCoreRS26;cxExportRS26;TeeDB;FireDAC;dxHttpIndyRequestRS26;dxPSPrVwRibbonRS26;FireDACSqliteDriver;FireDACPgDriver;dxPSRichEditControlLnkRS26;FireDACASADriver;cxPivotGridChartRS26;dxPSDBTeeChartRS26;Tee;DataSnapServer;dxPSdxDBTVLnkRS26;vclwinx;FireDACDSDriver;dxTileControlRS26;dxSkinsCoreRS26;CustomIPTransport;vcldsnap;bindcomp;dxPSdxOCLnkRS26;DBXInformixDriver;dbxcds;adortl;dxSpreadSheetCoreDialogsRS26;dxBarExtDBItemsRS26;dsnapxml;dbrtl;IndyProtocols;inetdbxpress;dxPSdxPDFViewerLnkRS26;dxRichEditInplaceRS26;fmxase;$(DCC_UsePackage)
+ Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
+ Debug
+ true
+ CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=com.embarcadero.$(MSBuildProjectName);ProductName=$(MSBuildProjectName);ProductVersion=1.0.0.0;Comments=
+ 1033
+ $(BDS)\bin\default_app.manifest
+
+
+ DBXSqliteDriver;dxFlowChartRS26;dxPSdxMapControlLnkRS26;DBXDb2Driver;vclactnband;dxBarRS26;vclFireDAC;dxFireDACEMFRS26;tethering;dxSpreadSheetInplaceRichEditRS26;FireDACADSDriver;dxRichEditCoreRS26;dxPSdxSpreadSheetLnkRS26;FireDACMSSQLDriver;vcltouch;vcldb;dxPSTeeChartRS26;dxGDIPlusRS26;dxPSdxFCLnkRS26;dxCloudServiceLibraryRS26;dxPSLnksRS26;FireDACDBXDriver;cxGridRS26;dxPDFViewerRS26;dxPsPrVwAdvRS26;vclx;dxPScxTLLnkRS26;RESTBackendComponents;VCLRESTComponents;vclie;bindengine;CloudService;dxmdsRS26;FireDACMySQLDriver;dxdborRS26;DataSnapClient;dxFireDACServerModeRS26;bindcompdbx;IndyIPServer;DBXSybaseASEDriver;HsBarcode1DRun;cxPivotGridRS26;IndySystem;cxTreeListdxBarPopupMenuRS26;dsnapcon;cxTreeListRS26;dxPScxPivotGridLnkRS26;cxSchedulerRibbonStyleEventEditorRS26;dxPSCoreRS26;FireDACMSAccDriver;fmxFireDAC;FireDACInfxDriver;vclimg;dxSpreadSheetRS26;dxBarExtItemsRS26;dxPSdxGaugeControlLnkRS26;emshosting;DBXOdbcDriver;FireDACTDataDriver;FMXTee;dxdbtrRS26;dxRichEditControlCoreRS26;soaprtl;DbxCommonDriver;dxFlowChartAdvancedCustomizeFormRS26;dxDockingRS26;xmlrtl;soapmidas;DataSnapNativeClient;fmxobj;cxLibraryRS26;rtl;emsserverresource;DbxClientDriver;DBXSybaseASADriver;dxPScxSchedulerLnkRS26;dxSpreadSheetConditionalFormattingDialogsRS26;appanalytics;dxRibbonCustomizationFormRS26;cxSchedulerGridRS26;QR506RunDXE10_3;IndyIPClient;bindcompvcl;TeeUI;dxADOEMFRS26;VclSmp;FireDACODBCDriver;dxRibbonRS26;DataSnapIndy10ServerTransport;dxPScxCommonRS26;dxRichEditDocumentModelRS26;DataSnapProviderClient;FireDACMongoDBDriver;dxFlowChartDesignerRS26;dxPScxGridLnkRS26;dxSpreadSheetCoreRS26;DataSnapServerMidas;RESTComponents;DBXInterBaseDriver;dxPScxExtCommonRS26;emsclientfiredac;DataSnapFireDAC;DBXMSSQLDriver;dxRichEditControlRS26;DatasnapConnectorsFreePascal;dxGaugeControlRS26;dxorgcRS26;dxPScxVGridLnkRS26;bindcompfmx;DBXOracleDriver;inetdb;dxBarDBNavRS26;dxDBXServerModeRS26;FmxTeeUI;emsedge;fmx;FireDACIBDriver;fmxdae;dxServerModeRS26;dxWizardControlRS26;dxTabbedMDIRS26;dxEMFRS26;dbexpress;IndyCore;dxComnRS26;dsnap;emsclient;DataSnapCommon;FireDACCommon;DataSnapConnectors;cxSchedulerTreeBrowserRS26;dxADOServerModeRS26;soapserver;cxPivotGridOLAPRS26;cxVerticalGridRS26;dxtrmdRS26;FireDACOracleDriver;DBXMySQLDriver;cxSchedulerRS26;cxSchedulerWebServiceStorageRS26;dxPSdxLCLnkRS26;DBXFirebirdDriver;FireDACCommonODBC;FireDACCommonDriver;dxMapControlRS26;inet;dxSpellCheckerRS26;IndyIPCommon;dxSpreadSheetCoreConditionalFormattingDialogsRS26;vcl;dxPSdxDBOCLnkRS26;FireDACDb2Driver;dxSpreadSheetReportDesignerRS26;dxPScxPCProdRS26;dxNavBarRS26;dxCoreRS26;cxExportRS26;TeeDB;FireDAC;dxHttpIndyRequestRS26;dxPSPrVwRibbonRS26;FireDACSqliteDriver;FireDACPgDriver;dxPSRichEditControlLnkRS26;FireDACASADriver;cxPivotGridChartRS26;dxPSDBTeeChartRS26;Tee;DataSnapServer;dxPSdxDBTVLnkRS26;vclwinx;FireDACDSDriver;dxTileControlRS26;dxSkinsCoreRS26;CustomIPTransport;vcldsnap;bindcomp;dxPSdxOCLnkRS26;DBXInformixDriver;dbxcds;adortl;dxSpreadSheetCoreDialogsRS26;dxBarExtDBItemsRS26;dsnapxml;dbrtl;IndyProtocols;inetdbxpress;dxPSdxPDFViewerLnkRS26;dxRichEditInplaceRS26;fmxase;$(DCC_UsePackage)
+
+
+ DEBUG;$(DCC_Define)
+ true
+ false
+ true
+ true
+ true
+
+
+ false
+ true
+ PerMonitorV2
+
+
+ false
+ RELEASE;$(DCC_Define)
+ 0
+ 0
+
+
+ true
+ PerMonitorV2
+
+
+
+ MainSource
+
+
+
+ dfm
+
+
+ Cfg_2
+ Base
+
+
+ Base
+
+
+ Cfg_1
+ Base
+
+
+
+ Delphi.Personality.12
+ Application
+
+
+
+ VariableTest.dpr
+
+
+
+
+
+ VariableTest.exe
+ true
+
+
+
+
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ 0
+
+
+
+
+ classes
+ 1
+
+
+
+
+ res\xml
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ library\lib\armeabi
+ 1
+
+
+
+
+ library\lib\mips
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ res\drawable
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+
+
+ res\values-v21
+ 1
+
+
+
+
+ res\drawable
+ 1
+
+
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+
+
+ res\drawable-ldpi
+ 1
+
+
+
+
+ res\drawable-mdpi
+ 1
+
+
+
+
+ res\drawable-hdpi
+ 1
+
+
+
+
+ res\drawable-xhdpi
+ 1
+
+
+
+
+ res\drawable-small
+ 1
+
+
+
+
+ res\drawable-normal
+ 1
+
+
+
+
+ res\drawable-large
+ 1
+
+
+
+
+ res\drawable-xlarge
+ 1
+
+
+
+
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ 0
+
+
+
+
+ Contents\MacOS
+ 1
+ .framework
+
+
+ Contents\MacOS
+ 1
+ .framework
+
+
+ 0
+
+
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ 0
+ .dll;.bpl
+
+
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ 0
+ .bpl
+
+
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ Contents\Resources\StartUp\
+ 0
+
+
+ Contents\Resources\StartUp\
+ 0
+
+
+ 0
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\
+ 1
+
+
+ ..\
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+
+
+ ..\
+ 1
+
+
+ ..\
+ 1
+
+
+
+
+ Contents
+ 1
+
+
+ Contents
+ 1
+
+
+
+
+ Contents\Resources
+ 1
+
+
+ Contents\Resources
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ 0
+
+
+
+
+ 1
+
+
+ 1
+
+
+
+
+ Assets
+ 1
+
+
+ Assets
+ 1
+
+
+
+
+ Assets
+ 1
+
+
+ Assets
+ 1
+
+
+
+
+
+
+
+
+
+
+
+
+
+ True
+ False
+
+
+ 12
+
+
+
+
+
diff --git a/30_Test/T1/VariableTest/VariableTest.res b/30_Test/T1/VariableTest/VariableTest.res
new file mode 100644
index 0000000..5426561
Binary files /dev/null and b/30_Test/T1/VariableTest/VariableTest.res differ
diff --git a/30_Test/T1/Week1TestGroup.groupproj b/30_Test/T1/Week1TestGroup.groupproj
new file mode 100644
index 0000000..983ba8a
--- /dev/null
+++ b/30_Test/T1/Week1TestGroup.groupproj
@@ -0,0 +1,72 @@
+
+
+ {F1BA179E-23C1-4698-8561-0FB7759A3D5E}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Default.Personality.12
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/40_Project/YangMyungWhan/52Time_PROJECT/DB/52TIME_DB_V2.IB b/40_Project/YangMyungWhan/52Time_PROJECT/DB/52TIME_DB_V2.IB
new file mode 100644
index 0000000..9395017
Binary files /dev/null and b/40_Project/YangMyungWhan/52Time_PROJECT/DB/52TIME_DB_V2.IB differ
diff --git a/40_Project/YangMyungWhan/52Time_PROJECT/Source/CommonFunctions.pas b/40_Project/YangMyungWhan/52Time_PROJECT/Source/CommonFunctions.pas
new file mode 100644
index 0000000..f37f99d
--- /dev/null
+++ b/40_Project/YangMyungWhan/52Time_PROJECT/Source/CommonFunctions.pas
@@ -0,0 +1,93 @@
+unit CommonFunctions;
+
+interface
+
+uses
+ Data.DB, System.Classes, Vcl.Graphics,
+ Vcl.ExtCtrls;
+
+// ̹ ϰ(AFileName) ̹(AImage) ε
+procedure LoadImageFromFile(AImage: TImage; AFileName: string);
+
+// Blobʵ忡 ̹(AImage) ε
+procedure LoadImageFromBlobField(AImage: TImage; ABlobField: TBlobField);
+
+// Blobʵ ̹
+procedure SaveImageToBlobField(AImage: TImage; ABlobField: TBlobField);
+
+
+implementation
+
+uses
+ System.IOUtils, System.SysUtils;
+
+procedure LoadImageFromFile(AImage: TImage; AFileName: string);
+var
+ wic: TWICImage; // Microsoft Windows Imaging Component
+ // پ ̹ ε尡
+begin
+ if not TFile.Exists(AFileName) then
+ Exit;
+
+ AImage.Picture.Assign(nil);
+ wic := TWICImage.Create;
+ try
+ wic.LoadFromFile(AFileName);
+ AImage.Picture.Assign(wic);
+ finally
+ wic.Free;
+ end;
+end;
+
+procedure LoadImageFromBlobField(AImage: TImage; ABlobField: TBlobField);
+var
+ wic: TWICImage; // Microsoft Windows Imaging Component
+ Stream: TMemoryStream;
+begin
+ AImage.Picture.Assign(nil);
+
+ if ABlobField.BlobSize = 0 then
+ Exit;
+
+ Stream := TMemoryStream.Create;
+ wic := TWICImage.Create;
+ try
+ ABlobField.SaveToStream(Stream);
+ if Stream.Size > 0 then
+ begin
+ try
+ wic.LoadFromStream(Stream);
+ AImage.Picture.Assign(wic);
+ except
+ end;
+ end;
+ finally
+ Stream.Free;
+ wic.Free;
+ end;
+end;
+
+procedure SaveImageToBlobField(AImage: TImage; ABlobField: TBlobField);
+var
+ wic: TWICImage; // Microsoft Windows Imaging Component
+ Stream: TMemoryStream;
+begin
+ wic := TWICImage.Create;
+ Stream := TMemoryStream.Create;
+ try
+ wic.Assign(AImage.Picture);
+ wic.SaveToStream(Stream);
+ if ABlobField.DataSet.State = dsBrowse then
+ if ABlobField.DataSet.RecNo > 0 then
+ ABlobField.DataSet.Edit
+ else
+ ABlobField.DataSet.Append;
+
+ ABlobField.LoadFromStream(Stream);
+ finally
+ Stream.Free;
+ wic.Free;
+ end;
+end;
+
+end.
diff --git a/40_Project/YangMyungWhan/52Time_PROJECT/Source/DBFrame.dfm b/40_Project/YangMyungWhan/52Time_PROJECT/Source/DBFrame.dfm
new file mode 100644
index 0000000..002f554
--- /dev/null
+++ b/40_Project/YangMyungWhan/52Time_PROJECT/Source/DBFrame.dfm
@@ -0,0 +1,30 @@
+object frmDb: TfrmDb
+ Left = 0
+ Top = 0
+ Caption = 'frmDb'
+ ClientHeight = 597
+ ClientWidth = 1335
+ Color = clBtnFace
+ Font.Charset = DEFAULT_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -11
+ Font.Name = 'Tahoma'
+ Font.Style = []
+ OldCreateOrder = False
+ PixelsPerInch = 96
+ TextHeight = 13
+ object DBGrid3: TDBGrid
+ Left = 32
+ Top = 27
+ Width = 745
+ Height = 398
+ DataSource = dmDataAccess.dsRealTime
+ Options = [dgEditing, dgAlwaysShowEditor, dgTitles, dgIndicator, dgColumnResize, dgColLines, dgRowLines, dgTabs, dgConfirmDelete, dgCancelOnExit, dgTitleClick, dgTitleHotTrack]
+ TabOrder = 0
+ TitleFont.Charset = DEFAULT_CHARSET
+ TitleFont.Color = clWindowText
+ TitleFont.Height = -11
+ TitleFont.Name = 'Tahoma'
+ TitleFont.Style = []
+ end
+end
diff --git a/40_Project/YangMyungWhan/52Time_PROJECT/Source/DBFrame.pas b/40_Project/YangMyungWhan/52Time_PROJECT/Source/DBFrame.pas
new file mode 100644
index 0000000..1e63c19
--- /dev/null
+++ b/40_Project/YangMyungWhan/52Time_PROJECT/Source/DBFrame.pas
@@ -0,0 +1,26 @@
+unit DBFrame;
+
+interface
+
+uses
+ Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
+ Vcl.Controls, Vcl.Forms, Vcl.Dialogs, DataAccessModule, Data.DB, Vcl.Grids,
+ Vcl.DBGrids;
+
+type
+ TfrmDb = class(TForm)
+ DBGrid3: TDBGrid;
+ private
+ { Private declarations }
+ public
+ { Public declarations }
+ end;
+
+var
+ frmDb: TfrmDb;
+
+implementation
+
+{$R *.dfm}
+
+end.
diff --git a/40_Project/YangMyungWhan/52Time_PROJECT/Source/DataAccessModule.dfm b/40_Project/YangMyungWhan/52Time_PROJECT/Source/DataAccessModule.dfm
new file mode 100644
index 0000000..ef24b16
--- /dev/null
+++ b/40_Project/YangMyungWhan/52Time_PROJECT/Source/DataAccessModule.dfm
@@ -0,0 +1,527 @@
+object dmDataAccess: TdmDataAccess
+ OldCreateOrder = False
+ Height = 653
+ Width = 825
+ object con52Time: TFDConnection
+ Params.Strings = (
+
+ 'Database=D:\git hub\40_Project\YangMyungWhan\52Time_PROJECT\DB\5' +
+ '2TIME_DB_V2.IB'
+ 'User_Name=SYSDBA'
+ 'Password=masterkey'
+ 'CharacterSet=UTF8'
+ 'DriverID=IB')
+ Connected = True
+ LoginPrompt = False
+ Left = 16
+ Top = 24
+ end
+ object qry52Time: TFDQuery
+ Active = True
+ Connection = con52Time
+ SQL.Strings = (
+ 'SELECT *'
+ 'FROM TB_USERS')
+ Left = 104
+ Top = 24
+ end
+ object qryInformationDept: TFDQuery
+ Active = True
+ OnCalcFields = qryInformationDeptCalcFields
+ Connection = con52Time
+ SQL.Strings = (
+ 'SELECT '
+ 'TB_USERS.*,'
+ 'TB_DEPARTMENT.DEPT_DEPT'
+ ''
+ 'FROM'
+ 'TB_USERS, TB_DEPARTMENT'
+ ''
+ 'WHERE'
+ 'TB_USERS.DEPT_SEQ = TB_DEPARTMENT.DEPT_SEQ')
+ Left = 104
+ Top = 88
+ object qryInformationDeptUSERS_SEQ: TIntegerField
+ FieldName = 'USERS_SEQ'
+ Origin = 'USERS_SEQ'
+ ProviderFlags = [pfInUpdate, pfInWhere, pfInKey]
+ end
+ object qryInformationDeptUSERS_CODE: TIntegerField
+ Alignment = taCenter
+ FieldName = 'USERS_CODE'
+ Origin = 'USERS_CODE'
+ end
+ object qryInformationDeptUSERS_NAME: TWideStringField
+ Alignment = taCenter
+ FieldName = 'USERS_NAME'
+ Origin = 'USERS_NAME'
+ Size = 40
+ end
+ object qryInformationDeptUSERS_PASS: TWideStringField
+ FieldName = 'USERS_PASS'
+ Origin = 'USERS_PASS'
+ Size = 60
+ end
+ object qryInformationDeptUSERS_NUM: TWideStringField
+ Alignment = taCenter
+ FieldName = 'USERS_NUM'
+ Origin = 'USERS_NUM'
+ Size = 60
+ end
+ object qryInformationDeptUSERS_IMG: TBlobField
+ FieldName = 'USERS_IMG'
+ Origin = 'USERS_IMG'
+ end
+ object qryInformationDeptUSERS_MA: TWideStringField
+ FieldName = 'USERS_MA'
+ Origin = 'USERS_MA'
+ FixedChar = True
+ Size = 4
+ end
+ object qryInformationDeptDEPT_SEQ: TIntegerField
+ FieldName = 'DEPT_SEQ'
+ Origin = 'DEPT_SEQ'
+ end
+ object qryInformationDeptDEPT_DEPT: TWideStringField
+ Alignment = taCenter
+ AutoGenerateValue = arDefault
+ FieldName = 'DEPT_DEPT'
+ Origin = 'DEPT_DEPT'
+ ProviderFlags = []
+ ReadOnly = True
+ Size = 40
+ end
+ object qryInformationDeptUSERS_MA_OX: TStringField
+ Alignment = taCenter
+ FieldKind = fkCalculated
+ FieldName = 'USERS_MA_OX'
+ Calculated = True
+ end
+ end
+ object qryTimeInsert: TFDQuery
+ Active = True
+ IndexesActive = False
+ Connection = con52Time
+ UpdateObject = usTimeInsert
+ SQL.Strings = (
+ 'SELECT'
+ 'TB_WORKTIMEINSERT.*,'
+ 'TB_USERS.USERS_NAME'
+ ''
+ 'FROM'
+ 'TB_WORKTIMEINSERT, TB_USERS'
+ ''
+ 'WHERE'
+ 'TB_WORKTIMEINSERT.USERS_SEQ = TB_USERS.USERS_SEQ')
+ Left = 104
+ Top = 144
+ object qryTimeInsertWTIT_SEQ: TIntegerField
+ Alignment = taCenter
+ FieldName = 'WTIT_SEQ'
+ Origin = 'WTIT_SEQ'
+ ProviderFlags = [pfInUpdate, pfInWhere, pfInKey]
+ end
+ object qryTimeInsertUSERS_SEQ: TIntegerField
+ Alignment = taCenter
+ FieldName = 'USERS_SEQ'
+ Origin = 'USERS_SEQ'
+ end
+ object qryTimeInsertWTIT_STWORKTIME: TTimeField
+ Alignment = taCenter
+ FieldName = 'WTIT_STWORKTIME'
+ Origin = 'WTIT_STWORKTIME'
+ DisplayFormat = 'hh:mm'
+ end
+ object qryTimeInsertWTIT_FIWORKTIME: TTimeField
+ Alignment = taCenter
+ FieldName = 'WTIT_FIWORKTIME'
+ Origin = 'WTIT_FIWORKTIME'
+ DisplayFormat = 'hh:mm'
+ end
+ object qryTimeInsertWTIT_DATE: TSQLTimeStampField
+ Alignment = taCenter
+ FieldName = 'WTIT_DATE'
+ Origin = 'WTIT_DATE'
+ end
+ object qryTimeInsertUSERS_NAME: TWideStringField
+ Alignment = taCenter
+ AutoGenerateValue = arDefault
+ FieldName = 'USERS_NAME'
+ Origin = 'USERS_NAME'
+ ProviderFlags = []
+ ReadOnly = True
+ Size = 40
+ end
+ object qryTimeInsertWTIT_REALWORKTIME: TTimeField
+ Alignment = taCenter
+ FieldName = 'WTIT_REALWORKTIME'
+ Origin = 'WTIT_REALWORKTIME'
+ DisplayFormat = 'hh:mm'
+ end
+ end
+ object qryDept: TFDQuery
+ Active = True
+ Connection = con52Time
+ SQL.Strings = (
+ 'SELECT *'
+ 'FROM TB_DEPARTMENT')
+ Left = 104
+ Top = 312
+ end
+ object dsInformationDept: TDataSource
+ DataSet = qryInformationDept
+ Left = 208
+ Top = 88
+ end
+ object dsTimeInsert: TDataSource
+ DataSet = qryTimeInsert
+ Left = 208
+ Top = 144
+ end
+ object dsDept: TDataSource
+ DataSet = qryDept
+ Left = 208
+ Top = 304
+ end
+ object qryUpdateTimeInsert: TFDQuery
+ Connection = con52Time
+ SQL.Strings = (
+ 'UPDATE TB_WORKTIMEINSERT SET'
+ 'WTIT_FIWORKTIME = :FIWORKTIME'
+ 'WHERE WTIT_SEQ = :SEQ')
+ Left = 104
+ Top = 448
+ ParamData = <
+ item
+ Name = 'FIWORKTIME'
+ DataType = ftTime
+ ParamType = ptInput
+ Value = Null
+ end
+ item
+ Name = 'SEQ'
+ DataType = ftInteger
+ ParamType = ptInput
+ end>
+ end
+ object dsTimeInsertUpdate: TDataSource
+ DataSet = qryUpdateTimeInsert
+ Left = 200
+ Top = 448
+ end
+ object usTimeInsert: TFDUpdateSQL
+ Connection = con52Time
+ InsertSQL.Strings = (
+ 'INSERT INTO TB_WORKTIMEINSERT'
+ '(WTIT_SEQ, USERS_SEQ, WTIT_STWORKTIME, WTIT_FIWORKTIME, '
+ ' WTIT_STEXCEPTTIME, WTIT_FIEXCEPTTIME, WTIT_DATE)'
+
+ 'VALUES (:NEW_WTIT_SEQ, :NEW_USERS_SEQ, :NEW_WTIT_STWORKTIME, :NE' +
+ 'W_WTIT_FIWORKTIME, '
+
+ ' :NEW_WTIT_STEXCEPTTIME, :NEW_WTIT_FIEXCEPTTIME, :NEW_WTIT_DATE' +
+ ')')
+ ModifySQL.Strings = (
+ 'UPDATE TB_WORKTIMEINSERT'
+
+ 'SET WTIT_SEQ = :NEW_WTIT_SEQ, USERS_SEQ = :NEW_USERS_SEQ, WTIT_S' +
+ 'TWORKTIME = :NEW_WTIT_STWORKTIME, '
+
+ ' WTIT_FIWORKTIME = :NEW_WTIT_FIWORKTIME, WTIT_STEXCEPTTIME = :N' +
+ 'EW_WTIT_STEXCEPTTIME, '
+
+ ' WTIT_FIEXCEPTTIME = :NEW_WTIT_FIEXCEPTTIME, WTIT_DATE = :NEW_W' +
+ 'TIT_DATE'
+ 'WHERE WTIT_SEQ = :OLD_WTIT_SEQ')
+ DeleteSQL.Strings = (
+ 'DELETE FROM TB_WORKTIMEINSERT'
+ 'WHERE WTIT_SEQ = :OLD_WTIT_SEQ')
+ FetchRowSQL.Strings = (
+
+ 'SELECT WTIT_SEQ, USERS_SEQ, WTIT_STWORKTIME, WTIT_FIWORKTIME, WT' +
+ 'IT_STEXCEPTTIME, '
+ ' WTIT_FIEXCEPTTIME, WTIT_DATE'
+ 'FROM TB_WORKTIMEINSERT'
+ 'WHERE WTIT_SEQ = :OLD_WTIT_SEQ')
+ Left = 24
+ Top = 240
+ end
+ object qryAutoTimeInsert: TFDQuery
+ Active = True
+ Connection = con52Time
+ SQL.Strings = (
+ 'SELECT'
+ 'TB_WORKTIMEINSERT.*,'
+ 'TB_USERS.USERS_NAME'
+ ''
+ 'FROM'
+ 'TB_WORKTIMEINSERT, TB_USERS'
+ ''
+ 'WHERE'
+ 'TB_WORKTIMEINSERT.USERS_SEQ = TB_USERS.USERS_SEQ')
+ Left = 104
+ Top = 384
+ object qryAutoTimeInsertWTIT_SEQ: TIntegerField
+ Alignment = taCenter
+ FieldName = 'WTIT_SEQ'
+ Origin = 'WTIT_SEQ'
+ ProviderFlags = [pfInUpdate, pfInWhere, pfInKey]
+ end
+ object qryAutoTimeInsertUSERS_SEQ: TIntegerField
+ Alignment = taCenter
+ FieldName = 'USERS_SEQ'
+ Origin = 'USERS_SEQ'
+ end
+ object qryAutoTimeInsertWTIT_STWORKTIME: TTimeField
+ Alignment = taCenter
+ FieldName = 'WTIT_STWORKTIME'
+ Origin = 'WTIT_STWORKTIME'
+ DisplayFormat = 'hh:mm'
+ end
+ object qryAutoTimeInsertWTIT_FIWORKTIME: TTimeField
+ Alignment = taCenter
+ FieldName = 'WTIT_FIWORKTIME'
+ Origin = 'WTIT_FIWORKTIME'
+ DisplayFormat = 'hh:mm'
+ end
+ object qryAutoTimeInsertWTIT_DATE: TSQLTimeStampField
+ Alignment = taCenter
+ FieldName = 'WTIT_DATE'
+ Origin = 'WTIT_DATE'
+ end
+ object qryAutoTimeInsertUSERS_NAME: TWideStringField
+ Alignment = taCenter
+ AutoGenerateValue = arDefault
+ FieldName = 'USERS_NAME'
+ Origin = 'USERS_NAME'
+ ProviderFlags = []
+ ReadOnly = True
+ Size = 40
+ end
+ object qryAutoTimeInsertWTIT_REALWORKTIME: TTimeField
+ Alignment = taCenter
+ FieldName = 'WTIT_REALWORKTIME'
+ Origin = 'WTIT_REALWORKTIME'
+ DisplayFormat = 'hh:mm'
+ end
+ object qryAutoTimeInsertWTIT_DAYREALWORKTIME: TTimeField
+ FieldName = 'WTIT_DAYREALWORKTIME'
+ Origin = 'WTIT_DAYREALWORKTIME'
+ end
+ end
+ object dsAutoTimeInsert: TDataSource
+ DataSet = qryAutoTimeInsert
+ Left = 208
+ Top = 384
+ end
+ object qryWeekday: TFDQuery
+ Connection = con52Time
+ SQL.Strings = (
+ 'SELECT *'
+ 'FROM TB_WEEKDAY')
+ Left = 424
+ Top = 32
+ end
+ object dsWeekday: TDataSource
+ DataSet = qryWeekday
+ Left = 496
+ Top = 32
+ end
+ object qryRealTime: TFDQuery
+ Connection = con52Time
+ SQL.Strings = (
+ 'UPDATE TB_WORKTIMEINSERT'
+ 'SET WTIT_REALWORKTIME = :WORKTIME'
+ 'WHERE'
+ 'WTIT_SEQ = :WTIT_SEQ')
+ Left = 424
+ Top = 88
+ ParamData = <
+ item
+ Name = 'WORKTIME'
+ DataType = ftTime
+ ParamType = ptInput
+ Value = Null
+ end
+ item
+ Name = 'WTIT_SEQ'
+ DataType = ftInteger
+ ParamType = ptInput
+ end>
+ object qryRealTime이름: TStringField
+ FieldName = #51060#47492
+ LookupDataSet = qryInformationDept
+ end
+ end
+ object dsRealTime: TDataSource
+ DataSet = qryRealTime
+ Left = 496
+ Top = 88
+ end
+ object qryExceptTime: TFDQuery
+ Connection = con52Time
+ SQL.Strings = (
+ 'SELECT*FROM TB_EXCEPTTIME')
+ Left = 424
+ Top = 152
+ object qryExceptTimeET_SEQ: TIntegerField
+ Alignment = taCenter
+ FieldName = 'ET_SEQ'
+ Origin = 'ET_SEQ'
+ ProviderFlags = [pfInUpdate, pfInWhere, pfInKey]
+ end
+ object qryExceptTimeWTIT_SEQ: TIntegerField
+ Alignment = taCenter
+ FieldName = 'WTIT_SEQ'
+ Origin = 'WTIT_SEQ'
+ end
+ object qryExceptTimeET_STEXCEPTTIME: TTimeField
+ Alignment = taCenter
+ FieldName = 'ET_STEXCEPTTIME'
+ Origin = 'ET_STEXCEPTTIME'
+ DisplayFormat = 'hh:mm'
+ end
+ object qryExceptTimeET_FIEXCEPTTIME: TTimeField
+ Alignment = taCenter
+ FieldName = 'ET_FIEXCEPTTIME'
+ Origin = 'ET_FIEXCEPTTIME'
+ DisplayFormat = 'hh:mm'
+ end
+ object qryExceptTimeWTIT_DATE: TSQLTimeStampField
+ Alignment = taCenter
+ FieldName = 'WTIT_DATE'
+ Origin = 'WTIT_DATE'
+ end
+ object qryExceptTimeET_EXCEPTTIME: TTimeField
+ Alignment = taCenter
+ FieldName = 'ET_EXCEPTTIME'
+ Origin = 'ET_EXCEPTTIME'
+ DisplayFormat = 'hh:mm'
+ end
+ end
+ object dsExceptTime: TDataSource
+ DataSet = qryExceptTime
+ Left = 496
+ Top = 152
+ end
+ object qryUpdateExceptTime: TFDQuery
+ Connection = con52Time
+ SQL.Strings = (
+ 'UPDATE TB_EXCEPTTIME'
+ 'SET ET_EXCEPTTIME = :EXCEPTTIME'
+ 'WHERE'
+ 'ET_SEQ = :ET_SEQ')
+ Left = 424
+ Top = 216
+ ParamData = <
+ item
+ Name = 'EXCEPTTIME'
+ DataType = ftTime
+ ParamType = ptInput
+ Value = Null
+ end
+ item
+ Name = 'ET_SEQ'
+ DataType = ftInteger
+ ParamType = ptInput
+ end>
+ end
+ object dsUpdateExceptTime: TDataSource
+ DataSet = qryUpdateExceptTime
+ Left = 528
+ Top = 216
+ end
+ object qryLogin: TFDQuery
+ Connection = con52Time
+ SQL.Strings = (
+ 'SELECT '
+ 'TB_USERS.USERS_SEQ'
+ ''
+ 'FROM'
+ 'TB_USERS'
+ ''
+ 'WHERE'
+ 'TB_USERS.USERS_NAME = :AUSERS_NAME AND '
+ 'TB_USERS.USERS_CODE = :AUSERS_CODE AND'
+ 'TB_USERS.USERS_PASS = :AUSERS_PW')
+ Left = 424
+ Top = 280
+ ParamData = <
+ item
+ Name = 'AUSERS_NAME'
+ DataType = ftWideString
+ ParamType = ptInput
+ Size = 40
+ Value = Null
+ end
+ item
+ Name = 'AUSERS_CODE'
+ DataType = ftInteger
+ ParamType = ptInput
+ end
+ item
+ Name = 'AUSERS_PW'
+ DataType = ftWideString
+ ParamType = ptInput
+ Size = 60
+ end>
+ end
+ object dsLogin: TDataSource
+ DataSet = qryLogin
+ Left = 504
+ Top = 280
+ end
+ object qryNewMember: TFDQuery
+ Connection = con52Time
+ SQL.Strings = (
+ 'SELECT DEPT_SEQ'
+ 'FROM'
+ 'TB_DEPARTMENT'
+ 'WHERE'
+ 'TB_DEPARTMENT.DEPT_DEPT =:ADEPT_DEPT')
+ Left = 424
+ Top = 352
+ ParamData = <
+ item
+ Name = 'ADEPT_DEPT'
+ DataType = ftWideString
+ ParamType = ptInput
+ Size = 40
+ Value = Null
+ end>
+ end
+ object dsNewMember: TDataSource
+ DataSet = qryNewMember
+ Left = 504
+ Top = 352
+ end
+ object qryNameInsert: TFDQuery
+ Connection = con52Time
+ SQL.Strings = (
+ 'SELECT USERS_SEQ'
+ 'FROM'
+ 'TB_USERS'
+ 'WHERE'
+ 'TB_USERS.USERS_NAME =:AUSERS_NAME')
+ Left = 424
+ Top = 416
+ ParamData = <
+ item
+ Name = 'AUSERS_NAME'
+ DataType = ftWideString
+ ParamType = ptInput
+ Size = 40
+ Value = Null
+ end>
+ end
+ object dsNameinsert: TDataSource
+ DataSet = qryNameInsert
+ Left = 504
+ Top = 416
+ end
+ object proInformationDept: TDataSetProvider
+ DataSet = qryInformationDept
+ Left = 296
+ Top = 88
+ end
+end
diff --git a/40_Project/YangMyungWhan/52Time_PROJECT/Source/DataAccessModule.pas b/40_Project/YangMyungWhan/52Time_PROJECT/Source/DataAccessModule.pas
new file mode 100644
index 0000000..3c94c7e
--- /dev/null
+++ b/40_Project/YangMyungWhan/52Time_PROJECT/Source/DataAccessModule.pas
@@ -0,0 +1,180 @@
+unit DataAccessModule;
+
+interface
+
+uses
+ System.SysUtils, System.Classes, FireDAC.Stan.Intf, FireDAC.Stan.Option,
+ FireDAC.Stan.Error, FireDAC.UI.Intf, FireDAC.Phys.Intf, FireDAC.Stan.Def,
+ FireDAC.Stan.Pool, FireDAC.Stan.Async, FireDAC.Phys, FireDAC.Phys.IB,
+ FireDAC.Phys.IBDef, FireDAC.VCLUI.Wait, FireDAC.Stan.Param, FireDAC.DatS,
+ FireDAC.DApt.Intf, FireDAC.DApt, Data.DB, FireDAC.Comp.DataSet,
+ FireDAC.Comp.Client, Datasnap.Provider;
+
+type
+ TdmDataAccess = class(TDataModule)
+ con52Time: TFDConnection;
+ qry52Time: TFDQuery;
+ qryInformationDept: TFDQuery;
+ qryInformationDeptUSERS_SEQ: TIntegerField;
+ qryInformationDeptUSERS_CODE: TIntegerField;
+ qryInformationDeptUSERS_NAME: TWideStringField;
+ qryInformationDeptUSERS_PASS: TWideStringField;
+ qryInformationDeptUSERS_NUM: TWideStringField;
+ qryInformationDeptUSERS_IMG: TBlobField;
+ qryInformationDeptUSERS_MA: TWideStringField;
+ qryInformationDeptDEPT_SEQ: TIntegerField;
+ qryInformationDeptDEPT_DEPT: TWideStringField;
+ qryInformationDeptUSERS_MA_OX: TStringField;
+ qryTimeInsert: TFDQuery;
+ qryDept: TFDQuery;
+ dsInformationDept: TDataSource;
+ dsTimeInsert: TDataSource;
+ dsDept: TDataSource;
+ qryTimeInsertWTIT_SEQ: TIntegerField;
+ qryTimeInsertUSERS_SEQ: TIntegerField;
+ qryTimeInsertWTIT_STWORKTIME: TTimeField;
+ qryTimeInsertWTIT_FIWORKTIME: TTimeField;
+ qryTimeInsertWTIT_DATE: TSQLTimeStampField;
+ qryTimeInsertUSERS_NAME: TWideStringField;
+ qryUpdateTimeInsert: TFDQuery;
+ dsTimeInsertUpdate: TDataSource;
+ usTimeInsert: TFDUpdateSQL;
+ qryAutoTimeInsert: TFDQuery;
+ dsAutoTimeInsert: TDataSource;
+ qryAutoTimeInsertWTIT_SEQ: TIntegerField;
+ qryAutoTimeInsertUSERS_SEQ: TIntegerField;
+ qryAutoTimeInsertWTIT_STWORKTIME: TTimeField;
+ qryAutoTimeInsertWTIT_FIWORKTIME: TTimeField;
+ qryAutoTimeInsertWTIT_DATE: TSQLTimeStampField;
+ qryAutoTimeInsertUSERS_NAME: TWideStringField;
+ qryWeekday: TFDQuery;
+ dsWeekday: TDataSource;
+ qryRealTime: TFDQuery;
+ dsRealTime: TDataSource;
+ qryRealTime̸: TStringField;
+ qryTimeInsertWTIT_REALWORKTIME: TTimeField;
+ qryAutoTimeInsertWTIT_REALWORKTIME: TTimeField;
+ qryExceptTime: TFDQuery;
+ dsExceptTime: TDataSource;
+ qryAutoTimeInsertWTIT_DAYREALWORKTIME: TTimeField;
+ qryUpdateExceptTime: TFDQuery;
+ dsUpdateExceptTime: TDataSource;
+ qryExceptTimeET_SEQ: TIntegerField;
+ qryExceptTimeWTIT_SEQ: TIntegerField;
+ qryExceptTimeET_STEXCEPTTIME: TTimeField;
+ qryExceptTimeET_FIEXCEPTTIME: TTimeField;
+ qryExceptTimeET_EXCEPTTIME: TTimeField;
+ qryExceptTimeWTIT_DATE: TSQLTimeStampField;
+ qryLogin: TFDQuery;
+ dsLogin: TDataSource;
+ qryNewMember: TFDQuery;
+ dsNewMember: TDataSource;
+ qryNameInsert: TFDQuery;
+ dsNameinsert: TDataSource;
+ proInformationDept: TDataSetProvider;
+ procedure qryInformationDeptCalcFields(DataSet: TDataSet);
+ function ExecuteLogin(AUSERS_NAME, AUSERS_CODE, AUSERS_PW: String):Integer;
+ function NewMember(ADEPT_DEPT: String): Integer;
+ private
+ { Private declarations }
+ public
+ { Public declarations }
+ procedure ExecuteTime(AWorkTime_Seq: Integer; AFiWorkTime: TTime);
+ procedure ExecuteRealTime(ARealTime_Seq: Integer; AWtit_StWorkTime, AWtit_FiWorkTime: TTime);
+ procedure ExecuteExceptTime(AExceptTime_Seq: Integer; AEt_StExceptTime, AEt_FiExceptTime: TTime);
+
+ end;
+
+var
+ dmDataAccess: TdmDataAccess;
+ procedure Display_USplash; stdcall;
+external 'Project8.dll';
+
+implementation
+
+{%CLASSGROUP 'Vcl.Controls.TControl'}
+
+{$R *.dfm}
+uses
+ System.StrUtils;
+
+procedure TdmDataAccess.ExecuteExceptTime(AExceptTime_Seq: Integer;
+ AEt_StExceptTime, AEt_FiExceptTime: TTime);
+begin
+ qryUpdateExceptTime.Close;
+ qryUpdateExceptTime.ParamByName('EXCEPTTIME').AsDateTime := AEt_FiExceptTime - AEt_StExceptTime;
+ qryUpdateExceptTime.ParamByName('ET_SEQ').Asinteger := AExceptTime_Seq;
+ qryUpdateExceptTime.ExecSQL;
+
+ qryExceptTime.Refresh;
+end;
+
+function TdmDataAccess.ExecuteLogin(AUSERS_NAME, AUSERS_CODE, AUSERS_PW: String):integer;
+var
+ Check : Integer;
+begin
+
+ try
+ qryLogin.Close;
+ qryLogin.ParamByName('AUSERS_NAME').AsString := AUSERS_NAME;
+ qryLogin.ParamByName('AUSERS_CODE').AsString := AUSERS_CODE;
+ qryLogin.ParamByName('AUSERS_PW').AsString := AUSERS_PW;
+ qryLogin.open;
+ Check := qryLogin.FieldByName('USERS_SEQ').AsInteger;
+ result := Check;
+ Except
+ result:= 0;
+ end;
+end;
+
+procedure TdmDataAccess.ExecuteRealTime(ARealTime_Seq: Integer;
+ AWtit_StWorkTime, AWtit_FiWorkTime: TTime);
+begin
+ qryrealTime.Close;
+// qryrealTime.fieldbyname('WTIT_STWORKTIME').AsDateTime := AWtit_StWorkTime;
+// qryrealTime.fieldbyname('WTIT_FIWORKTIME').AsDateTime := AWtit_FiWorkTime;
+ qryRealTime.ParamByName('WORKTIME').AsDateTime := AWtit_FiWorkTime - AWtit_StWorkTime;
+ qryRealTime.ParamByName('WTIT_SEQ').Asinteger := ARealTime_Seq;
+ qryRealTime.ExecSQL;
+
+ qryAutoTimeInsert.Refresh;
+ qryTimeInsert.Refresh;
+end;
+
+procedure TdmDataAccess.ExecuteTime(AWorkTime_Seq: Integer; AFiWorkTime: TTime);
+begin
+ // ٽð Է ٽð ߰ Ʈ
+
+ qryUpdateTimeInsert.ParamByName('FIWORKTIME').AsDateTime := Now;
+ qryUpdateTimeInsert.ParamByName('SEQ').AsInteger := AWorkTime_Seq;
+ qryUpdateTimeInsert.ExecSQL;
+
+ qryAutoTimeInsert.Refresh;
+
+end;
+
+function TdmDataAccess.NewMember(ADEPT_DEPT: String): Integer;
+var
+ ADEPT_SEQ : Integer;
+begin
+ qryNewMember.Close;
+ qryNewMember.ParamByName('DEPT_DEPT').AsString := ADept_dept;
+ qryNewMember.Open;
+ ADEPT_SEQ := qryNewMember.FieldByName('DEPT_SEQ').AsInteger;
+ qryNewMember.Close;
+ result := ADEPT_SEQ;
+end;
+
+procedure TdmDataAccess.qryInformationDeptCalcFields(DataSet: TDataSet);
+var
+ MA_OX:string;
+begin
+ MA_OX := qryInformationDept.FieldByName('USERS_MA').AsString;
+ if MA_OX='T' then
+ qryInformationDept.FieldByName('USERS_MA_OX').AsString := 'O'
+ else
+ qryInformationDept.FieldByName('USERS_MA_OX').AsString := 'X';
+end;
+
+
+end.
diff --git a/40_Project/YangMyungWhan/52Time_PROJECT/Source/DeptAdd.dfm b/40_Project/YangMyungWhan/52Time_PROJECT/Source/DeptAdd.dfm
new file mode 100644
index 0000000..7f2217e
--- /dev/null
+++ b/40_Project/YangMyungWhan/52Time_PROJECT/Source/DeptAdd.dfm
@@ -0,0 +1,71 @@
+object frmDeptAdd: TfrmDeptAdd
+ Left = 0
+ Top = 0
+ Caption = 'frmDeptAdd'
+ ClientHeight = 164
+ ClientWidth = 341
+ Color = clBtnFace
+ Font.Charset = DEFAULT_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -11
+ Font.Name = 'Tahoma'
+ Font.Style = []
+ OldCreateOrder = False
+ PixelsPerInch = 96
+ TextHeight = 13
+ object Panel1: TPanel
+ Left = 0
+ Top = 0
+ Width = 341
+ Height = 164
+ Align = alClient
+ TabOrder = 0
+ ExplicitWidth = 313
+ object Label1: TLabel
+ Left = 25
+ Top = 68
+ Width = 52
+ Height = 18
+ Alignment = taCenter
+ Caption = #48512#49436#49440#53469
+ Font.Charset = ANSI_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -16
+ Font.Name = 'Arial'
+ Font.Style = []
+ ParentFont = False
+ end
+ object btsSelect: TButton
+ Left = 240
+ Top = 65
+ Width = 73
+ Height = 25
+ Caption = #49440#53469
+ Font.Charset = ANSI_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -16
+ Font.Name = 'Arial'
+ Font.Style = []
+ ParentFont = False
+ TabOrder = 0
+ end
+ object DBLookupComboBox1: TDBLookupComboBox
+ Left = 87
+ Top = 63
+ Width = 105
+ Height = 28
+ DataField = 'DEPT_SEQ'
+ DataSource = dmDataAccess.dsInformationDept
+ Font.Charset = ANSI_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -16
+ Font.Name = 'Arial Narrow'
+ Font.Style = []
+ KeyField = 'DEPT_SEQ'
+ ListField = 'DEPT_DEPT'
+ ListSource = dmDataAccess.dsDept
+ ParentFont = False
+ TabOrder = 1
+ end
+ end
+end
diff --git a/40_Project/YangMyungWhan/52Time_PROJECT/Source/DeptAdd.pas b/40_Project/YangMyungWhan/52Time_PROJECT/Source/DeptAdd.pas
new file mode 100644
index 0000000..7fda938
--- /dev/null
+++ b/40_Project/YangMyungWhan/52Time_PROJECT/Source/DeptAdd.pas
@@ -0,0 +1,29 @@
+unit DeptAdd;
+
+interface
+
+uses
+ Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
+ Vcl.Controls, Vcl.Forms, Vcl.Dialogs, DataAccessModule, Vcl.StdCtrls,
+ Vcl.DBCtrls, Data.DB, Vcl.ExtCtrls;
+
+type
+ TfrmDeptAdd = class(TForm)
+ Panel1: TPanel;
+ Label1: TLabel;
+ btsSelect: TButton;
+ DBLookupComboBox1: TDBLookupComboBox;
+ private
+ { Private declarations }
+ public
+ { Public declarations }
+ end;
+
+var
+ frmDeptAdd: TfrmDeptAdd;
+
+implementation
+
+{$R *.dfm}
+
+end.
diff --git a/40_Project/YangMyungWhan/52Time_PROJECT/Source/LogIn.dfm b/40_Project/YangMyungWhan/52Time_PROJECT/Source/LogIn.dfm
new file mode 100644
index 0000000..2ffdc25
--- /dev/null
+++ b/40_Project/YangMyungWhan/52Time_PROJECT/Source/LogIn.dfm
@@ -0,0 +1,136 @@
+object frmLogin: TfrmLogin
+ Left = 0
+ Top = 0
+ Caption = 'frmLogin'
+ ClientHeight = 384
+ ClientWidth = 549
+ Color = clBtnFace
+ Font.Charset = DEFAULT_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -11
+ Font.Name = 'Tahoma'
+ Font.Style = []
+ OldCreateOrder = False
+ PixelsPerInch = 96
+ TextHeight = 13
+ object pnlLogin: TPanel
+ Left = 0
+ Top = 0
+ Width = 549
+ Height = 41
+ Align = alTop
+ TabOrder = 0
+ object Label1: TLabel
+ Left = 8
+ Top = 12
+ Width = 60
+ Height = 19
+ Caption = #47196#44536#51064
+ Font.Charset = HANGEUL_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -19
+ Font.Name = 'HY'#49688#54217#49440'M'
+ Font.Style = [fsBold]
+ ParentFont = False
+ end
+ end
+ object pnlLoginMain: TPanel
+ Left = 0
+ Top = 41
+ Width = 549
+ Height = 343
+ Align = alClient
+ TabOrder = 1
+ object Label2: TLabel
+ Left = 88
+ Top = 50
+ Width = 42
+ Height = 21
+ Caption = #51060#47492
+ Font.Charset = HANGEUL_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -21
+ Font.Name = 'HY'#49688#54217#49440'M'
+ Font.Style = []
+ ParentFont = False
+ end
+ object Label3: TLabel
+ Left = 88
+ Top = 110
+ Width = 42
+ Height = 21
+ Caption = #49324#48264
+ Font.Charset = HANGEUL_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -21
+ Font.Name = 'HY'#49688#54217#49440'M'
+ Font.Style = []
+ ParentFont = False
+ end
+ object Label4: TLabel
+ Left = 88
+ Top = 170
+ Width = 84
+ Height = 21
+ Caption = #48708#48128#48264#54840
+ Font.Charset = HANGEUL_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -21
+ Font.Name = 'HY'#49688#54217#49440'M'
+ Font.Style = []
+ ParentFont = False
+ end
+ object edtLoginName: TEdit
+ Left = 224
+ Top = 50
+ Width = 121
+ Height = 21
+ TabOrder = 0
+ end
+ object edtLoginCode: TEdit
+ Left = 224
+ Top = 110
+ Width = 121
+ Height = 21
+ TabOrder = 1
+ end
+ object edtLoginPw: TEdit
+ Left = 224
+ Top = 170
+ Width = 121
+ Height = 21
+ PasswordChar = '*'
+ TabOrder = 2
+ end
+ object btnLogin: TButton
+ Left = 88
+ Top = 224
+ Width = 257
+ Height = 65
+ Caption = #47196#44536#51064
+ Font.Charset = ANSI_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -27
+ Font.Name = 'Arial'
+ Font.Style = [fsBold]
+ ParentFont = False
+ TabOrder = 3
+ OnClick = btnLoginClick
+ end
+ end
+ object btnNewMember: TButton
+ Left = 384
+ Top = 89
+ Width = 89
+ Height = 241
+ Caption = #54924#50896#44032#51077
+ Font.Charset = ANSI_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -21
+ Font.Name = 'Arial'
+ Font.Style = [fsBold]
+ ParentFont = False
+ TabOrder = 2
+ OnClick = btnNewMemberClick
+ end
+end
diff --git a/40_Project/YangMyungWhan/52Time_PROJECT/Source/LogIn.pas b/40_Project/YangMyungWhan/52Time_PROJECT/Source/LogIn.pas
new file mode 100644
index 0000000..1fe58f8
--- /dev/null
+++ b/40_Project/YangMyungWhan/52Time_PROJECT/Source/LogIn.pas
@@ -0,0 +1,72 @@
+unit LogIn;
+
+interface
+
+uses
+ Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
+ Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Vcl.ExtCtrls;
+
+type
+ TfrmLogin = class(TForm)
+ pnlLogin: TPanel;
+ Label1: TLabel;
+ pnlLoginMain: TPanel;
+ Label2: TLabel;
+ Label3: TLabel;
+ Label4: TLabel;
+ edtLoginName: TEdit;
+ edtLoginCode: TEdit;
+ edtLoginPw: TEdit;
+ btnLogin: TButton;
+ btnNewMember: TButton;
+ procedure btnLoginClick(Sender: TObject);
+ procedure btnNewMemberClick(Sender: TObject);
+ private
+ { Private declarations }
+ public
+ { Public declarations }
+ end;
+
+var
+ frmLogin: TfrmLogin;
+ AUSERS_NAME, AUSERS_CODE, AUSERS_PW : String;
+ procedure Display_USplash; stdcall;
+external 'Project8.dll';
+implementation
+
+{$R *.dfm}
+
+uses DataAccessModule, MainForm, NewMember;
+
+procedure TfrmLogin.btnLoginClick(Sender: TObject); //α() ưŬ
+var
+ AUSERS_NAME, AUSERS_CODE, AUSERS_PW : String;
+ Login_Check :Integer;
+begin
+ AUSERS_NAME := edtLoginName.Text;
+ AUSERS_CODE := edtLoginCode.Text;
+ AUSERS_PW := edtLoginPw.Text;
+
+ Login_Check := dmDataAccess.ExecuteLogin(AUSERS_NAME, AUSERS_CODE, AUSERS_PW);
+
+
+ if Login_Check > 0 then
+ begin
+ ShowMessage('');
+
+ ModalResult := mrOK;
+ Exit;
+ end
+ else
+ ShowMessage('');
+end;
+
+
+procedure TfrmLogin.btnNewMemberClick(Sender: TObject);
+begin
+ if not Assigned(frmNewMember) then
+ frmNewMember := TfrmNewMember.Create(Self);
+ frmNewMember.Show;
+end;
+
+end.
diff --git a/40_Project/YangMyungWhan/52Time_PROJECT/Source/MainForm.dfm b/40_Project/YangMyungWhan/52Time_PROJECT/Source/MainForm.dfm
new file mode 100644
index 0000000..5ec4685
--- /dev/null
+++ b/40_Project/YangMyungWhan/52Time_PROJECT/Source/MainForm.dfm
@@ -0,0 +1,101 @@
+object frmMainForm: TfrmMainForm
+ Left = 0
+ Top = 0
+ AutoSize = True
+ Caption = 'e'
+ ClientHeight = 623
+ ClientWidth = 985
+ Color = clBtnFace
+ Font.Charset = DEFAULT_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -11
+ Font.Name = 'Tahoma'
+ Font.Style = []
+ Menu = MainMenu1
+ OldCreateOrder = False
+ OnCreate = FormCreate
+ PixelsPerInch = 96
+ TextHeight = 13
+ object tbMainMenu: TToolBar
+ Left = 0
+ Top = 0
+ Width = 99
+ Height = 623
+ Align = alLeft
+ ButtonHeight = 100
+ ButtonWidth = 97
+ Caption = 'tbMainMenu'
+ Color = clBtnHighlight
+ Font.Charset = DEFAULT_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -11
+ Font.Name = 'Tahoma'
+ Font.Style = [fsBold]
+ Images = ilToolbar
+ ParentColor = False
+ ParentFont = False
+ ShowCaptions = True
+ TabOrder = 0
+ object btnWorkerInformation: TToolButton
+ Left = 0
+ Top = 0
+ Caption = #49324#50896#51221#48372
+ ImageIndex = 0
+ Wrap = True
+ OnClick = btnWorkerInformationClick
+ end
+ object btnTimeInsert: TToolButton
+ Left = 0
+ Top = 100
+ Caption = #49884#44036#51077#47141
+ ImageIndex = 1
+ Wrap = True
+ OnClick = btnTimeInsertClick
+ end
+ object btnResult: TToolButton
+ Left = 0
+ Top = 200
+ Caption = #53685#44228
+ ImageIndex = 2
+ Wrap = True
+ OnClick = btnResultClick
+ end
+ object btnClose: TToolButton
+ Left = 0
+ Top = 300
+ Caption = #51333#47308
+ ImageIndex = 3
+ Wrap = True
+ OnClick = btnCloseClick
+ end
+ end
+ object pnlLayout: TPanel
+ Left = 99
+ Top = 0
+ Width = 886
+ Height = 623
+ Align = alClient
+ TabOrder = 1
+ end
+ object ilToolbar: TImageList
+ ColorDepth = cd32Bit
+ DrawingStyle = dsTransparent
+ Height = 80
+ Width = 90
+ Left = 16
+ Top = 456
+ end
+ object MainMenu1: TMainMenu
+ Left = 64
+ Top = 456
+ object N1: TMenuItem
+ Caption = #54028#51068
+ end
+ object N2: TMenuItem
+ Caption = #44592#45733
+ end
+ object N3: TMenuItem
+ Caption = #49828#53440#51068
+ end
+ end
+end
diff --git a/40_Project/YangMyungWhan/52Time_PROJECT/Source/MainForm.pas b/40_Project/YangMyungWhan/52Time_PROJECT/Source/MainForm.pas
new file mode 100644
index 0000000..b95f4d6
--- /dev/null
+++ b/40_Project/YangMyungWhan/52Time_PROJECT/Source/MainForm.pas
@@ -0,0 +1,98 @@
+unit MainForm;
+
+interface
+
+uses
+ Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
+ Vcl.Controls, Vcl.Forms, Vcl.Dialogs, System.ImageList, Vcl.ImgList,
+ Vcl.ComCtrls, Vcl.ToolWin, Vcl.ActnMan, Vcl.ActnCtrls, Vcl.ExtCtrls, Vcl.Menus,
+ WorkerInformation, TimeInsert, Statistics, DBFrame, Vcl.StdCtrls;
+
+type
+ TfrmMainForm = class(TForm)
+ tbMainMenu: TToolBar;
+ btnWorkerInformation: TToolButton;
+ btnTimeInsert: TToolButton;
+ btnResult: TToolButton;
+ btnClose: TToolButton;
+ ilToolbar: TImageList;
+ MainMenu1: TMainMenu;
+ N1: TMenuItem;
+ N2: TMenuItem;
+ N3: TMenuItem;
+ pnlLayout: TPanel;
+ procedure btnCloseClick(Sender: TObject);
+ procedure btnWorkerInformationClick(Sender: TObject);
+ procedure btnTimeInsertClick(Sender: TObject);
+ procedure btnResultClick(Sender: TObject);
+ procedure Button1Click(Sender: TObject);
+ procedure FormCreate(Sender: TObject);
+ private
+ { Private declarations }
+ public
+ { Public declarations }
+ end;
+
+var
+ frmMainForm: TfrmMainForm;
+
+implementation
+
+{$R *.dfm}
+
+procedure TfrmMainForm.btnCloseClick(Sender: TObject);
+begin
+ Close;
+end;
+
+procedure TfrmMainForm.btnResultClick(Sender: TObject);
+begin
+ if not Assigned(frmStatisics) then
+ frmStatisics := TfrmStatisics.Create(Self);
+ frmStatisics.Parent := pnlLayout;
+ frmStatisics.BorderStyle := bsNone;
+ frmStatisics.Align := alClient;
+ frmStatisics.Show;
+end;
+
+procedure TfrmMainForm.btnTimeInsertClick(Sender: TObject);
+begin
+ if not Assigned(frmTimeInsert) then
+ frmTimeInsert := TfrmTimeInsert.Create(Self);
+ frmTimeInsert.Parent := pnlLayout;
+ frmTimeInsert.BorderStyle := bsNone;
+ frmTimeInsert.Align := alClient;
+ frmTimeInsert.Show;
+end;
+
+procedure TfrmMainForm.btnWorkerInformationClick(Sender: TObject);
+begin
+ if not Assigned(frmWorkerInformation) then
+ frmWorkerInformation := TfrmWorkerInformation.Create(Self);
+ frmWorkerInformation.Parent := pnlLayout;
+ frmWorkerInformation.BorderStyle := bsNone;
+ frmWorkerInformation.Align := alClient;
+ frmWorkerInformation.Show;
+end;
+
+procedure TfrmMainForm.Button1Click(Sender: TObject);
+begin
+ if not Assigned(frmWorkerInformation) then
+ frmDb := TfrmDb.Create(Self);
+ frmDb.Parent := pnlLayout;
+ frmDb.BorderStyle := bsNone;
+ frmDb.Align := alClient;
+ frmDb.Show;
+end;
+
+procedure TfrmMainForm.FormCreate(Sender: TObject);
+begin
+ if not Assigned(frmWorkerInformation) then
+ frmWorkerInformation := TfrmWorkerInformation.Create(Self);
+ frmWorkerInformation.Parent := pnlLayout;
+ frmWorkerInformation.BorderStyle := bsNone;
+ frmWorkerInformation.Align := alClient;
+ frmWorkerInformation.Show;
+end;
+
+end.
diff --git a/40_Project/YangMyungWhan/52Time_PROJECT/Source/Mobile.fmx b/40_Project/YangMyungWhan/52Time_PROJECT/Source/Mobile.fmx
new file mode 100644
index 0000000..2375350
--- /dev/null
+++ b/40_Project/YangMyungWhan/52Time_PROJECT/Source/Mobile.fmx
@@ -0,0 +1,55 @@
+object Form8: TForm8
+ Left = 0
+ Top = 0
+ Caption = 'Form8'
+ ClientHeight = 480
+ ClientWidth = 553
+ FormFactor.Width = 320
+ FormFactor.Height = 480
+ FormFactor.Devices = [Desktop]
+ DesignerMasterStyle = 0
+ object Button1: TButton
+ Position.X = 184.000000000000000000
+ Position.Y = 40.000000000000000000
+ Size.Width = 217.000000000000000000
+ Size.Height = 57.000000000000000000
+ Size.PlatformDefault = False
+ TabOrder = 0
+ Text = 'Button1'
+ object FloatAnimation1: TFloatAnimation
+ Enabled = True
+ Duration = 1.000000000000000000
+ Loop = True
+ PropertyName = 'Position.Y'
+ StartValue = 60.000000000000000000
+ StopValue = 0.000000000000000000
+ end
+ end
+ object Button2: TButton
+ Position.X = 184.000000000000000000
+ Position.Y = 120.000000000000000000
+ Size.Width = 217.000000000000000000
+ Size.Height = 65.000000000000000000
+ Size.PlatformDefault = False
+ TabOrder = 1
+ Text = 'Button2'
+ object FloatAnimation3: TFloatAnimation
+ Enabled = True
+ Duration = 1.000000000000000000
+ Loop = True
+ PropertyName = 'RotationAngle'
+ StartValue = 0.000000000000000000
+ StopValue = 360.000000000000000000
+ end
+ end
+ object Button3: TButton
+ Position.X = 184.000000000000000000
+ Position.Y = 208.000000000000000000
+ Size.Width = 217.000000000000000000
+ Size.Height = 65.000000000000000000
+ Size.PlatformDefault = False
+ TabOrder = 2
+ Text = 'Button3'
+ OnClick = Button3Click
+ end
+end
diff --git a/40_Project/YangMyungWhan/52Time_PROJECT/Source/Mobile.pas b/40_Project/YangMyungWhan/52Time_PROJECT/Source/Mobile.pas
new file mode 100644
index 0000000..391f626
--- /dev/null
+++ b/40_Project/YangMyungWhan/52Time_PROJECT/Source/Mobile.pas
@@ -0,0 +1,38 @@
+unit Mobile;
+
+interface
+
+uses
+ System.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants,
+ FMX.Types, FMX.Controls, FMX.Forms, FMX.Graphics, FMX.Dialogs, FMX.Ani,
+ FMX.Controls.Presentation, FMX.StdCtrls;
+
+type
+ TForm8 = class(TForm)
+ Button1: TButton;
+ Button2: TButton;
+ Button3: TButton;
+ FloatAnimation1: TFloatAnimation;
+ FloatAnimation3: TFloatAnimation;
+
+ procedure Button3Click(Sender: TObject);
+ private
+ { Private declarations }
+ public
+ { Public declarations }
+ end;
+
+var
+ Form8: TForm8;
+
+implementation
+
+{$R *.fmx}
+
+procedure TForm8.Button3Click(Sender: TObject);
+begin
+ Button3.AnimateFloat('Position.Y', Button3.Position.Y+20, 0.5);
+end;
+
+
+end.
diff --git a/40_Project/YangMyungWhan/52Time_PROJECT/Source/Mobile.vlb b/40_Project/YangMyungWhan/52Time_PROJECT/Source/Mobile.vlb
new file mode 100644
index 0000000..1f48a4b
--- /dev/null
+++ b/40_Project/YangMyungWhan/52Time_PROJECT/Source/Mobile.vlb
@@ -0,0 +1,3 @@
+[]
+Coordinates=0,0,66,33
+
diff --git a/40_Project/YangMyungWhan/52Time_PROJECT/Source/NewMember.dfm b/40_Project/YangMyungWhan/52Time_PROJECT/Source/NewMember.dfm
new file mode 100644
index 0000000..0f24fd6
--- /dev/null
+++ b/40_Project/YangMyungWhan/52Time_PROJECT/Source/NewMember.dfm
@@ -0,0 +1,225 @@
+object frmNewMember: TfrmNewMember
+ Left = 0
+ Top = 0
+ Caption = 'frmNewMember'
+ ClientHeight = 404
+ ClientWidth = 596
+ Color = clBtnFace
+ Font.Charset = DEFAULT_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -11
+ Font.Name = 'Tahoma'
+ Font.Style = []
+ OldCreateOrder = False
+ OnCreate = FormCreate
+ PixelsPerInch = 96
+ TextHeight = 13
+ object Panel1: TPanel
+ Left = 0
+ Top = 0
+ Width = 596
+ Height = 41
+ Align = alTop
+ TabOrder = 0
+ ExplicitWidth = 304
+ object Label1: TLabel
+ Left = 8
+ Top = 12
+ Width = 80
+ Height = 19
+ Caption = #54924#50896#44032#51077
+ Font.Charset = HANGEUL_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -19
+ Font.Name = 'HY'#49688#54217#49440'M'
+ Font.Style = [fsBold]
+ ParentFont = False
+ end
+ end
+ object Panel2: TPanel
+ Left = 0
+ Top = 41
+ Width = 596
+ Height = 363
+ Align = alClient
+ TabOrder = 1
+ ExplicitWidth = 304
+ ExplicitHeight = 160
+ object Label2: TLabel
+ Left = 272
+ Top = 42
+ Width = 42
+ Height = 21
+ Caption = #51060#47492
+ Font.Charset = HANGEUL_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -21
+ Font.Name = 'HY'#49688#54217#49440'M'
+ Font.Style = []
+ ParentFont = False
+ end
+ object Label3: TLabel
+ Left = 272
+ Top = 85
+ Width = 42
+ Height = 21
+ Caption = #49324#48264
+ Font.Charset = HANGEUL_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -21
+ Font.Name = 'HY'#49688#54217#49440'M'
+ Font.Style = []
+ ParentFont = False
+ end
+ object Label4: TLabel
+ Left = 272
+ Top = 126
+ Width = 84
+ Height = 21
+ Caption = #48708#48128#48264#54840
+ Font.Charset = HANGEUL_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -21
+ Font.Name = 'HY'#49688#54217#49440'M'
+ Font.Style = []
+ ParentFont = False
+ end
+ object Label5: TLabel
+ Left = 272
+ Top = 167
+ Width = 42
+ Height = 21
+ Caption = #48512#49436
+ Font.Charset = HANGEUL_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -21
+ Font.Name = 'HY'#49688#54217#49440'M'
+ Font.Style = []
+ ParentFont = False
+ end
+ object Label6: TLabel
+ Left = 272
+ Top = 209
+ Width = 63
+ Height = 21
+ Caption = #50672#46973#52376
+ Font.Charset = HANGEUL_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -21
+ Font.Name = 'HY'#49688#54217#49440'M'
+ Font.Style = []
+ ParentFont = False
+ end
+ object GroupBox1: TGroupBox
+ Left = 40
+ Top = 30
+ Width = 185
+ Height = 225
+ TabOrder = 0
+ object imgNewMember: TImage
+ Left = 2
+ Top = 15
+ Width = 181
+ Height = 208
+ Align = alClient
+ Stretch = True
+ ExplicitLeft = 40
+ ExplicitTop = 64
+ ExplicitWidth = 105
+ ExplicitHeight = 105
+ end
+ end
+ object btnClear: TButton
+ Left = 49
+ Top = 269
+ Width = 75
+ Height = 25
+ Caption = #52488#44592#54868
+ TabOrder = 1
+ OnClick = btnClearClick
+ end
+ object btnImageLoad: TButton
+ Left = 143
+ Top = 269
+ Width = 75
+ Height = 25
+ Caption = #48520#47084#50724#44592
+ TabOrder = 2
+ OnClick = btnImageLoadClick
+ end
+ object btnNew: TButton
+ Left = 272
+ Top = 262
+ Width = 265
+ Height = 32
+ Caption = #54924#50896#44032#51077
+ TabOrder = 3
+ OnClick = btnNewClick
+ end
+ object cbMa: TCheckBox
+ Left = 416
+ Top = 239
+ Width = 97
+ Height = 17
+ Caption = #44288#47532#51088' '#44428#54620
+ TabOrder = 4
+ end
+ object cbDept: TDBLookupComboBox
+ Left = 416
+ Top = 167
+ Width = 121
+ Height = 21
+ DataField = 'DEPT_SEQ'
+ DataSource = dmDataAccess.dsInformationDept
+ KeyField = 'DEPT_SEQ'
+ ListField = 'DEPT_DEPT'
+ ListSource = dmDataAccess.dsDept
+ TabOrder = 5
+ end
+ object edtNumber: TDBEdit
+ Left = 416
+ Top = 209
+ Width = 121
+ Height = 21
+ DataField = 'USERS_NUM'
+ DataSource = dmDataAccess.dsInformationDept
+ TabOrder = 6
+ end
+ object DBEdit1: TDBEdit
+ Left = 416
+ Top = 130
+ Width = 121
+ Height = 21
+ DataField = 'USERS_PASS'
+ DataSource = dmDataAccess.dsInformationDept
+ PasswordChar = '*'
+ TabOrder = 7
+ end
+ object DBEdit2: TDBEdit
+ Left = 416
+ Top = 89
+ Width = 121
+ Height = 21
+ DataField = 'USERS_CODE'
+ DataSource = dmDataAccess.dsInformationDept
+ TabOrder = 8
+ end
+ object DBEdit3: TDBEdit
+ Left = 416
+ Top = 42
+ Width = 121
+ Height = 21
+ DataField = 'USERS_NAME'
+ DataSource = dmDataAccess.dsInformationDept
+ TabOrder = 9
+ end
+ end
+ object dlgNewMember: TOpenDialog
+ Left = 152
+ Top = 176
+ end
+ object btnNewMember: TImageList
+ Left = 72
+ Top = 176
+ end
+end
diff --git a/40_Project/YangMyungWhan/52Time_PROJECT/Source/NewMember.pas b/40_Project/YangMyungWhan/52Time_PROJECT/Source/NewMember.pas
new file mode 100644
index 0000000..a4a32fa
--- /dev/null
+++ b/40_Project/YangMyungWhan/52Time_PROJECT/Source/NewMember.pas
@@ -0,0 +1,88 @@
+unit NewMember;
+
+interface
+
+uses
+ Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
+ Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Vcl.ExtCtrls, System.ImageList,
+ Vcl.ImgList, Data.DB, Vcl.DBCtrls, Vcl.Mask, Vcl.Grids, Vcl.DBGrids;
+
+type
+ TfrmNewMember = class(TForm)
+ Panel1: TPanel;
+ Label1: TLabel;
+ Panel2: TPanel;
+ Label2: TLabel;
+ Label3: TLabel;
+ Label4: TLabel;
+ Label5: TLabel;
+ Label6: TLabel;
+ GroupBox1: TGroupBox;
+ imgNewMember: TImage;
+ btnClear: TButton;
+ btnImageLoad: TButton;
+ dlgNewMember: TOpenDialog;
+ btnNewMember: TImageList;
+ btnNew: TButton;
+ cbMa: TCheckBox;
+ cbDept: TDBLookupComboBox;
+ edtNumber: TDBEdit;
+ DBEdit1: TDBEdit;
+ DBEdit2: TDBEdit;
+ DBEdit3: TDBEdit;
+ procedure btnClearClick(Sender: TObject);
+ procedure btnImageLoadClick(Sender: TObject);
+ procedure btnNewClick(Sender: TObject);
+ procedure FormCreate(Sender: TObject);
+ private
+ { Private declarations }
+ public
+ { Public declarations }
+ end;
+
+var
+ frmNewMember: TfrmNewMember;
+
+implementation
+
+{$R *.dfm}
+
+uses CommonFunctions, DataAccessModule, MainForm;
+
+procedure TfrmNewMember.btnClearClick(Sender: TObject);
+var
+ Field: TField;
+begin
+ imgNewMember.Picture.Assign(nil);
+end;
+
+procedure TfrmNewMember.btnImageLoadClick(Sender: TObject);
+var
+ field:Tfield;
+begin
+ if dlgNewMember.execute then
+ begin
+ LoadImagefromFile(imgNewMember, dlgNewMember.FileName);
+
+ field := dmdataAccess.qryInformationDept.FieldByName('USERS_IMG');
+ SaveImageToBlobField(imgNewMember, Field as TBlobField);
+ end;
+
+end;
+
+procedure TfrmNewMember.btnNewClick(Sender: TObject); //ȸ
+begin
+
+ dmDataAccess.qryInformationDept.Post;
+ dmDataAccess.qryInformationDept.Refresh;
+exit;
+
+ dmdataaccess.qryInformationDept.append;
+
+end;
+procedure TfrmNewMember.FormCreate(Sender: TObject);
+begin
+ dmDataAccess.qryInformationDept.Append;
+end;
+
+end.
diff --git a/40_Project/YangMyungWhan/52Time_PROJECT/Source/Project7.dpr b/40_Project/YangMyungWhan/52Time_PROJECT/Source/Project7.dpr
new file mode 100644
index 0000000..84bde35
--- /dev/null
+++ b/40_Project/YangMyungWhan/52Time_PROJECT/Source/Project7.dpr
@@ -0,0 +1,16 @@
+program Project7;
+
+uses
+ Vcl.Forms,
+ Unit7 in 'Unit7.pas' {Form7},
+ Unit8 in 'Unit8.pas' {DataModule8: TDataModule};
+
+{$R *.res}
+
+begin
+ Application.Initialize;
+ Application.MainFormOnTaskbar := True;
+ Application.CreateForm(TForm7, Form7);
+ Application.CreateForm(TDataModule8, DataModule8);
+ Application.Run;
+end.
diff --git a/40_Project/YangMyungWhan/52Time_PROJECT/Source/Project7.dproj b/40_Project/YangMyungWhan/52Time_PROJECT/Source/Project7.dproj
new file mode 100644
index 0000000..f49c0cb
--- /dev/null
+++ b/40_Project/YangMyungWhan/52Time_PROJECT/Source/Project7.dproj
@@ -0,0 +1,846 @@
+
+
+ {D43752F8-491E-4699-A705-CD7E7104ADF0}
+ 18.7
+ VCL
+ Project7.dpr
+ True
+ Debug
+ Win32
+ 1
+ Application
+
+
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_1
+ true
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_2
+ true
+ true
+
+
+ .\$(Platform)\$(Config)
+ .\$(Platform)\$(Config)
+ false
+ false
+ false
+ false
+ false
+ System;Xml;Data;Datasnap;Web;Soap;Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;$(DCC_Namespace)
+ $(BDS)\bin\delphi_PROJECTICON.ico
+ $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_44.png
+ $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_150.png
+ Project7
+
+
+ DBXSqliteDriver;RESTComponents;DataSnapServerMidas;DBXDb2Driver;DBXInterBaseDriver;vclactnband;vclFireDAC;emsclientfiredac;tethering;svnui;DataSnapFireDAC;FireDACADSDriver;DBXMSSQLDriver;DatasnapConnectorsFreePascal;FireDACMSSQLDriver;vcltouch;vcldb;bindcompfmx;svn;DBXOracleDriver;inetdb;FmxTeeUI;emsedge;fmx;FireDACIBDriver;fmxdae;vclib;FireDACDBXDriver;dbexpress;IndyCore;vclx;dsnap;DataSnapCommon;emsclient;FireDACCommon;RESTBackendComponents;DataSnapConnectors;VCLRESTComponents;soapserver;vclie;bindengine;DBXMySQLDriver;FireDACOracleDriver;CloudService;FireDACMySQLDriver;DBXFirebirdDriver;FireDACCommonODBC;FireDACCommonDriver;DataSnapClient;inet;bindcompdbx;IndyIPCommon;vcl;DBXSybaseASEDriver;IndyIPServer;IndySystem;FireDACDb2Driver;dsnapcon;FireDACMSAccDriver;fmxFireDAC;FireDACInfxDriver;vclimg;TeeDB;FireDAC;emshosting;FireDACSqliteDriver;FireDACPgDriver;ibmonitor;FireDACASADriver;DBXOdbcDriver;FireDACTDataDriver;FMXTee;soaprtl;DbxCommonDriver;ibxpress;Tee;DataSnapServer;xmlrtl;soapmidas;DataSnapNativeClient;fmxobj;vclwinx;ibxbindings;rtl;emsserverresource;DbxClientDriver;FireDACDSDriver;DBXSybaseASADriver;CustomIPTransport;vcldsnap;bindcomp;appanalytics;DBXInformixDriver;IndyIPClient;bindcompvcl;TeeUI;dbxcds;VclSmp;adortl;FireDACODBCDriver;DataSnapIndy10ServerTransport;dsnapxml;DataSnapProviderClient;dbrtl;inetdbxpress;FireDACMongoDBDriver;IndyProtocols;fmxase;$(DCC_UsePackage)
+ Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
+ Debug
+ true
+ CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=com.embarcadero.$(MSBuildProjectName);ProductName=$(MSBuildProjectName);ProductVersion=1.0.0.0;Comments=
+ 1033
+ $(BDS)\bin\default_app.manifest
+
+
+ DBXSqliteDriver;RESTComponents;DataSnapServerMidas;DBXDb2Driver;DBXInterBaseDriver;vclactnband;vclFireDAC;emsclientfiredac;tethering;DataSnapFireDAC;FireDACADSDriver;DBXMSSQLDriver;DatasnapConnectorsFreePascal;FireDACMSSQLDriver;vcltouch;vcldb;bindcompfmx;DBXOracleDriver;inetdb;FmxTeeUI;emsedge;fmx;FireDACIBDriver;fmxdae;vclib;FireDACDBXDriver;dbexpress;IndyCore;vclx;dsnap;DataSnapCommon;emsclient;FireDACCommon;RESTBackendComponents;DataSnapConnectors;VCLRESTComponents;soapserver;vclie;bindengine;DBXMySQLDriver;FireDACOracleDriver;CloudService;FireDACMySQLDriver;DBXFirebirdDriver;FireDACCommonODBC;FireDACCommonDriver;DataSnapClient;inet;bindcompdbx;IndyIPCommon;vcl;DBXSybaseASEDriver;IndyIPServer;IndySystem;FireDACDb2Driver;dsnapcon;FireDACMSAccDriver;fmxFireDAC;FireDACInfxDriver;vclimg;TeeDB;FireDAC;emshosting;FireDACSqliteDriver;FireDACPgDriver;ibmonitor;FireDACASADriver;DBXOdbcDriver;FireDACTDataDriver;FMXTee;soaprtl;DbxCommonDriver;ibxpress;Tee;DataSnapServer;xmlrtl;soapmidas;DataSnapNativeClient;fmxobj;vclwinx;ibxbindings;rtl;emsserverresource;DbxClientDriver;FireDACDSDriver;DBXSybaseASADriver;CustomIPTransport;vcldsnap;bindcomp;appanalytics;DBXInformixDriver;IndyIPClient;bindcompvcl;TeeUI;dbxcds;VclSmp;adortl;FireDACODBCDriver;DataSnapIndy10ServerTransport;dsnapxml;DataSnapProviderClient;dbrtl;inetdbxpress;FireDACMongoDBDriver;IndyProtocols;fmxase;$(DCC_UsePackage)
+
+
+ DEBUG;$(DCC_Define)
+ true
+ false
+ true
+ true
+ true
+
+
+ false
+ true
+ PerMonitorV2
+
+
+ false
+ RELEASE;$(DCC_Define)
+ 0
+ 0
+
+
+ true
+ PerMonitorV2
+
+
+
+ MainSource
+
+
+
+ dfm
+
+
+
+ dfm
+ TDataModule
+
+
+ Cfg_2
+ Base
+
+
+ Base
+
+
+ Cfg_1
+ Base
+
+
+
+ Delphi.Personality.12
+ Application
+
+
+
+ Project7.dpr
+
+
+
+
+
+ Project7.exe
+ true
+
+
+
+
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ 0
+
+
+
+
+ classes
+ 1
+
+
+
+
+ res\xml
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ library\lib\armeabi
+ 1
+
+
+
+
+ library\lib\mips
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ res\drawable
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+
+
+ res\values-v21
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+
+
+ res\drawable
+ 1
+
+
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+
+
+ res\drawable-ldpi
+ 1
+
+
+
+
+ res\drawable-mdpi
+ 1
+
+
+
+
+ res\drawable-hdpi
+ 1
+
+
+
+
+ res\drawable-xhdpi
+ 1
+
+
+
+
+ res\drawable-mdpi
+ 1
+
+
+
+
+ res\drawable-hdpi
+ 1
+
+
+
+
+ res\drawable-xhdpi
+ 1
+
+
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+
+
+ res\drawable-xxxhdpi
+ 1
+
+
+
+
+ res\drawable-small
+ 1
+
+
+
+
+ res\drawable-normal
+ 1
+
+
+
+
+ res\drawable-large
+ 1
+
+
+
+
+ res\drawable-xlarge
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+
+
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ 0
+
+
+
+
+ Contents\MacOS
+ 1
+ .framework
+
+
+ Contents\MacOS
+ 1
+ .framework
+
+
+ 0
+
+
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ 0
+ .dll;.bpl
+
+
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ 0
+ .bpl
+
+
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ Contents\Resources\StartUp\
+ 0
+
+
+ Contents\Resources\StartUp\
+ 0
+
+
+ 0
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\
+ 1
+
+
+ ..\
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+
+
+ ..\
+ 1
+
+
+ ..\
+ 1
+
+
+
+
+ Contents
+ 1
+
+
+ Contents
+ 1
+
+
+
+
+ Contents\Resources
+ 1
+
+
+ Contents\Resources
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ 0
+
+
+
+
+ 1
+
+
+ 1
+
+
+
+
+ Assets
+ 1
+
+
+ Assets
+ 1
+
+
+
+
+ Assets
+ 1
+
+
+ Assets
+ 1
+
+
+
+
+
+
+
+
+
+
+
+
+
+ True
+ False
+
+
+ 12
+
+
+
+
+
diff --git a/40_Project/YangMyungWhan/52Time_PROJECT/Source/Project8.dpr b/40_Project/YangMyungWhan/52Time_PROJECT/Source/Project8.dpr
new file mode 100644
index 0000000..adc76d7
--- /dev/null
+++ b/40_Project/YangMyungWhan/52Time_PROJECT/Source/Project8.dpr
@@ -0,0 +1,22 @@
+library Project8;
+
+{ Important note about DLL memory management: ShareMem must be the
+ first unit in your library's USES clause AND your project's (select
+ Project-View Source) USES clause if your DLL exports any procedures or
+ functions that pass strings as parameters or function results. This
+ applies to all strings passed to and from your DLL--even those that
+ are nested in records and classes. ShareMem is the interface unit to
+ the BORLNDMM.DLL shared memory manager, which must be deployed along
+ with your DLL. To avoid using BORLNDMM.DLL, pass string information
+ using PChar or ShortString parameters. }
+
+uses
+ System.SysUtils,
+ System.Classes,
+ Usplash in 'Usplash.pas' {SplashForm};
+
+{$R *.res}
+exports
+ Display_USplash;
+begin
+end.
diff --git a/40_Project/YangMyungWhan/52Time_PROJECT/Source/Project8.dproj b/40_Project/YangMyungWhan/52Time_PROJECT/Source/Project8.dproj
new file mode 100644
index 0000000..18fc212
--- /dev/null
+++ b/40_Project/YangMyungWhan/52Time_PROJECT/Source/Project8.dproj
@@ -0,0 +1,853 @@
+
+
+ {AD755DF0-FC73-4AAA-8EA0-61A65BD70001}
+ 18.7
+ VCL
+ Project8.dpr
+ True
+ Debug
+ Win32
+ 1
+ Library
+
+
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_1
+ true
+ true
+
+
+ true
+ Base
+ true
+
+
+ .\$(Platform)\$(Config)
+ .\$(Platform)\$(Config)
+ false
+ false
+ false
+ false
+ false
+ true
+ System;Xml;Data;Datasnap;Web;Soap;Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;$(DCC_Namespace)
+ Project8
+
+
+ RESTComponents;DataSnapServerMidas;emsclientfiredac;DataSnapFireDAC;FireDACADSDriver;DatasnapConnectorsFreePascal;FireDACMSSQLDriver;inetdb;emsedge;FireDACIBDriver;dbexpress;IndyCore;dsnap;DataSnapCommon;emsclient;FireDACCommon;RESTBackendComponents;DataSnapConnectors;soapserver;bindengine;FireDACOracleDriver;CloudService;FireDACMySQLDriver;FireDACCommonODBC;FireDACCommonDriver;DataSnapClient;inet;IndySystem;FireDACDb2Driver;FireDACInfxDriver;FireDAC;emshosting;FireDACSqliteDriver;FireDACPgDriver;FireDACASADriver;FireDACTDataDriver;soaprtl;DbxCommonDriver;DataSnapServer;xmlrtl;soapmidas;DataSnapNativeClient;rtl;emsserverresource;DbxClientDriver;CustomIPTransport;bindcomp;dbxcds;FireDACODBCDriver;DataSnapIndy10ServerTransport;dsnapxml;dbrtl;FireDACMongoDBDriver;IndyProtocols;$(DCC_UsePackage)
+
+
+ DBXSqliteDriver;RESTComponents;DataSnapServerMidas;DBXInterBaseDriver;emsclientfiredac;tethering;DataSnapFireDAC;FireDACMSSQLDriver;bindcompfmx;DBXOracleDriver;inetdb;FmxTeeUI;fmx;FireDACIBDriver;fmxdae;FireDACDBXDriver;dbexpress;IndyCore;dsnap;DataSnapCommon;emsclient;FireDACCommon;RESTBackendComponents;soapserver;bindengine;DBXMySQLDriver;FireDACOracleDriver;CloudService;FireDACMySQLDriver;DBXFirebirdDriver;FireDACCommonODBC;FireDACCommonDriver;DataSnapClient;inet;bindcompdbx;IndyIPCommon;IndyIPServer;IndySystem;fmxFireDAC;FireDAC;FireDACSqliteDriver;FireDACPgDriver;ibmonitor;FireDACASADriver;FireDACTDataDriver;FMXTee;soaprtl;DbxCommonDriver;ibxpress;DataSnapServer;xmlrtl;soapmidas;DataSnapNativeClient;fmxobj;ibxbindings;rtl;DbxClientDriver;FireDACDSDriver;DBXSybaseASADriver;CustomIPTransport;bindcomp;DBXInformixDriver;IndyIPClient;dbxcds;FireDACODBCDriver;DataSnapIndy10ServerTransport;dsnapxml;DataSnapProviderClient;dbrtl;inetdbxpress;FireDACMongoDBDriver;IndyProtocols;fmxase;$(DCC_UsePackage)
+
+
+ DBXSqliteDriver;RESTComponents;DataSnapServerMidas;DBXInterBaseDriver;emsclientfiredac;tethering;DataSnapFireDAC;FireDACMSSQLDriver;bindcompfmx;DBXOracleDriver;inetdb;FmxTeeUI;fmx;FireDACIBDriver;fmxdae;FireDACDBXDriver;dbexpress;IndyCore;dsnap;DataSnapCommon;emsclient;FireDACCommon;RESTBackendComponents;soapserver;bindengine;DBXMySQLDriver;FireDACOracleDriver;CloudService;FireDACMySQLDriver;DBXFirebirdDriver;FireDACCommonODBC;FireDACCommonDriver;DataSnapClient;inet;bindcompdbx;IndyIPCommon;IndyIPServer;IndySystem;fmxFireDAC;FireDAC;FireDACSqliteDriver;FireDACPgDriver;ibmonitor;FireDACASADriver;FireDACTDataDriver;FMXTee;soaprtl;DbxCommonDriver;ibxpress;DataSnapServer;xmlrtl;soapmidas;DataSnapNativeClient;fmxobj;ibxbindings;rtl;DbxClientDriver;FireDACDSDriver;DBXSybaseASADriver;CustomIPTransport;bindcomp;DBXInformixDriver;IndyIPClient;dbxcds;FireDACODBCDriver;DataSnapIndy10ServerTransport;dsnapxml;DataSnapProviderClient;dbrtl;inetdbxpress;FireDACMongoDBDriver;IndyProtocols;fmxase;$(DCC_UsePackage)
+
+
+ DBXSqliteDriver;RESTComponents;DataSnapServerMidas;DBXDb2Driver;DBXInterBaseDriver;vclactnband;vclFireDAC;emsclientfiredac;tethering;svnui;DataSnapFireDAC;FireDACADSDriver;DBXMSSQLDriver;DatasnapConnectorsFreePascal;FireDACMSSQLDriver;vcltouch;vcldb;bindcompfmx;svn;DBXOracleDriver;inetdb;FmxTeeUI;emsedge;fmx;FireDACIBDriver;fmxdae;vclib;FireDACDBXDriver;dbexpress;IndyCore;vclx;dsnap;DataSnapCommon;emsclient;FireDACCommon;RESTBackendComponents;DataSnapConnectors;VCLRESTComponents;soapserver;vclie;bindengine;DBXMySQLDriver;FireDACOracleDriver;CloudService;FireDACMySQLDriver;DBXFirebirdDriver;FireDACCommonODBC;FireDACCommonDriver;DataSnapClient;inet;bindcompdbx;IndyIPCommon;vcl;DBXSybaseASEDriver;IndyIPServer;IndySystem;FireDACDb2Driver;dsnapcon;FireDACMSAccDriver;fmxFireDAC;FireDACInfxDriver;vclimg;TeeDB;FireDAC;emshosting;FireDACSqliteDriver;FireDACPgDriver;ibmonitor;FireDACASADriver;DBXOdbcDriver;FireDACTDataDriver;FMXTee;soaprtl;DbxCommonDriver;ibxpress;Tee;DataSnapServer;xmlrtl;soapmidas;DataSnapNativeClient;fmxobj;vclwinx;ibxbindings;rtl;emsserverresource;DbxClientDriver;FireDACDSDriver;DBXSybaseASADriver;CustomIPTransport;vcldsnap;bindcomp;appanalytics;DBXInformixDriver;IndyIPClient;bindcompvcl;TeeUI;dbxcds;VclSmp;adortl;FireDACODBCDriver;DataSnapIndy10ServerTransport;dsnapxml;DataSnapProviderClient;dbrtl;inetdbxpress;FireDACMongoDBDriver;IndyProtocols;fmxase;$(DCC_UsePackage)
+ Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
+ Debug
+ true
+ CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=com.embarcadero.$(MSBuildProjectName);ProductName=$(MSBuildProjectName);ProductVersion=1.0.0.0;Comments=
+ 1033
+
+
+ DBXSqliteDriver;RESTComponents;DataSnapServerMidas;DBXDb2Driver;DBXInterBaseDriver;vclactnband;vclFireDAC;emsclientfiredac;tethering;DataSnapFireDAC;FireDACADSDriver;DBXMSSQLDriver;DatasnapConnectorsFreePascal;FireDACMSSQLDriver;vcltouch;vcldb;bindcompfmx;DBXOracleDriver;inetdb;FmxTeeUI;emsedge;fmx;FireDACIBDriver;fmxdae;vclib;FireDACDBXDriver;dbexpress;IndyCore;vclx;dsnap;DataSnapCommon;emsclient;FireDACCommon;RESTBackendComponents;DataSnapConnectors;VCLRESTComponents;soapserver;vclie;bindengine;DBXMySQLDriver;FireDACOracleDriver;CloudService;FireDACMySQLDriver;DBXFirebirdDriver;FireDACCommonODBC;FireDACCommonDriver;DataSnapClient;inet;bindcompdbx;IndyIPCommon;vcl;DBXSybaseASEDriver;IndyIPServer;IndySystem;FireDACDb2Driver;dsnapcon;FireDACMSAccDriver;fmxFireDAC;FireDACInfxDriver;vclimg;TeeDB;FireDAC;emshosting;FireDACSqliteDriver;FireDACPgDriver;ibmonitor;FireDACASADriver;DBXOdbcDriver;FireDACTDataDriver;FMXTee;soaprtl;DbxCommonDriver;ibxpress;Tee;DataSnapServer;xmlrtl;soapmidas;DataSnapNativeClient;fmxobj;vclwinx;ibxbindings;rtl;emsserverresource;DbxClientDriver;FireDACDSDriver;DBXSybaseASADriver;CustomIPTransport;vcldsnap;bindcomp;appanalytics;DBXInformixDriver;IndyIPClient;bindcompvcl;TeeUI;dbxcds;VclSmp;adortl;FireDACODBCDriver;DataSnapIndy10ServerTransport;dsnapxml;DataSnapProviderClient;dbrtl;inetdbxpress;FireDACMongoDBDriver;IndyProtocols;fmxase;$(DCC_UsePackage)
+
+
+ DEBUG;$(DCC_Define)
+ true
+ false
+ true
+ true
+ true
+
+
+ false
+
+
+ false
+ RELEASE;$(DCC_Define)
+ 0
+ 0
+
+
+
+ MainSource
+
+
+
+ dfm
+
+
+ Cfg_2
+ Base
+
+
+ Base
+
+
+ Cfg_1
+ Base
+
+
+
+ Delphi.Personality.12
+ Application
+
+
+
+ Project8.dpr
+
+
+
+
+
+ Project8.dll
+ true
+
+
+
+
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ 0
+
+
+
+
+ classes
+ 1
+
+
+
+
+ res\xml
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ library\lib\armeabi
+ 1
+
+
+
+
+ library\lib\mips
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ res\drawable
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+
+
+ res\values-v21
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+
+
+ res\drawable
+ 1
+
+
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+
+
+ res\drawable-ldpi
+ 1
+
+
+
+
+ res\drawable-mdpi
+ 1
+
+
+
+
+ res\drawable-hdpi
+ 1
+
+
+
+
+ res\drawable-xhdpi
+ 1
+
+
+
+
+ res\drawable-mdpi
+ 1
+
+
+
+
+ res\drawable-hdpi
+ 1
+
+
+
+
+ res\drawable-xhdpi
+ 1
+
+
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+
+
+ res\drawable-xxxhdpi
+ 1
+
+
+
+
+ res\drawable-small
+ 1
+
+
+
+
+ res\drawable-normal
+ 1
+
+
+
+
+ res\drawable-large
+ 1
+
+
+
+
+ res\drawable-xlarge
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+
+
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ 0
+
+
+
+
+ Contents\MacOS
+ 1
+ .framework
+
+
+ Contents\MacOS
+ 1
+ .framework
+
+
+ 0
+
+
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ 0
+ .dll;.bpl
+
+
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ 0
+ .bpl
+
+
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ Contents\Resources\StartUp\
+ 0
+
+
+ Contents\Resources\StartUp\
+ 0
+
+
+ 0
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\
+ 1
+
+
+ ..\
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+
+
+ ..\
+ 1
+
+
+ ..\
+ 1
+
+
+
+
+ Contents
+ 1
+
+
+ Contents
+ 1
+
+
+
+
+ Contents\Resources
+ 1
+
+
+ Contents\Resources
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ 0
+
+
+
+
+ 1
+
+
+ 1
+
+
+
+
+ Assets
+ 1
+
+
+ Assets
+ 1
+
+
+
+
+ Assets
+ 1
+
+
+ Assets
+ 1
+
+
+
+
+
+
+
+
+
+
+
+
+
+ False
+ False
+ False
+ True
+ False
+
+
+ 12
+
+
+
+
+
diff --git a/40_Project/YangMyungWhan/52Time_PROJECT/Source/Project8.res b/40_Project/YangMyungWhan/52Time_PROJECT/Source/Project8.res
new file mode 100644
index 0000000..b09f581
Binary files /dev/null and b/40_Project/YangMyungWhan/52Time_PROJECT/Source/Project8.res differ
diff --git a/40_Project/YangMyungWhan/52Time_PROJECT/Source/Project9.dpr b/40_Project/YangMyungWhan/52Time_PROJECT/Source/Project9.dpr
new file mode 100644
index 0000000..f80be92
--- /dev/null
+++ b/40_Project/YangMyungWhan/52Time_PROJECT/Source/Project9.dpr
@@ -0,0 +1,14 @@
+program Project9;
+
+uses
+ System.StartUpCopy,
+ FMX.Forms,
+ Mobile in 'Mobile.pas' {Form8};
+
+{$R *.res}
+
+begin
+ Application.Initialize;
+ Application.CreateForm(TForm8, Form8);
+ Application.Run;
+end.
diff --git a/40_Project/YangMyungWhan/52Time_PROJECT/Source/Project9.dproj b/40_Project/YangMyungWhan/52Time_PROJECT/Source/Project9.dproj
new file mode 100644
index 0000000..9a1dbb3
--- /dev/null
+++ b/40_Project/YangMyungWhan/52Time_PROJECT/Source/Project9.dproj
@@ -0,0 +1,1134 @@
+
+
+ {BFF6513F-473B-43B0-8FE0-3FBCEFC3CB6A}
+ 18.7
+ FMX
+ Project9.dpr
+ True
+ Debug
+ Win32
+ 5215
+ Application
+
+
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_1
+ true
+ true
+
+
+ true
+ Cfg_1
+ true
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_2
+ true
+ true
+
+
+ true
+ Cfg_2
+ true
+ true
+
+
+ .\$(Platform)\$(Config)
+ .\$(Platform)\$(Config)
+ false
+ false
+ false
+ false
+ false
+ System;Xml;Data;Datasnap;Web;Soap;$(DCC_Namespace)
+ true
+ true
+ true
+ true
+ true
+ true
+ true
+ true
+ $(BDS)\bin\delphi_PROJECTICON.ico
+ $(BDS)\bin\delphi_PROJECTICNS.icns
+ Project9
+
+
+ DBXSqliteDriver;RESTComponents;DBXInterBaseDriver;emsclientfiredac;tethering;DataSnapFireDAC;bindcompfmx;FmxTeeUI;fmx;FireDACIBDriver;FireDACDBXDriver;dbexpress;IndyCore;dsnap;DataSnapCommon;emsclient;FireDACCommon;RESTBackendComponents;soapserver;bindengine;CloudService;FireDACCommonDriver;DataSnapClient;inet;bindcompdbx;IndyIPCommon;IndyIPServer;IndySystem;fmxFireDAC;FireDAC;FireDACSqliteDriver;ibmonitor;FMXTee;soaprtl;DbxCommonDriver;ibxpress;xmlrtl;soapmidas;DataSnapNativeClient;ibxbindings;rtl;DbxClientDriver;FireDACDSDriver;CustomIPTransport;bindcomp;IndyIPClient;dbxcds;dsnapxml;DataSnapProviderClient;dbrtl;IndyProtocols;$(DCC_UsePackage)
+ package=com.embarcadero.$(MSBuildProjectName);label=$(MSBuildProjectName);versionCode=1;versionName=1.0.0;persistent=False;restoreAnyVersion=False;installLocation=auto;largeHeap=False;theme=TitleBar;hardwareAccelerated=true;apiKey=
+ Debug
+ true
+ $(BDS)\bin\Artwork\Android\FM_LauncherIcon_36x36.png
+ $(BDS)\bin\Artwork\Android\FM_LauncherIcon_48x48.png
+ $(BDS)\bin\Artwork\Android\FM_LauncherIcon_72x72.png
+ $(BDS)\bin\Artwork\Android\FM_LauncherIcon_96x96.png
+ $(BDS)\bin\Artwork\Android\FM_LauncherIcon_144x144.png
+ $(BDS)\bin\Artwork\Android\FM_SplashImage_426x320.png
+ $(BDS)\bin\Artwork\Android\FM_SplashImage_470x320.png
+ $(BDS)\bin\Artwork\Android\FM_SplashImage_640x480.png
+ $(BDS)\bin\Artwork\Android\FM_SplashImage_960x720.png
+ $(BDS)\bin\Artwork\Android\FM_NotificationIcon_24x24.png
+ $(BDS)\bin\Artwork\Android\FM_NotificationIcon_36x36.png
+ $(BDS)\bin\Artwork\Android\FM_NotificationIcon_48x48.png
+ $(BDS)\bin\Artwork\Android\FM_NotificationIcon_72x72.png
+ $(BDS)\bin\Artwork\Android\FM_NotificationIcon_96x96.png
+ android-support-v4.dex.jar;cloud-messaging.dex.jar;com-google-android-gms.play-services-ads-base.17.2.0.dex.jar;com-google-android-gms.play-services-ads-identifier.16.0.0.dex.jar;com-google-android-gms.play-services-ads-lite.17.2.0.dex.jar;com-google-android-gms.play-services-ads.17.2.0.dex.jar;com-google-android-gms.play-services-analytics-impl.16.0.8.dex.jar;com-google-android-gms.play-services-analytics.16.0.8.dex.jar;com-google-android-gms.play-services-base.16.0.1.dex.jar;com-google-android-gms.play-services-basement.16.2.0.dex.jar;com-google-android-gms.play-services-gass.17.2.0.dex.jar;com-google-android-gms.play-services-identity.16.0.0.dex.jar;com-google-android-gms.play-services-maps.16.1.0.dex.jar;com-google-android-gms.play-services-measurement-base.16.4.0.dex.jar;com-google-android-gms.play-services-measurement-sdk-api.16.4.0.dex.jar;com-google-android-gms.play-services-stats.16.0.1.dex.jar;com-google-android-gms.play-services-tagmanager-v4-impl.16.0.8.dex.jar;com-google-android-gms.play-services-tasks.16.0.1.dex.jar;com-google-android-gms.play-services-wallet.16.0.1.dex.jar;com-google-firebase.firebase-analytics.16.4.0.dex.jar;com-google-firebase.firebase-common.16.1.0.dex.jar;com-google-firebase.firebase-iid-interop.16.0.1.dex.jar;com-google-firebase.firebase-iid.17.1.1.dex.jar;com-google-firebase.firebase-measurement-connector.17.0.1.dex.jar;com-google-firebase.firebase-messaging.17.5.0.dex.jar;fmx.dex.jar;google-play-billing.dex.jar;google-play-licensing.dex.jar
+
+
+ DBXSqliteDriver;RESTComponents;DBXInterBaseDriver;emsclientfiredac;tethering;DataSnapFireDAC;bindcompfmx;FmxTeeUI;fmx;FireDACIBDriver;FireDACDBXDriver;dbexpress;IndyCore;dsnap;DataSnapCommon;emsclient;FireDACCommon;RESTBackendComponents;soapserver;bindengine;CloudService;FireDACCommonDriver;DataSnapClient;inet;bindcompdbx;IndyIPCommon;IndyIPServer;IndySystem;fmxFireDAC;FireDAC;FireDACSqliteDriver;ibmonitor;FMXTee;soaprtl;DbxCommonDriver;ibxpress;xmlrtl;soapmidas;DataSnapNativeClient;ibxbindings;rtl;DbxClientDriver;FireDACDSDriver;CustomIPTransport;bindcomp;IndyIPClient;dbxcds;dsnapxml;DataSnapProviderClient;dbrtl;IndyProtocols;fmxase;$(DCC_UsePackage)
+ CFBundleName=$(MSBuildProjectName);CFBundleDevelopmentRegion=en;CFBundleDisplayName=$(MSBuildProjectName);CFBundleIdentifier=$(MSBuildProjectName);CFBundleInfoDictionaryVersion=7.1;CFBundleVersion=1.0.0;CFBundleShortVersionString=1.0.0;CFBundlePackageType=APPL;CFBundleSignature=????;LSRequiresIPhoneOS=true;CFBundleAllowMixedLocalizations=YES;CFBundleExecutable=$(MSBuildProjectName);UIDeviceFamily=iPhone & iPad;CFBundleResourceSpecification=ResourceRules.plist;NSLocationAlwaysUsageDescription=The reason for accessing the location information of the user;NSLocationWhenInUseUsageDescription=The reason for accessing the location information of the user;NSLocationAlwaysAndWhenInUseUsageDescription=The reason for accessing the location information of the user;FMLocalNotificationPermission=false;UIBackgroundModes=;NSContactsUsageDescription=The reason for accessing the contacts;NSPhotoLibraryUsageDescription=The reason for accessing the photo library;NSPhotoLibraryAddUsageDescription=The reason for adding to the photo library;NSCameraUsageDescription=The reason for accessing the camera;NSFaceIDUsageDescription=The reason for accessing the face id;NSMicrophoneUsageDescription=The reason for accessing the microphone;NSSiriUsageDescription=The reason for accessing Siri;ITSAppUsesNonExemptEncryption=false
+ iPhoneAndiPad
+ true
+ Debug
+ $(MSBuildProjectName)
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_ApplicationIcon_57x57.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_ApplicationIcon_60x60.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_ApplicationIcon_87x87.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_ApplicationIcon_114x114.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_ApplicationIcon_120x120.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_ApplicationIcon_180x180.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_320x480.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_640x960.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_640x1136.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_750x1334.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_828x1792.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_1125x2436.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_1136x640.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_1242x2208.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_1242x2688.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_1334x750.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_1792x828.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_2208x1242.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_2436x1125.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_2688x1242.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_SpotlightSearchIcon_29x29.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_SpotlightSearchIcon_40x40.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_SpotlightSearchIcon_58x58.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_SpotlightSearchIcon_80x80.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_SpotlightSearchIcon_120x120.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_ApplicationIcon_72x72.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_ApplicationIcon_76x76.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_ApplicationIcon_144x144.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_ApplicationIcon_152x152.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_ApplicationIcon_167x167.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImagePortrait_768x1004.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImagePortrait_768x1024.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImageLandscape_1024x748.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImageLandscape_1024x768.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImagePortrait_1536x2008.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImagePortrait_1536x2048.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImagePortrait_1668x2224.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImagePortrait_1668x2388.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImageLandscape_2048x1496.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImageLandscape_2048x1536.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImagePortrait_2048x2732.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImageLandscape_2224x1668.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImageLandscape_2388x1668.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImageLandscape_2732x2048.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_SpotlightSearchIcon_40x40.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_SpotlightSearchIcon_50x50.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_SpotlightSearchIcon_80x80.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_SpotlightSearchIcon_100x100.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_SettingIcon_29x29.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_SettingIcon_58x58.png
+
+
+ DBXSqliteDriver;RESTComponents;DBXInterBaseDriver;emsclientfiredac;tethering;DataSnapFireDAC;bindcompfmx;FmxTeeUI;fmx;FireDACIBDriver;FireDACDBXDriver;dbexpress;IndyCore;dsnap;DataSnapCommon;emsclient;FireDACCommon;RESTBackendComponents;soapserver;bindengine;CloudService;FireDACCommonDriver;DataSnapClient;inet;bindcompdbx;IndyIPCommon;IndyIPServer;IndySystem;fmxFireDAC;FireDAC;FireDACSqliteDriver;ibmonitor;FMXTee;soaprtl;DbxCommonDriver;ibxpress;xmlrtl;soapmidas;DataSnapNativeClient;ibxbindings;rtl;DbxClientDriver;FireDACDSDriver;CustomIPTransport;bindcomp;IndyIPClient;dbxcds;dsnapxml;DataSnapProviderClient;dbrtl;IndyProtocols;fmxase;$(DCC_UsePackage)
+ CFBundleName=$(MSBuildProjectName);CFBundleDevelopmentRegion=en;CFBundleDisplayName=$(MSBuildProjectName);CFBundleIdentifier=$(MSBuildProjectName);CFBundleInfoDictionaryVersion=7.1;CFBundleVersion=1.0.0;CFBundleShortVersionString=1.0.0;CFBundlePackageType=APPL;CFBundleSignature=????;LSRequiresIPhoneOS=true;CFBundleAllowMixedLocalizations=YES;CFBundleExecutable=$(MSBuildProjectName);UIDeviceFamily=iPhone & iPad;CFBundleResourceSpecification=ResourceRules.plist;NSLocationAlwaysUsageDescription=The reason for accessing the location information of the user;NSLocationWhenInUseUsageDescription=The reason for accessing the location information of the user;NSLocationAlwaysAndWhenInUseUsageDescription=The reason for accessing the location information of the user;FMLocalNotificationPermission=false;UIBackgroundModes=;NSContactsUsageDescription=The reason for accessing the contacts;NSPhotoLibraryUsageDescription=The reason for accessing the photo library;NSPhotoLibraryAddUsageDescription=The reason for adding to the photo library;NSCameraUsageDescription=The reason for accessing the camera;NSFaceIDUsageDescription=The reason for accessing the face id;NSMicrophoneUsageDescription=The reason for accessing the microphone;NSSiriUsageDescription=The reason for accessing Siri;ITSAppUsesNonExemptEncryption=false
+ iPhoneAndiPad
+ true
+ Debug
+ $(MSBuildProjectName)
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_ApplicationIcon_57x57.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_ApplicationIcon_60x60.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_ApplicationIcon_87x87.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_ApplicationIcon_114x114.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_ApplicationIcon_120x120.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_ApplicationIcon_180x180.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_320x480.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_640x960.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_640x1136.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_750x1334.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_828x1792.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_1125x2436.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_1136x640.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_1242x2208.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_1242x2688.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_1334x750.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_1792x828.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_2208x1242.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_2436x1125.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_2688x1242.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_SpotlightSearchIcon_29x29.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_SpotlightSearchIcon_40x40.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_SpotlightSearchIcon_58x58.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_SpotlightSearchIcon_80x80.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_SpotlightSearchIcon_120x120.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_ApplicationIcon_72x72.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_ApplicationIcon_76x76.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_ApplicationIcon_144x144.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_ApplicationIcon_152x152.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_ApplicationIcon_167x167.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImagePortrait_768x1004.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImagePortrait_768x1024.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImageLandscape_1024x748.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImageLandscape_1024x768.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImagePortrait_1536x2008.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImagePortrait_1536x2048.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImagePortrait_1668x2224.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImagePortrait_1668x2388.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImageLandscape_2048x1496.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImageLandscape_2048x1536.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImagePortrait_2048x2732.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImageLandscape_2224x1668.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImageLandscape_2388x1668.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImageLandscape_2732x2048.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_SpotlightSearchIcon_40x40.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_SpotlightSearchIcon_50x50.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_SpotlightSearchIcon_80x80.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_SpotlightSearchIcon_100x100.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_SettingIcon_29x29.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_SettingIcon_58x58.png
+
+
+ DBXSqliteDriver;RESTComponents;DBXInterBaseDriver;emsclientfiredac;tethering;DataSnapFireDAC;bindcompfmx;FmxTeeUI;fmx;FireDACIBDriver;FireDACDBXDriver;dbexpress;IndyCore;dsnap;DataSnapCommon;emsclient;FireDACCommon;RESTBackendComponents;soapserver;bindengine;CloudService;FireDACCommonDriver;DataSnapClient;inet;bindcompdbx;IndyIPCommon;IndyIPServer;IndySystem;fmxFireDAC;FireDAC;FireDACSqliteDriver;ibmonitor;FMXTee;soaprtl;DbxCommonDriver;ibxpress;xmlrtl;soapmidas;DataSnapNativeClient;ibxbindings;rtl;DbxClientDriver;FireDACDSDriver;CustomIPTransport;bindcomp;IndyIPClient;dbxcds;dsnapxml;DataSnapProviderClient;dbrtl;IndyProtocols;fmxase;$(DCC_UsePackage)
+ CFBundleName=$(MSBuildProjectName);CFBundleDevelopmentRegion=en;CFBundleDisplayName=$(MSBuildProjectName);CFBundleIdentifier=$(MSBuildProjectName);CFBundleInfoDictionaryVersion=7.1;CFBundleVersion=1.0.0;CFBundleShortVersionString=1.0.0;CFBundlePackageType=APPL;CFBundleSignature=????;LSRequiresIPhoneOS=true;CFBundleAllowMixedLocalizations=YES;CFBundleExecutable=$(MSBuildProjectName);UIDeviceFamily=iPhone & iPad;CFBundleResourceSpecification=ResourceRules.plist;NSLocationAlwaysUsageDescription=The reason for accessing the location information of the user;NSLocationWhenInUseUsageDescription=The reason for accessing the location information of the user;NSLocationAlwaysAndWhenInUseUsageDescription=The reason for accessing the location information of the user;FMLocalNotificationPermission=false;UIBackgroundModes=;NSContactsUsageDescription=The reason for accessing the contacts;NSPhotoLibraryUsageDescription=The reason for accessing the photo library;NSPhotoLibraryAddUsageDescription=The reason for adding to the photo library;NSCameraUsageDescription=The reason for accessing the camera;NSFaceIDUsageDescription=The reason for accessing the face id;NSMicrophoneUsageDescription=The reason for accessing the microphone;NSSiriUsageDescription=The reason for accessing Siri;ITSAppUsesNonExemptEncryption=false
+ iPhoneAndiPad
+ true
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_ApplicationIcon_57x57.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_ApplicationIcon_60x60.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_ApplicationIcon_87x87.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_ApplicationIcon_114x114.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_ApplicationIcon_120x120.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_ApplicationIcon_180x180.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_320x480.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_640x960.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_640x1136.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_750x1334.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_828x1792.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_1125x2436.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_1136x640.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_1242x2208.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_1242x2688.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_1334x750.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_1792x828.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_2208x1242.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_2436x1125.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_2688x1242.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_SpotlightSearchIcon_29x29.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_SpotlightSearchIcon_40x40.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_SpotlightSearchIcon_58x58.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_SpotlightSearchIcon_80x80.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_SpotlightSearchIcon_120x120.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_ApplicationIcon_72x72.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_ApplicationIcon_76x76.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_ApplicationIcon_144x144.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_ApplicationIcon_152x152.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_ApplicationIcon_167x167.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImagePortrait_768x1004.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImagePortrait_768x1024.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImageLandscape_1024x748.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImageLandscape_1024x768.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImagePortrait_1536x2008.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImagePortrait_1536x2048.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImagePortrait_1668x2224.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImagePortrait_1668x2388.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImageLandscape_2048x1496.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImageLandscape_2048x1536.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImagePortrait_2048x2732.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImageLandscape_2224x1668.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImageLandscape_2388x1668.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImageLandscape_2732x2048.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_SpotlightSearchIcon_40x40.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_SpotlightSearchIcon_50x50.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_SpotlightSearchIcon_80x80.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_SpotlightSearchIcon_100x100.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_SettingIcon_29x29.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_SettingIcon_58x58.png
+
+
+ DBXSqliteDriver;RESTComponents;DataSnapServerMidas;DBXInterBaseDriver;emsclientfiredac;tethering;DataSnapFireDAC;FireDACMSSQLDriver;bindcompfmx;DBXOracleDriver;inetdb;FmxTeeUI;fmx;FireDACIBDriver;fmxdae;FireDACDBXDriver;dbexpress;IndyCore;dsnap;DataSnapCommon;emsclient;FireDACCommon;RESTBackendComponents;soapserver;bindengine;DBXMySQLDriver;FireDACOracleDriver;CloudService;FireDACMySQLDriver;DBXFirebirdDriver;FireDACCommonODBC;FireDACCommonDriver;DataSnapClient;inet;bindcompdbx;IndyIPCommon;IndyIPServer;IndySystem;fmxFireDAC;FireDAC;FireDACSqliteDriver;FireDACPgDriver;ibmonitor;FireDACASADriver;FireDACTDataDriver;FMXTee;soaprtl;DbxCommonDriver;ibxpress;DataSnapServer;xmlrtl;soapmidas;DataSnapNativeClient;fmxobj;ibxbindings;rtl;DbxClientDriver;FireDACDSDriver;DBXSybaseASADriver;CustomIPTransport;bindcomp;DBXInformixDriver;IndyIPClient;dbxcds;FireDACODBCDriver;DataSnapIndy10ServerTransport;dsnapxml;DataSnapProviderClient;dbrtl;inetdbxpress;FireDACMongoDBDriver;IndyProtocols;fmxase;$(DCC_UsePackage)
+ CFBundleName=$(MSBuildProjectName);CFBundleDisplayName=$(MSBuildProjectName);CFBundleIdentifier=$(MSBuildProjectName);CFBundleVersion=1.0.0;CFBundleShortVersionString=1.0.0;CFBundlePackageType=APPL;CFBundleSignature=????;CFBundleAllowMixedLocalizations=YES;CFBundleExecutable=$(MSBuildProjectName);NSHighResolutionCapable=true;LSApplicationCategoryType=public.app-category.utilities;NSLocationUsageDescription=The reason for accessing the location information of the user;NSContactsUsageDescription=The reason for accessing the contacts
+ Debug
+ true
+
+
+ DBXSqliteDriver;RESTComponents;DataSnapServerMidas;DBXInterBaseDriver;emsclientfiredac;tethering;DataSnapFireDAC;FireDACMSSQLDriver;bindcompfmx;DBXOracleDriver;inetdb;FmxTeeUI;fmx;FireDACIBDriver;fmxdae;FireDACDBXDriver;dbexpress;IndyCore;dsnap;DataSnapCommon;emsclient;FireDACCommon;RESTBackendComponents;soapserver;bindengine;DBXMySQLDriver;FireDACOracleDriver;CloudService;FireDACMySQLDriver;DBXFirebirdDriver;FireDACCommonODBC;FireDACCommonDriver;DataSnapClient;inet;bindcompdbx;IndyIPCommon;IndyIPServer;IndySystem;fmxFireDAC;FireDAC;FireDACSqliteDriver;FireDACPgDriver;ibmonitor;FireDACASADriver;FireDACTDataDriver;FMXTee;soaprtl;DbxCommonDriver;ibxpress;DataSnapServer;xmlrtl;soapmidas;DataSnapNativeClient;fmxobj;ibxbindings;rtl;DbxClientDriver;FireDACDSDriver;DBXSybaseASADriver;CustomIPTransport;bindcomp;DBXInformixDriver;IndyIPClient;dbxcds;FireDACODBCDriver;DataSnapIndy10ServerTransport;dsnapxml;DataSnapProviderClient;dbrtl;inetdbxpress;FireDACMongoDBDriver;IndyProtocols;fmxase;$(DCC_UsePackage)
+ CFBundleName=$(MSBuildProjectName);CFBundleDisplayName=$(MSBuildProjectName);CFBundleIdentifier=$(MSBuildProjectName);CFBundleVersion=1.0.0;CFBundleShortVersionString=1.0.0;CFBundlePackageType=APPL;CFBundleSignature=????;CFBundleAllowMixedLocalizations=YES;CFBundleExecutable=$(MSBuildProjectName);NSHighResolutionCapable=true;LSApplicationCategoryType=public.app-category.utilities;NSLocationUsageDescription=The reason for accessing the location information of the user;NSContactsUsageDescription=The reason for accessing the contacts
+ Debug
+ true
+
+
+ DBXSqliteDriver;RESTComponents;DataSnapServerMidas;DBXDb2Driver;DBXInterBaseDriver;vclactnband;vclFireDAC;emsclientfiredac;tethering;svnui;DataSnapFireDAC;FireDACADSDriver;DBXMSSQLDriver;DatasnapConnectorsFreePascal;FireDACMSSQLDriver;vcltouch;vcldb;bindcompfmx;svn;DBXOracleDriver;inetdb;FmxTeeUI;emsedge;fmx;FireDACIBDriver;fmxdae;vclib;FireDACDBXDriver;dbexpress;IndyCore;vclx;dsnap;DataSnapCommon;emsclient;FireDACCommon;RESTBackendComponents;DataSnapConnectors;VCLRESTComponents;soapserver;vclie;bindengine;DBXMySQLDriver;FireDACOracleDriver;CloudService;FireDACMySQLDriver;DBXFirebirdDriver;FireDACCommonODBC;FireDACCommonDriver;DataSnapClient;inet;bindcompdbx;IndyIPCommon;vcl;DBXSybaseASEDriver;IndyIPServer;IndySystem;FireDACDb2Driver;dsnapcon;FireDACMSAccDriver;fmxFireDAC;FireDACInfxDriver;vclimg;TeeDB;FireDAC;emshosting;FireDACSqliteDriver;FireDACPgDriver;ibmonitor;FireDACASADriver;DBXOdbcDriver;FireDACTDataDriver;FMXTee;soaprtl;DbxCommonDriver;ibxpress;Tee;DataSnapServer;xmlrtl;soapmidas;DataSnapNativeClient;fmxobj;vclwinx;ibxbindings;rtl;emsserverresource;DbxClientDriver;FireDACDSDriver;DBXSybaseASADriver;CustomIPTransport;vcldsnap;bindcomp;appanalytics;DBXInformixDriver;IndyIPClient;bindcompvcl;TeeUI;dbxcds;VclSmp;adortl;FireDACODBCDriver;DataSnapIndy10ServerTransport;dsnapxml;DataSnapProviderClient;dbrtl;inetdbxpress;FireDACMongoDBDriver;IndyProtocols;fmxase;$(DCC_UsePackage)
+ Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
+ Debug
+ true
+ CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=com.embarcadero.$(MSBuildProjectName);ProductName=$(MSBuildProjectName);ProductVersion=1.0.0.0;Comments=
+ 1033
+ $(BDS)\bin\default_app.manifest
+ $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_44.png
+ $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_150.png
+
+
+ DBXSqliteDriver;RESTComponents;DataSnapServerMidas;DBXDb2Driver;DBXInterBaseDriver;vclactnband;vclFireDAC;emsclientfiredac;tethering;DataSnapFireDAC;FireDACADSDriver;DBXMSSQLDriver;DatasnapConnectorsFreePascal;FireDACMSSQLDriver;vcltouch;vcldb;bindcompfmx;DBXOracleDriver;inetdb;FmxTeeUI;emsedge;fmx;FireDACIBDriver;fmxdae;vclib;FireDACDBXDriver;dbexpress;IndyCore;vclx;dsnap;DataSnapCommon;emsclient;FireDACCommon;RESTBackendComponents;DataSnapConnectors;VCLRESTComponents;soapserver;vclie;bindengine;DBXMySQLDriver;FireDACOracleDriver;CloudService;FireDACMySQLDriver;DBXFirebirdDriver;FireDACCommonODBC;FireDACCommonDriver;DataSnapClient;inet;bindcompdbx;IndyIPCommon;vcl;DBXSybaseASEDriver;IndyIPServer;IndySystem;FireDACDb2Driver;dsnapcon;FireDACMSAccDriver;fmxFireDAC;FireDACInfxDriver;vclimg;TeeDB;FireDAC;emshosting;FireDACSqliteDriver;FireDACPgDriver;ibmonitor;FireDACASADriver;DBXOdbcDriver;FireDACTDataDriver;FMXTee;soaprtl;DbxCommonDriver;ibxpress;Tee;DataSnapServer;xmlrtl;soapmidas;DataSnapNativeClient;fmxobj;vclwinx;ibxbindings;rtl;emsserverresource;DbxClientDriver;FireDACDSDriver;DBXSybaseASADriver;CustomIPTransport;vcldsnap;bindcomp;appanalytics;DBXInformixDriver;IndyIPClient;bindcompvcl;TeeUI;dbxcds;VclSmp;adortl;FireDACODBCDriver;DataSnapIndy10ServerTransport;dsnapxml;DataSnapProviderClient;dbrtl;inetdbxpress;FireDACMongoDBDriver;IndyProtocols;fmxase;$(DCC_UsePackage)
+ Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;$(DCC_Namespace)
+ Debug
+ true
+ CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=com.embarcadero.$(MSBuildProjectName);ProductName=$(MSBuildProjectName);ProductVersion=1.0.0.0;Comments=
+ 1033
+ $(BDS)\bin\default_app.manifest
+ $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_44.png
+ $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_150.png
+
+
+ DEBUG;$(DCC_Define)
+ true
+ false
+ true
+ true
+ true
+
+
+ false
+ true
+ PerMonitorV2
+
+
+ true
+ PerMonitorV2
+
+
+ false
+ RELEASE;$(DCC_Define)
+ 0
+ 0
+
+
+ true
+ PerMonitorV2
+
+
+ true
+ PerMonitorV2
+
+
+
+ MainSource
+
+
+
+ fmx
+
+
+ Cfg_2
+ Base
+
+
+ Base
+
+
+ Cfg_1
+ Base
+
+
+
+ Delphi.Personality.12
+ Application
+
+
+
+ Project9.dpr
+
+
+
+
+
+ true
+
+
+
+
+ true
+
+
+
+
+ true
+
+
+
+
+ Project9.exe
+ true
+
+
+
+
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ 0
+
+
+
+
+ classes
+ 1
+
+
+
+
+ res\xml
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ library\lib\armeabi
+ 1
+
+
+
+
+ library\lib\mips
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ res\drawable
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+
+
+ res\values-v21
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+
+
+ res\drawable
+ 1
+
+
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+
+
+ res\drawable-ldpi
+ 1
+
+
+
+
+ res\drawable-mdpi
+ 1
+
+
+
+
+ res\drawable-hdpi
+ 1
+
+
+
+
+ res\drawable-xhdpi
+ 1
+
+
+
+
+ res\drawable-mdpi
+ 1
+
+
+
+
+ res\drawable-hdpi
+ 1
+
+
+
+
+ res\drawable-xhdpi
+ 1
+
+
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+
+
+ res\drawable-xxxhdpi
+ 1
+
+
+
+
+ res\drawable-small
+ 1
+
+
+
+
+ res\drawable-normal
+ 1
+
+
+
+
+ res\drawable-large
+ 1
+
+
+
+
+ res\drawable-xlarge
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+
+
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ 0
+
+
+
+
+ Contents\MacOS
+ 1
+ .framework
+
+
+ Contents\MacOS
+ 1
+ .framework
+
+
+ 0
+
+
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ 0
+ .dll;.bpl
+
+
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ 0
+ .bpl
+
+
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ Contents\Resources\StartUp\
+ 0
+
+
+ Contents\Resources\StartUp\
+ 0
+
+
+ 0
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\
+ 1
+
+
+ ..\
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+
+
+ ..\
+ 1
+
+
+ ..\
+ 1
+
+
+
+
+ Contents
+ 1
+
+
+ Contents
+ 1
+
+
+
+
+ Contents\Resources
+ 1
+
+
+ Contents\Resources
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ 0
+
+
+
+
+ 1
+
+
+ 1
+
+
+
+
+ Assets
+ 1
+
+
+ Assets
+ 1
+
+
+
+
+ Assets
+ 1
+
+
+ Assets
+ 1
+
+
+
+
+
+
+
+
+
+
+
+
+
+ True
+ True
+ True
+ True
+ True
+ True
+ True
+ True
+
+
+ 12
+
+
+
+
+
diff --git a/40_Project/YangMyungWhan/52Time_PROJECT/Source/Project9.res b/40_Project/YangMyungWhan/52Time_PROJECT/Source/Project9.res
new file mode 100644
index 0000000..8356c62
Binary files /dev/null and b/40_Project/YangMyungWhan/52Time_PROJECT/Source/Project9.res differ
diff --git a/40_Project/YangMyungWhan/52Time_PROJECT/Source/ProjectGroup1.groupproj b/40_Project/YangMyungWhan/52Time_PROJECT/Source/ProjectGroup1.groupproj
new file mode 100644
index 0000000..1794426
--- /dev/null
+++ b/40_Project/YangMyungWhan/52Time_PROJECT/Source/ProjectGroup1.groupproj
@@ -0,0 +1,60 @@
+
+
+ {E56D181C-965C-46B7-A3EF-DF7CB0A06431}
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Default.Personality.12
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/40_Project/YangMyungWhan/52Time_PROJECT/Source/Project_52TIME.dpr b/40_Project/YangMyungWhan/52Time_PROJECT/Source/Project_52TIME.dpr
new file mode 100644
index 0000000..2891dd4
--- /dev/null
+++ b/40_Project/YangMyungWhan/52Time_PROJECT/Source/Project_52TIME.dpr
@@ -0,0 +1,36 @@
+program Project_52TIME;
+
+uses
+ Vcl.Forms,
+ Vcl.Controls,
+ MainForm in 'MainForm.pas' {frmMainForm},
+ DataAccessModule in 'DataAccessModule.pas' {dmDataAccess: TDataModule},
+ WorkerInformation in 'WorkerInformation.pas' {frmWorkerInformation},
+ CommonFunctions in 'CommonFunctions.pas',
+ Vcl.Themes,
+ Vcl.Styles,
+ TimeInsert in 'TimeInsert.pas' {frmTimeInsert},
+ Statistics in 'Statistics.pas' {frmStatisics},
+ DBFrame in 'DBFrame.pas' {frmDb},
+ LogIn in 'LogIn.pas' {frmLogin},
+ NewMember in 'NewMember.pas' {frmNewMember};
+ procedure Display_USplash; stdcall;
+ external 'Project8.dll';
+{$R *.res}
+
+begin
+ Application.Initialize;
+ Application.MainFormOnTaskbar := True;
+ TStyleManager.TrySetStyle('Iceberg Classico');
+ Application.CreateForm(TdmDataAccess, dmDataAccess);
+ // Application.CreateForm(TfrmLogin, frmLogin);
+// Application.CreateForm(TfrmMainForm, frmMainForm);
+// Application.Run;
+ frmLogin := TfrmLogin.Create(nil);
+ if frmLogin.ShowModal = mrOK then
+ begin
+ Application.CreateForm(TfrmMainForm, frmMainForm);
+ Application.Run;
+ end;
+
+end.
diff --git a/40_Project/YangMyungWhan/52Time_PROJECT/Source/Project_52TIME.dproj b/40_Project/YangMyungWhan/52Time_PROJECT/Source/Project_52TIME.dproj
new file mode 100644
index 0000000..c186654
--- /dev/null
+++ b/40_Project/YangMyungWhan/52Time_PROJECT/Source/Project_52TIME.dproj
@@ -0,0 +1,916 @@
+
+
+ {6AF79338-FBC7-4333-B951-0BE059D44CFF}
+ 18.7
+ VCL
+ Project_52TIME.dpr
+ True
+ Debug
+ Win32
+ 1
+ Application
+
+
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_1
+ true
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_2
+ true
+ true
+
+
+ .\$(Platform)\$(Config)
+ .\$(Platform)\$(Config)
+ false
+ false
+ false
+ false
+ false
+ System;Xml;Data;Datasnap;Web;Soap;Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;$(DCC_Namespace)
+ $(BDS)\bin\delphi_PROJECTICON.ico
+ $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_44.png
+ $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_150.png
+ Project_52TIME
+ Amakrits|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Amakrits.vsf;"Amethyst Kamri|VCLSTYLE|$(BDSCOMMONDIR)\Styles\AmethystKamri.vsf";"Aqua Graphite|VCLSTYLE|$(BDSCOMMONDIR)\Styles\AquaGraphite.vsf";"Aqua Light Slate|VCLSTYLE|$(BDSCOMMONDIR)\Styles\AquaLightSlate.vsf";Auric|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Auric.vsf;Carbon|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Carbon.vsf;"Charcoal Dark Slate|VCLSTYLE|$(BDSCOMMONDIR)\Styles\CharcoalDarkSlate.vsf";"Cobalt XEMedia|VCLSTYLE|$(BDSCOMMONDIR)\Styles\CobaltXEMedia.vsf";"Cyan Dusk|VCLSTYLE|$(BDSCOMMONDIR)\Styles\CyanDusk.vsf";"Cyan Night|VCLSTYLE|$(BDSCOMMONDIR)\Styles\CyanNight.vsf";"Emerald Light Slate|VCLSTYLE|$(BDSCOMMONDIR)\Styles\EmeraldLightSlate.vsf";Glossy|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Glossy.vsf;Glow|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Glow.vsf;"Golden Graphite|VCLSTYLE|$(BDSCOMMONDIR)\Styles\GoldenGraphite.vsf";"Iceberg Classico|VCLSTYLE|$(BDSCOMMONDIR)\Styles\IcebergClassico.vsf";"Lavender Classico|VCLSTYLE|$(BDSCOMMONDIR)\Styles\LavenderClassico.vsf";Light|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Light.vsf;Luna|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Luna.vsf;"Metropolis UI Black|VCLSTYLE|$(BDSCOMMONDIR)\Styles\MetropolisUIBlack.vsf";"Metropolis UI Blue|VCLSTYLE|$(BDSCOMMONDIR)\Styles\MetropolisUIBlue.vsf";"Metropolis UI Dark|VCLSTYLE|$(BDSCOMMONDIR)\Styles\MetropolisUIDark.vsf";"Metropolis UI Green|VCLSTYLE|$(BDSCOMMONDIR)\Styles\MetropolisUIGreen.vsf";Obsidian|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Obsidian.vsf;"Onyx Blue|VCLSTYLE|$(BDSCOMMONDIR)\Styles\OnyxBlue.vsf";"Ruby Graphite|VCLSTYLE|$(BDSCOMMONDIR)\Styles\RubyGraphite.vsf";"Sapphire Kamri|VCLSTYLE|$(BDSCOMMONDIR)\Styles\SapphireKamri.vsf";Silver|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Silver.vsf;Sky|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Sky.vsf;"Slate Classico|VCLSTYLE|$(BDSCOMMONDIR)\Styles\SlateClassico.vsf";"Smokey Quartz Kamri|VCLSTYLE|$(BDSCOMMONDIR)\Styles\SmokeyQuartzKamri.vsf";"Tablet Light|VCLSTYLE|$(BDSCOMMONDIR)\Styles\TabletLight.vsf";TabletDark|VCLSTYLE|$(BDSCOMMONDIR)\Styles\TabletDark.vsf;"Turquoise Gray|VCLSTYLE|$(BDSCOMMONDIR)\Styles\TurquoiseGray.vsf";Windows10|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Windows10.vsf;"Windows10 Blue|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Windows10Blue.vsf";"Windows10 Dark|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Windows10Dark.vsf";"Windows10 Green|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Windows10Green.vsf";"Windows10 Purple|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Windows10Purple.vsf";"Windows10 SlateGray|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Windows10SlateGray.vsf"
+
+
+ DBXSqliteDriver;RESTComponents;fmxase;DBXDb2Driver;DBXInterBaseDriver;vclactnband;vclFireDAC;emsclientfiredac;tethering;svnui;DataSnapFireDAC;FireDACADSDriver;DBXMSSQLDriver;DatasnapConnectorsFreePascal;FireDACMSSQLDriver;vcltouch;vcldb;bindcompfmx;svn;DBXOracleDriver;inetdb;FmxTeeUI;emsedge;fmx;FireDACIBDriver;fmxdae;vclib;office2K;FireDACDBXDriver;dbexpress;IndyCore;vclx;dsnap;emsclient;DataSnapCommon;FireDACCommon;RESTBackendComponents;DataSnapConnectors;VCLRESTComponents;soapserver;vclie;bindengine;DBXMySQLDriver;CloudService;FireDACOracleDriver;FireDACMySQLDriver;DBXFirebirdDriver;FireDACCommonODBC;FireDACCommonDriver;DataSnapClient;inet;IndyIPCommon;bindcompdbx;vcl;IndyIPServer;DBXSybaseASEDriver;IndySystem;FireDACDb2Driver;dsnapcon;FireDACMSAccDriver;fmxFireDAC;FireDACInfxDriver;vclimg;TeeDB;FireDAC;emshosting;FireDACSqliteDriver;FireDACPgDriver;ibmonitor;FireDACASADriver;DBXOdbcDriver;FireDACTDataDriver;FMXTee;soaprtl;DbxCommonDriver;ibxpress;Tee;DataSnapServer;xmlrtl;soapmidas;DataSnapNativeClient;fmxobj;vclwinx;FireDACDSDriver;rtl;emsserverresource;DbxClientDriver;ibxbindings;DBXSybaseASADriver;CustomIPTransport;vcldsnap;SampleListViewMultiDetailAppearancePackage;bindcomp;appanalytics;DBXInformixDriver;IndyIPClient;bindcompvcl;TeeUI;vclribbon;dbxcds;VclSmp;adortl;FireDACODBCDriver;DataSnapIndy10ServerTransport;dsnapxml;DataSnapProviderClient;dbrtl;IndyProtocols;inetdbxpress;FireDACMongoDBDriver;DataSnapServerMidas;$(DCC_UsePackage)
+ Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
+ Debug
+ true
+ CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=com.embarcadero.$(MSBuildProjectName);ProductName=$(MSBuildProjectName);ProductVersion=1.0.0.0;Comments=
+ 1033
+ $(BDS)\bin\default_app.manifest
+
+
+ DBXSqliteDriver;RESTComponents;fmxase;DBXDb2Driver;DBXInterBaseDriver;vclactnband;vclFireDAC;emsclientfiredac;tethering;DataSnapFireDAC;FireDACADSDriver;DBXMSSQLDriver;DatasnapConnectorsFreePascal;FireDACMSSQLDriver;vcltouch;vcldb;bindcompfmx;DBXOracleDriver;inetdb;FmxTeeUI;emsedge;fmx;FireDACIBDriver;fmxdae;vclib;office2K;FireDACDBXDriver;dbexpress;IndyCore;vclx;dsnap;emsclient;DataSnapCommon;FireDACCommon;RESTBackendComponents;DataSnapConnectors;VCLRESTComponents;soapserver;vclie;bindengine;DBXMySQLDriver;CloudService;FireDACOracleDriver;FireDACMySQLDriver;DBXFirebirdDriver;FireDACCommonODBC;FireDACCommonDriver;DataSnapClient;inet;IndyIPCommon;bindcompdbx;vcl;IndyIPServer;DBXSybaseASEDriver;IndySystem;FireDACDb2Driver;dsnapcon;FireDACMSAccDriver;fmxFireDAC;FireDACInfxDriver;vclimg;TeeDB;FireDAC;emshosting;FireDACSqliteDriver;FireDACPgDriver;ibmonitor;FireDACASADriver;DBXOdbcDriver;FireDACTDataDriver;FMXTee;soaprtl;DbxCommonDriver;ibxpress;Tee;DataSnapServer;xmlrtl;soapmidas;DataSnapNativeClient;fmxobj;vclwinx;FireDACDSDriver;rtl;emsserverresource;DbxClientDriver;ibxbindings;DBXSybaseASADriver;CustomIPTransport;vcldsnap;bindcomp;appanalytics;DBXInformixDriver;IndyIPClient;bindcompvcl;TeeUI;vclribbon;dbxcds;VclSmp;adortl;FireDACODBCDriver;DataSnapIndy10ServerTransport;dsnapxml;DataSnapProviderClient;dbrtl;IndyProtocols;inetdbxpress;FireDACMongoDBDriver;DataSnapServerMidas;$(DCC_UsePackage)
+
+
+ DEBUG;$(DCC_Define)
+ true
+ false
+ true
+ true
+ true
+
+
+ false
+ true
+ PerMonitorV2
+ true
+ 1033
+
+
+ false
+ RELEASE;$(DCC_Define)
+ 0
+ 0
+
+
+ true
+ PerMonitorV2
+
+
+
+ MainSource
+
+
+
+
+
+
+ TDataModule
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Cfg_2
+ Base
+
+
+ Base
+
+
+ Cfg_1
+ Base
+
+
+
+ Delphi.Personality.12
+ Application
+
+
+
+ Project_52TIME.dpr
+
+
+ Embarcadero C++Builder Office 2000 Servers Package
+ Embarcadero C++Builder Office XP Servers Package
+ Microsoft Office 2000 Sample Automation Server Wrapper Components
+ Microsoft Office XP Sample Automation Server Wrapper Components
+
+
+
+
+
+ Project_52TIME.exe
+ true
+
+
+
+
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ 0
+
+
+
+
+ classes
+ 1
+
+
+
+
+ res\xml
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ library\lib\armeabi
+ 1
+
+
+
+
+ library\lib\mips
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ res\drawable
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+
+
+ res\values-v21
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+
+
+ res\drawable
+ 1
+
+
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+
+
+ res\drawable-ldpi
+ 1
+
+
+
+
+ res\drawable-mdpi
+ 1
+
+
+
+
+ res\drawable-hdpi
+ 1
+
+
+
+
+ res\drawable-xhdpi
+ 1
+
+
+
+
+ res\drawable-mdpi
+ 1
+
+
+
+
+ res\drawable-hdpi
+ 1
+
+
+
+
+ res\drawable-xhdpi
+ 1
+
+
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+
+
+ res\drawable-xxxhdpi
+ 1
+
+
+
+
+ res\drawable-small
+ 1
+
+
+
+
+ res\drawable-normal
+ 1
+
+
+
+
+ res\drawable-large
+ 1
+
+
+
+
+ res\drawable-xlarge
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+
+
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ 0
+
+
+
+
+ Contents\MacOS
+ 1
+ .framework
+
+
+ Contents\MacOS
+ 1
+ .framework
+
+
+ 0
+
+
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ 0
+ .dll;.bpl
+
+
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ 0
+ .bpl
+
+
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ Contents\Resources\StartUp\
+ 0
+
+
+ Contents\Resources\StartUp\
+ 0
+
+
+ 0
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\
+ 1
+
+
+ ..\
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+
+
+ ..\
+ 1
+
+
+ ..\
+ 1
+
+
+
+
+ Contents
+ 1
+
+
+ Contents
+ 1
+
+
+
+
+ Contents\Resources
+ 1
+
+
+ Contents\Resources
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ 0
+
+
+
+
+ 1
+
+
+ 1
+
+
+
+
+ Assets
+ 1
+
+
+ Assets
+ 1
+
+
+
+
+ Assets
+ 1
+
+
+ Assets
+ 1
+
+
+
+
+
+
+
+
+
+
+
+
+
+ True
+ False
+
+
+ 12
+
+
+
+
+
diff --git a/40_Project/YangMyungWhan/52Time_PROJECT/Source/Project_52TIME.res b/40_Project/YangMyungWhan/52Time_PROJECT/Source/Project_52TIME.res
new file mode 100644
index 0000000..cf84fee
Binary files /dev/null and b/40_Project/YangMyungWhan/52Time_PROJECT/Source/Project_52TIME.res differ
diff --git a/40_Project/YangMyungWhan/52Time_PROJECT/Source/Project_Mobile.dpr b/40_Project/YangMyungWhan/52Time_PROJECT/Source/Project_Mobile.dpr
new file mode 100644
index 0000000..b1ba171
--- /dev/null
+++ b/40_Project/YangMyungWhan/52Time_PROJECT/Source/Project_Mobile.dpr
@@ -0,0 +1,14 @@
+program Project_Mobile;
+
+uses
+ System.StartUpCopy,
+ FMX.Forms,
+ Mobile in 'Mobile.pas' {Form8};
+
+{$R *.res}
+
+begin
+ Application.Initialize;
+ Application.CreateForm(TForm8, Form8);
+ Application.Run;
+end.
diff --git a/40_Project/YangMyungWhan/52Time_PROJECT/Source/Project_Mobile.dproj b/40_Project/YangMyungWhan/52Time_PROJECT/Source/Project_Mobile.dproj
new file mode 100644
index 0000000..a143187
--- /dev/null
+++ b/40_Project/YangMyungWhan/52Time_PROJECT/Source/Project_Mobile.dproj
@@ -0,0 +1,1134 @@
+
+
+ {BFF6513F-473B-43B0-8FE0-3FBCEFC3CB6A}
+ 18.7
+ FMX
+ Project_Mobile.dpr
+ True
+ Debug
+ Win32
+ 5215
+ Application
+
+
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_1
+ true
+ true
+
+
+ true
+ Cfg_1
+ true
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_2
+ true
+ true
+
+
+ true
+ Cfg_2
+ true
+ true
+
+
+ .\$(Platform)\$(Config)
+ .\$(Platform)\$(Config)
+ false
+ false
+ false
+ false
+ false
+ System;Xml;Data;Datasnap;Web;Soap;$(DCC_Namespace)
+ true
+ true
+ true
+ true
+ true
+ true
+ true
+ true
+ $(BDS)\bin\delphi_PROJECTICON.ico
+ $(BDS)\bin\delphi_PROJECTICNS.icns
+ Project_Mobile
+
+
+ DBXSqliteDriver;RESTComponents;DBXInterBaseDriver;emsclientfiredac;tethering;DataSnapFireDAC;bindcompfmx;FmxTeeUI;fmx;FireDACIBDriver;FireDACDBXDriver;dbexpress;IndyCore;dsnap;DataSnapCommon;emsclient;FireDACCommon;RESTBackendComponents;soapserver;bindengine;CloudService;FireDACCommonDriver;DataSnapClient;inet;bindcompdbx;IndyIPCommon;IndyIPServer;IndySystem;fmxFireDAC;FireDAC;FireDACSqliteDriver;ibmonitor;FMXTee;soaprtl;DbxCommonDriver;ibxpress;xmlrtl;soapmidas;DataSnapNativeClient;ibxbindings;rtl;DbxClientDriver;FireDACDSDriver;CustomIPTransport;bindcomp;IndyIPClient;dbxcds;dsnapxml;DataSnapProviderClient;dbrtl;IndyProtocols;$(DCC_UsePackage)
+ package=com.embarcadero.$(MSBuildProjectName);label=$(MSBuildProjectName);versionCode=1;versionName=1.0.0;persistent=False;restoreAnyVersion=False;installLocation=auto;largeHeap=False;theme=TitleBar;hardwareAccelerated=true;apiKey=
+ Debug
+ true
+ $(BDS)\bin\Artwork\Android\FM_LauncherIcon_36x36.png
+ $(BDS)\bin\Artwork\Android\FM_LauncherIcon_48x48.png
+ $(BDS)\bin\Artwork\Android\FM_LauncherIcon_72x72.png
+ $(BDS)\bin\Artwork\Android\FM_LauncherIcon_96x96.png
+ $(BDS)\bin\Artwork\Android\FM_LauncherIcon_144x144.png
+ $(BDS)\bin\Artwork\Android\FM_SplashImage_426x320.png
+ $(BDS)\bin\Artwork\Android\FM_SplashImage_470x320.png
+ $(BDS)\bin\Artwork\Android\FM_SplashImage_640x480.png
+ $(BDS)\bin\Artwork\Android\FM_SplashImage_960x720.png
+ $(BDS)\bin\Artwork\Android\FM_NotificationIcon_24x24.png
+ $(BDS)\bin\Artwork\Android\FM_NotificationIcon_36x36.png
+ $(BDS)\bin\Artwork\Android\FM_NotificationIcon_48x48.png
+ $(BDS)\bin\Artwork\Android\FM_NotificationIcon_72x72.png
+ $(BDS)\bin\Artwork\Android\FM_NotificationIcon_96x96.png
+ android-support-v4.dex.jar;cloud-messaging.dex.jar;com-google-android-gms.play-services-ads-base.17.2.0.dex.jar;com-google-android-gms.play-services-ads-identifier.16.0.0.dex.jar;com-google-android-gms.play-services-ads-lite.17.2.0.dex.jar;com-google-android-gms.play-services-ads.17.2.0.dex.jar;com-google-android-gms.play-services-analytics-impl.16.0.8.dex.jar;com-google-android-gms.play-services-analytics.16.0.8.dex.jar;com-google-android-gms.play-services-base.16.0.1.dex.jar;com-google-android-gms.play-services-basement.16.2.0.dex.jar;com-google-android-gms.play-services-gass.17.2.0.dex.jar;com-google-android-gms.play-services-identity.16.0.0.dex.jar;com-google-android-gms.play-services-maps.16.1.0.dex.jar;com-google-android-gms.play-services-measurement-base.16.4.0.dex.jar;com-google-android-gms.play-services-measurement-sdk-api.16.4.0.dex.jar;com-google-android-gms.play-services-stats.16.0.1.dex.jar;com-google-android-gms.play-services-tagmanager-v4-impl.16.0.8.dex.jar;com-google-android-gms.play-services-tasks.16.0.1.dex.jar;com-google-android-gms.play-services-wallet.16.0.1.dex.jar;com-google-firebase.firebase-analytics.16.4.0.dex.jar;com-google-firebase.firebase-common.16.1.0.dex.jar;com-google-firebase.firebase-iid-interop.16.0.1.dex.jar;com-google-firebase.firebase-iid.17.1.1.dex.jar;com-google-firebase.firebase-measurement-connector.17.0.1.dex.jar;com-google-firebase.firebase-messaging.17.5.0.dex.jar;fmx.dex.jar;google-play-billing.dex.jar;google-play-licensing.dex.jar
+
+
+ DBXSqliteDriver;RESTComponents;DBXInterBaseDriver;emsclientfiredac;tethering;DataSnapFireDAC;bindcompfmx;FmxTeeUI;fmx;FireDACIBDriver;FireDACDBXDriver;dbexpress;IndyCore;dsnap;DataSnapCommon;emsclient;FireDACCommon;RESTBackendComponents;soapserver;bindengine;CloudService;FireDACCommonDriver;DataSnapClient;inet;bindcompdbx;IndyIPCommon;IndyIPServer;IndySystem;fmxFireDAC;FireDAC;FireDACSqliteDriver;ibmonitor;FMXTee;soaprtl;DbxCommonDriver;ibxpress;xmlrtl;soapmidas;DataSnapNativeClient;ibxbindings;rtl;DbxClientDriver;FireDACDSDriver;CustomIPTransport;bindcomp;IndyIPClient;dbxcds;dsnapxml;DataSnapProviderClient;dbrtl;IndyProtocols;fmxase;$(DCC_UsePackage)
+ CFBundleName=$(MSBuildProjectName);CFBundleDevelopmentRegion=en;CFBundleDisplayName=$(MSBuildProjectName);CFBundleIdentifier=$(MSBuildProjectName);CFBundleInfoDictionaryVersion=7.1;CFBundleVersion=1.0.0;CFBundleShortVersionString=1.0.0;CFBundlePackageType=APPL;CFBundleSignature=????;LSRequiresIPhoneOS=true;CFBundleAllowMixedLocalizations=YES;CFBundleExecutable=$(MSBuildProjectName);UIDeviceFamily=iPhone & iPad;CFBundleResourceSpecification=ResourceRules.plist;NSLocationAlwaysUsageDescription=The reason for accessing the location information of the user;NSLocationWhenInUseUsageDescription=The reason for accessing the location information of the user;NSLocationAlwaysAndWhenInUseUsageDescription=The reason for accessing the location information of the user;FMLocalNotificationPermission=false;UIBackgroundModes=;NSContactsUsageDescription=The reason for accessing the contacts;NSPhotoLibraryUsageDescription=The reason for accessing the photo library;NSPhotoLibraryAddUsageDescription=The reason for adding to the photo library;NSCameraUsageDescription=The reason for accessing the camera;NSFaceIDUsageDescription=The reason for accessing the face id;NSMicrophoneUsageDescription=The reason for accessing the microphone;NSSiriUsageDescription=The reason for accessing Siri;ITSAppUsesNonExemptEncryption=false
+ iPhoneAndiPad
+ true
+ Debug
+ $(MSBuildProjectName)
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_ApplicationIcon_57x57.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_ApplicationIcon_60x60.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_ApplicationIcon_87x87.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_ApplicationIcon_114x114.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_ApplicationIcon_120x120.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_ApplicationIcon_180x180.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_320x480.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_640x960.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_640x1136.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_750x1334.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_828x1792.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_1125x2436.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_1136x640.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_1242x2208.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_1242x2688.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_1334x750.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_1792x828.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_2208x1242.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_2436x1125.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_2688x1242.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_SpotlightSearchIcon_29x29.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_SpotlightSearchIcon_40x40.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_SpotlightSearchIcon_58x58.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_SpotlightSearchIcon_80x80.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_SpotlightSearchIcon_120x120.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_ApplicationIcon_72x72.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_ApplicationIcon_76x76.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_ApplicationIcon_144x144.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_ApplicationIcon_152x152.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_ApplicationIcon_167x167.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImagePortrait_768x1004.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImagePortrait_768x1024.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImageLandscape_1024x748.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImageLandscape_1024x768.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImagePortrait_1536x2008.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImagePortrait_1536x2048.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImagePortrait_1668x2224.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImagePortrait_1668x2388.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImageLandscape_2048x1496.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImageLandscape_2048x1536.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImagePortrait_2048x2732.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImageLandscape_2224x1668.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImageLandscape_2388x1668.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImageLandscape_2732x2048.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_SpotlightSearchIcon_40x40.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_SpotlightSearchIcon_50x50.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_SpotlightSearchIcon_80x80.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_SpotlightSearchIcon_100x100.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_SettingIcon_29x29.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_SettingIcon_58x58.png
+
+
+ DBXSqliteDriver;RESTComponents;DBXInterBaseDriver;emsclientfiredac;tethering;DataSnapFireDAC;bindcompfmx;FmxTeeUI;fmx;FireDACIBDriver;FireDACDBXDriver;dbexpress;IndyCore;dsnap;DataSnapCommon;emsclient;FireDACCommon;RESTBackendComponents;soapserver;bindengine;CloudService;FireDACCommonDriver;DataSnapClient;inet;bindcompdbx;IndyIPCommon;IndyIPServer;IndySystem;fmxFireDAC;FireDAC;FireDACSqliteDriver;ibmonitor;FMXTee;soaprtl;DbxCommonDriver;ibxpress;xmlrtl;soapmidas;DataSnapNativeClient;ibxbindings;rtl;DbxClientDriver;FireDACDSDriver;CustomIPTransport;bindcomp;IndyIPClient;dbxcds;dsnapxml;DataSnapProviderClient;dbrtl;IndyProtocols;fmxase;$(DCC_UsePackage)
+ CFBundleName=$(MSBuildProjectName);CFBundleDevelopmentRegion=en;CFBundleDisplayName=$(MSBuildProjectName);CFBundleIdentifier=$(MSBuildProjectName);CFBundleInfoDictionaryVersion=7.1;CFBundleVersion=1.0.0;CFBundleShortVersionString=1.0.0;CFBundlePackageType=APPL;CFBundleSignature=????;LSRequiresIPhoneOS=true;CFBundleAllowMixedLocalizations=YES;CFBundleExecutable=$(MSBuildProjectName);UIDeviceFamily=iPhone & iPad;CFBundleResourceSpecification=ResourceRules.plist;NSLocationAlwaysUsageDescription=The reason for accessing the location information of the user;NSLocationWhenInUseUsageDescription=The reason for accessing the location information of the user;NSLocationAlwaysAndWhenInUseUsageDescription=The reason for accessing the location information of the user;FMLocalNotificationPermission=false;UIBackgroundModes=;NSContactsUsageDescription=The reason for accessing the contacts;NSPhotoLibraryUsageDescription=The reason for accessing the photo library;NSPhotoLibraryAddUsageDescription=The reason for adding to the photo library;NSCameraUsageDescription=The reason for accessing the camera;NSFaceIDUsageDescription=The reason for accessing the face id;NSMicrophoneUsageDescription=The reason for accessing the microphone;NSSiriUsageDescription=The reason for accessing Siri;ITSAppUsesNonExemptEncryption=false
+ iPhoneAndiPad
+ true
+ Debug
+ $(MSBuildProjectName)
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_ApplicationIcon_57x57.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_ApplicationIcon_60x60.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_ApplicationIcon_87x87.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_ApplicationIcon_114x114.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_ApplicationIcon_120x120.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_ApplicationIcon_180x180.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_320x480.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_640x960.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_640x1136.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_750x1334.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_828x1792.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_1125x2436.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_1136x640.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_1242x2208.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_1242x2688.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_1334x750.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_1792x828.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_2208x1242.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_2436x1125.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_2688x1242.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_SpotlightSearchIcon_29x29.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_SpotlightSearchIcon_40x40.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_SpotlightSearchIcon_58x58.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_SpotlightSearchIcon_80x80.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_SpotlightSearchIcon_120x120.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_ApplicationIcon_72x72.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_ApplicationIcon_76x76.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_ApplicationIcon_144x144.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_ApplicationIcon_152x152.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_ApplicationIcon_167x167.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImagePortrait_768x1004.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImagePortrait_768x1024.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImageLandscape_1024x748.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImageLandscape_1024x768.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImagePortrait_1536x2008.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImagePortrait_1536x2048.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImagePortrait_1668x2224.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImagePortrait_1668x2388.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImageLandscape_2048x1496.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImageLandscape_2048x1536.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImagePortrait_2048x2732.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImageLandscape_2224x1668.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImageLandscape_2388x1668.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImageLandscape_2732x2048.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_SpotlightSearchIcon_40x40.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_SpotlightSearchIcon_50x50.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_SpotlightSearchIcon_80x80.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_SpotlightSearchIcon_100x100.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_SettingIcon_29x29.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_SettingIcon_58x58.png
+
+
+ DBXSqliteDriver;RESTComponents;DBXInterBaseDriver;emsclientfiredac;tethering;DataSnapFireDAC;bindcompfmx;FmxTeeUI;fmx;FireDACIBDriver;FireDACDBXDriver;dbexpress;IndyCore;dsnap;DataSnapCommon;emsclient;FireDACCommon;RESTBackendComponents;soapserver;bindengine;CloudService;FireDACCommonDriver;DataSnapClient;inet;bindcompdbx;IndyIPCommon;IndyIPServer;IndySystem;fmxFireDAC;FireDAC;FireDACSqliteDriver;ibmonitor;FMXTee;soaprtl;DbxCommonDriver;ibxpress;xmlrtl;soapmidas;DataSnapNativeClient;ibxbindings;rtl;DbxClientDriver;FireDACDSDriver;CustomIPTransport;bindcomp;IndyIPClient;dbxcds;dsnapxml;DataSnapProviderClient;dbrtl;IndyProtocols;fmxase;$(DCC_UsePackage)
+ CFBundleName=$(MSBuildProjectName);CFBundleDevelopmentRegion=en;CFBundleDisplayName=$(MSBuildProjectName);CFBundleIdentifier=$(MSBuildProjectName);CFBundleInfoDictionaryVersion=7.1;CFBundleVersion=1.0.0;CFBundleShortVersionString=1.0.0;CFBundlePackageType=APPL;CFBundleSignature=????;LSRequiresIPhoneOS=true;CFBundleAllowMixedLocalizations=YES;CFBundleExecutable=$(MSBuildProjectName);UIDeviceFamily=iPhone & iPad;CFBundleResourceSpecification=ResourceRules.plist;NSLocationAlwaysUsageDescription=The reason for accessing the location information of the user;NSLocationWhenInUseUsageDescription=The reason for accessing the location information of the user;NSLocationAlwaysAndWhenInUseUsageDescription=The reason for accessing the location information of the user;FMLocalNotificationPermission=false;UIBackgroundModes=;NSContactsUsageDescription=The reason for accessing the contacts;NSPhotoLibraryUsageDescription=The reason for accessing the photo library;NSPhotoLibraryAddUsageDescription=The reason for adding to the photo library;NSCameraUsageDescription=The reason for accessing the camera;NSFaceIDUsageDescription=The reason for accessing the face id;NSMicrophoneUsageDescription=The reason for accessing the microphone;NSSiriUsageDescription=The reason for accessing Siri;ITSAppUsesNonExemptEncryption=false
+ iPhoneAndiPad
+ true
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_ApplicationIcon_57x57.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_ApplicationIcon_60x60.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_ApplicationIcon_87x87.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_ApplicationIcon_114x114.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_ApplicationIcon_120x120.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_ApplicationIcon_180x180.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_320x480.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_640x960.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_640x1136.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_750x1334.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_828x1792.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_1125x2436.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_1136x640.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_1242x2208.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_1242x2688.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_1334x750.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_1792x828.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_2208x1242.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_2436x1125.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_LaunchImage_2688x1242.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_SpotlightSearchIcon_29x29.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_SpotlightSearchIcon_40x40.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_SpotlightSearchIcon_58x58.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_SpotlightSearchIcon_80x80.png
+ $(BDS)\bin\Artwork\iOS\iPhone\FM_SpotlightSearchIcon_120x120.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_ApplicationIcon_72x72.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_ApplicationIcon_76x76.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_ApplicationIcon_144x144.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_ApplicationIcon_152x152.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_ApplicationIcon_167x167.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImagePortrait_768x1004.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImagePortrait_768x1024.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImageLandscape_1024x748.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImageLandscape_1024x768.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImagePortrait_1536x2008.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImagePortrait_1536x2048.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImagePortrait_1668x2224.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImagePortrait_1668x2388.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImageLandscape_2048x1496.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImageLandscape_2048x1536.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImagePortrait_2048x2732.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImageLandscape_2224x1668.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImageLandscape_2388x1668.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_LaunchImageLandscape_2732x2048.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_SpotlightSearchIcon_40x40.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_SpotlightSearchIcon_50x50.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_SpotlightSearchIcon_80x80.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_SpotlightSearchIcon_100x100.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_SettingIcon_29x29.png
+ $(BDS)\bin\Artwork\iOS\iPad\FM_SettingIcon_58x58.png
+
+
+ DBXSqliteDriver;RESTComponents;DataSnapServerMidas;DBXInterBaseDriver;emsclientfiredac;tethering;DataSnapFireDAC;FireDACMSSQLDriver;bindcompfmx;DBXOracleDriver;inetdb;FmxTeeUI;fmx;FireDACIBDriver;fmxdae;FireDACDBXDriver;dbexpress;IndyCore;dsnap;DataSnapCommon;emsclient;FireDACCommon;RESTBackendComponents;soapserver;bindengine;DBXMySQLDriver;FireDACOracleDriver;CloudService;FireDACMySQLDriver;DBXFirebirdDriver;FireDACCommonODBC;FireDACCommonDriver;DataSnapClient;inet;bindcompdbx;IndyIPCommon;IndyIPServer;IndySystem;fmxFireDAC;FireDAC;FireDACSqliteDriver;FireDACPgDriver;ibmonitor;FireDACASADriver;FireDACTDataDriver;FMXTee;soaprtl;DbxCommonDriver;ibxpress;DataSnapServer;xmlrtl;soapmidas;DataSnapNativeClient;fmxobj;ibxbindings;rtl;DbxClientDriver;FireDACDSDriver;DBXSybaseASADriver;CustomIPTransport;bindcomp;DBXInformixDriver;IndyIPClient;dbxcds;FireDACODBCDriver;DataSnapIndy10ServerTransport;dsnapxml;DataSnapProviderClient;dbrtl;inetdbxpress;FireDACMongoDBDriver;IndyProtocols;fmxase;$(DCC_UsePackage)
+ CFBundleName=$(MSBuildProjectName);CFBundleDisplayName=$(MSBuildProjectName);CFBundleIdentifier=$(MSBuildProjectName);CFBundleVersion=1.0.0;CFBundleShortVersionString=1.0.0;CFBundlePackageType=APPL;CFBundleSignature=????;CFBundleAllowMixedLocalizations=YES;CFBundleExecutable=$(MSBuildProjectName);NSHighResolutionCapable=true;LSApplicationCategoryType=public.app-category.utilities;NSLocationUsageDescription=The reason for accessing the location information of the user;NSContactsUsageDescription=The reason for accessing the contacts
+ Debug
+ true
+
+
+ DBXSqliteDriver;RESTComponents;DataSnapServerMidas;DBXInterBaseDriver;emsclientfiredac;tethering;DataSnapFireDAC;FireDACMSSQLDriver;bindcompfmx;DBXOracleDriver;inetdb;FmxTeeUI;fmx;FireDACIBDriver;fmxdae;FireDACDBXDriver;dbexpress;IndyCore;dsnap;DataSnapCommon;emsclient;FireDACCommon;RESTBackendComponents;soapserver;bindengine;DBXMySQLDriver;FireDACOracleDriver;CloudService;FireDACMySQLDriver;DBXFirebirdDriver;FireDACCommonODBC;FireDACCommonDriver;DataSnapClient;inet;bindcompdbx;IndyIPCommon;IndyIPServer;IndySystem;fmxFireDAC;FireDAC;FireDACSqliteDriver;FireDACPgDriver;ibmonitor;FireDACASADriver;FireDACTDataDriver;FMXTee;soaprtl;DbxCommonDriver;ibxpress;DataSnapServer;xmlrtl;soapmidas;DataSnapNativeClient;fmxobj;ibxbindings;rtl;DbxClientDriver;FireDACDSDriver;DBXSybaseASADriver;CustomIPTransport;bindcomp;DBXInformixDriver;IndyIPClient;dbxcds;FireDACODBCDriver;DataSnapIndy10ServerTransport;dsnapxml;DataSnapProviderClient;dbrtl;inetdbxpress;FireDACMongoDBDriver;IndyProtocols;fmxase;$(DCC_UsePackage)
+ CFBundleName=$(MSBuildProjectName);CFBundleDisplayName=$(MSBuildProjectName);CFBundleIdentifier=$(MSBuildProjectName);CFBundleVersion=1.0.0;CFBundleShortVersionString=1.0.0;CFBundlePackageType=APPL;CFBundleSignature=????;CFBundleAllowMixedLocalizations=YES;CFBundleExecutable=$(MSBuildProjectName);NSHighResolutionCapable=true;LSApplicationCategoryType=public.app-category.utilities;NSLocationUsageDescription=The reason for accessing the location information of the user;NSContactsUsageDescription=The reason for accessing the contacts
+ Debug
+ true
+
+
+ DBXSqliteDriver;RESTComponents;DataSnapServerMidas;DBXDb2Driver;DBXInterBaseDriver;vclactnband;vclFireDAC;emsclientfiredac;tethering;svnui;DataSnapFireDAC;FireDACADSDriver;DBXMSSQLDriver;DatasnapConnectorsFreePascal;FireDACMSSQLDriver;vcltouch;vcldb;bindcompfmx;svn;DBXOracleDriver;inetdb;FmxTeeUI;emsedge;fmx;FireDACIBDriver;fmxdae;vclib;FireDACDBXDriver;dbexpress;IndyCore;vclx;dsnap;DataSnapCommon;emsclient;FireDACCommon;RESTBackendComponents;DataSnapConnectors;VCLRESTComponents;soapserver;vclie;bindengine;DBXMySQLDriver;FireDACOracleDriver;CloudService;FireDACMySQLDriver;DBXFirebirdDriver;FireDACCommonODBC;FireDACCommonDriver;DataSnapClient;inet;bindcompdbx;IndyIPCommon;vcl;DBXSybaseASEDriver;IndyIPServer;IndySystem;FireDACDb2Driver;dsnapcon;FireDACMSAccDriver;fmxFireDAC;FireDACInfxDriver;vclimg;TeeDB;FireDAC;emshosting;FireDACSqliteDriver;FireDACPgDriver;ibmonitor;FireDACASADriver;DBXOdbcDriver;FireDACTDataDriver;FMXTee;soaprtl;DbxCommonDriver;ibxpress;Tee;DataSnapServer;xmlrtl;soapmidas;DataSnapNativeClient;fmxobj;vclwinx;ibxbindings;rtl;emsserverresource;DbxClientDriver;FireDACDSDriver;DBXSybaseASADriver;CustomIPTransport;vcldsnap;bindcomp;appanalytics;DBXInformixDriver;IndyIPClient;bindcompvcl;TeeUI;dbxcds;VclSmp;adortl;FireDACODBCDriver;DataSnapIndy10ServerTransport;dsnapxml;DataSnapProviderClient;dbrtl;inetdbxpress;FireDACMongoDBDriver;IndyProtocols;fmxase;$(DCC_UsePackage)
+ Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
+ Debug
+ true
+ CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=com.embarcadero.$(MSBuildProjectName);ProductName=$(MSBuildProjectName);ProductVersion=1.0.0.0;Comments=
+ 1033
+ $(BDS)\bin\default_app.manifest
+ $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_44.png
+ $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_150.png
+
+
+ DBXSqliteDriver;RESTComponents;DataSnapServerMidas;DBXDb2Driver;DBXInterBaseDriver;vclactnband;vclFireDAC;emsclientfiredac;tethering;DataSnapFireDAC;FireDACADSDriver;DBXMSSQLDriver;DatasnapConnectorsFreePascal;FireDACMSSQLDriver;vcltouch;vcldb;bindcompfmx;DBXOracleDriver;inetdb;FmxTeeUI;emsedge;fmx;FireDACIBDriver;fmxdae;vclib;FireDACDBXDriver;dbexpress;IndyCore;vclx;dsnap;DataSnapCommon;emsclient;FireDACCommon;RESTBackendComponents;DataSnapConnectors;VCLRESTComponents;soapserver;vclie;bindengine;DBXMySQLDriver;FireDACOracleDriver;CloudService;FireDACMySQLDriver;DBXFirebirdDriver;FireDACCommonODBC;FireDACCommonDriver;DataSnapClient;inet;bindcompdbx;IndyIPCommon;vcl;DBXSybaseASEDriver;IndyIPServer;IndySystem;FireDACDb2Driver;dsnapcon;FireDACMSAccDriver;fmxFireDAC;FireDACInfxDriver;vclimg;TeeDB;FireDAC;emshosting;FireDACSqliteDriver;FireDACPgDriver;ibmonitor;FireDACASADriver;DBXOdbcDriver;FireDACTDataDriver;FMXTee;soaprtl;DbxCommonDriver;ibxpress;Tee;DataSnapServer;xmlrtl;soapmidas;DataSnapNativeClient;fmxobj;vclwinx;ibxbindings;rtl;emsserverresource;DbxClientDriver;FireDACDSDriver;DBXSybaseASADriver;CustomIPTransport;vcldsnap;bindcomp;appanalytics;DBXInformixDriver;IndyIPClient;bindcompvcl;TeeUI;dbxcds;VclSmp;adortl;FireDACODBCDriver;DataSnapIndy10ServerTransport;dsnapxml;DataSnapProviderClient;dbrtl;inetdbxpress;FireDACMongoDBDriver;IndyProtocols;fmxase;$(DCC_UsePackage)
+ Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;$(DCC_Namespace)
+ Debug
+ true
+ CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=com.embarcadero.$(MSBuildProjectName);ProductName=$(MSBuildProjectName);ProductVersion=1.0.0.0;Comments=
+ 1033
+ $(BDS)\bin\default_app.manifest
+ $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_44.png
+ $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_150.png
+
+
+ DEBUG;$(DCC_Define)
+ true
+ false
+ true
+ true
+ true
+
+
+ false
+ true
+ PerMonitorV2
+
+
+ true
+ PerMonitorV2
+
+
+ false
+ RELEASE;$(DCC_Define)
+ 0
+ 0
+
+
+ true
+ PerMonitorV2
+
+
+ true
+ PerMonitorV2
+
+
+
+ MainSource
+
+
+
+ fmx
+
+
+ Cfg_2
+ Base
+
+
+ Base
+
+
+ Cfg_1
+ Base
+
+
+
+ Delphi.Personality.12
+ Application
+
+
+
+ Project_Mobile.dpr
+
+
+
+
+
+ true
+
+
+
+
+ true
+
+
+
+
+ true
+
+
+
+
+ Project_Mobile.exe
+ true
+
+
+
+
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ 0
+
+
+
+
+ classes
+ 1
+
+
+
+
+ res\xml
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ library\lib\armeabi
+ 1
+
+
+
+
+ library\lib\mips
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ res\drawable
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+
+
+ res\values-v21
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+
+
+ res\drawable
+ 1
+
+
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+
+
+ res\drawable-ldpi
+ 1
+
+
+
+
+ res\drawable-mdpi
+ 1
+
+
+
+
+ res\drawable-hdpi
+ 1
+
+
+
+
+ res\drawable-xhdpi
+ 1
+
+
+
+
+ res\drawable-mdpi
+ 1
+
+
+
+
+ res\drawable-hdpi
+ 1
+
+
+
+
+ res\drawable-xhdpi
+ 1
+
+
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+
+
+ res\drawable-xxxhdpi
+ 1
+
+
+
+
+ res\drawable-small
+ 1
+
+
+
+
+ res\drawable-normal
+ 1
+
+
+
+
+ res\drawable-large
+ 1
+
+
+
+
+ res\drawable-xlarge
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+
+
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ 0
+
+
+
+
+ Contents\MacOS
+ 1
+ .framework
+
+
+ Contents\MacOS
+ 1
+ .framework
+
+
+ 0
+
+
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ 0
+ .dll;.bpl
+
+
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ 0
+ .bpl
+
+
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ Contents\Resources\StartUp\
+ 0
+
+
+ Contents\Resources\StartUp\
+ 0
+
+
+ 0
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\
+ 1
+
+
+ ..\
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+
+
+ ..\
+ 1
+
+
+ ..\
+ 1
+
+
+
+
+ Contents
+ 1
+
+
+ Contents
+ 1
+
+
+
+
+ Contents\Resources
+ 1
+
+
+ Contents\Resources
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ 0
+
+
+
+
+ 1
+
+
+ 1
+
+
+
+
+ Assets
+ 1
+
+
+ Assets
+ 1
+
+
+
+
+ Assets
+ 1
+
+
+ Assets
+ 1
+
+
+
+
+
+
+
+
+
+
+
+
+
+ True
+ True
+ True
+ True
+ True
+ True
+ True
+ True
+
+
+ 12
+
+
+
+
+
diff --git a/40_Project/YangMyungWhan/52Time_PROJECT/Source/Project_Mobile.res b/40_Project/YangMyungWhan/52Time_PROJECT/Source/Project_Mobile.res
new file mode 100644
index 0000000..c967ca4
Binary files /dev/null and b/40_Project/YangMyungWhan/52Time_PROJECT/Source/Project_Mobile.res differ
diff --git a/40_Project/YangMyungWhan/52Time_PROJECT/Source/ServerContainerUnit1.dfm b/40_Project/YangMyungWhan/52Time_PROJECT/Source/ServerContainerUnit1.dfm
new file mode 100644
index 0000000..924fc89
--- /dev/null
+++ b/40_Project/YangMyungWhan/52Time_PROJECT/Source/ServerContainerUnit1.dfm
@@ -0,0 +1,21 @@
+object ServerContainer1: TServerContainer1
+ OldCreateOrder = False
+ Height = 271
+ Width = 415
+ object DSServer1: TDSServer
+ Left = 96
+ Top = 11
+ end
+ object DSTCPServerTransport1: TDSTCPServerTransport
+ Server = DSServer1
+ Filters = <>
+ Left = 96
+ Top = 73
+ end
+ object DSServerClass1: TDSServerClass
+ OnGetClass = DSServerClass1GetClass
+ Server = DSServer1
+ Left = 200
+ Top = 11
+ end
+end
diff --git a/40_Project/YangMyungWhan/52Time_PROJECT/Source/ServerContainerUnit1.pas b/40_Project/YangMyungWhan/52Time_PROJECT/Source/ServerContainerUnit1.pas
new file mode 100644
index 0000000..eb6c44d
--- /dev/null
+++ b/40_Project/YangMyungWhan/52Time_PROJECT/Source/ServerContainerUnit1.pas
@@ -0,0 +1,40 @@
+unit ServerContainerUnit1;
+
+interface
+
+uses System.SysUtils, System.Classes,
+ Datasnap.DSTCPServerTransport,
+ Datasnap.DSServer, Datasnap.DSCommonServer,
+ IPPeerServer, IPPeerAPI, Datasnap.DSAuth;
+
+type
+ TServerContainer1 = class(TDataModule)
+ DSServer1: TDSServer;
+ DSTCPServerTransport1: TDSTCPServerTransport;
+ DSServerClass1: TDSServerClass;
+ procedure DSServerClass1GetClass(DSServerClass: TDSServerClass;
+ var PersistentClass: TPersistentClass);
+ private
+ { Private declarations }
+ public
+ end;
+
+var
+ ServerContainer1: TServerContainer1;
+
+implementation
+
+
+{$R *.dfm}
+
+uses
+ ServerMethodsUnit1;
+
+procedure TServerContainer1.DSServerClass1GetClass(
+ DSServerClass: TDSServerClass; var PersistentClass: TPersistentClass);
+begin
+ PersistentClass := ServerMethodsUnit1.TServerMethods1;
+end;
+
+end.
+
diff --git a/40_Project/YangMyungWhan/52Time_PROJECT/Source/ServerMethodsUnit1.dfm b/40_Project/YangMyungWhan/52Time_PROJECT/Source/ServerMethodsUnit1.dfm
new file mode 100644
index 0000000..b1582bc
--- /dev/null
+++ b/40_Project/YangMyungWhan/52Time_PROJECT/Source/ServerMethodsUnit1.dfm
@@ -0,0 +1,5 @@
+object ServerMethods1: TServerMethods1
+ OldCreateOrder = False
+ Height = 150
+ Width = 215
+end
diff --git a/40_Project/YangMyungWhan/52Time_PROJECT/Source/ServerMethodsUnit1.pas b/40_Project/YangMyungWhan/52Time_PROJECT/Source/ServerMethodsUnit1.pas
new file mode 100644
index 0000000..18a7dd8
--- /dev/null
+++ b/40_Project/YangMyungWhan/52Time_PROJECT/Source/ServerMethodsUnit1.pas
@@ -0,0 +1,38 @@
+unit ServerMethodsUnit1;
+
+interface
+
+uses System.SysUtils, System.Classes, System.Json,
+ DataSnap.DSProviderDataModuleAdapter,
+ Datasnap.DSServer, Datasnap.DSAuth;
+
+type
+ TServerMethods1 = class(TDSServerModule)
+ private
+ { Private declarations }
+ public
+ { Public declarations }
+ function EchoString(Value: string): string;
+ function ReverseString(Value: string): string;
+ end;
+
+implementation
+
+
+{$R *.dfm}
+
+
+uses System.StrUtils;
+
+function TServerMethods1.EchoString(Value: string): string;
+begin
+ Result := Value;
+end;
+
+function TServerMethods1.ReverseString(Value: string): string;
+begin
+ Result := System.StrUtils.ReverseString(Value);
+end;
+
+end.
+
diff --git a/40_Project/YangMyungWhan/52Time_PROJECT/Source/Statistics.dfm b/40_Project/YangMyungWhan/52Time_PROJECT/Source/Statistics.dfm
new file mode 100644
index 0000000..d44534f
--- /dev/null
+++ b/40_Project/YangMyungWhan/52Time_PROJECT/Source/Statistics.dfm
@@ -0,0 +1,143 @@
+object frmStatisics: TfrmStatisics
+ Left = 0
+ Top = 0
+ Caption = 'frmStatisics'
+ ClientHeight = 530
+ ClientWidth = 857
+ Color = clBtnFace
+ Font.Charset = DEFAULT_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -11
+ Font.Name = 'Tahoma'
+ Font.Style = []
+ OldCreateOrder = False
+ PixelsPerInch = 96
+ TextHeight = 13
+ object pnlHead: TPanel
+ Left = 0
+ Top = 0
+ Width = 857
+ Height = 41
+ Align = alTop
+ TabOrder = 0
+ object Label1: TLabel
+ Left = 8
+ Top = 12
+ Width = 40
+ Height = 19
+ Caption = #53685#44228
+ Font.Charset = HANGEUL_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -19
+ Font.Name = 'HY'#49688#54217#49440'M'
+ Font.Style = [fsBold]
+ ParentFont = False
+ end
+ end
+ object pcStatistics: TPageControl
+ Left = 0
+ Top = 41
+ Width = 857
+ Height = 489
+ ActivePage = tsWorkState
+ Align = alClient
+ Font.Charset = ANSI_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -16
+ Font.Name = 'Arial Narrow'
+ Font.Style = []
+ ParentFont = False
+ TabOrder = 1
+ object tsWorkState: TTabSheet
+ Caption = #44540#47924#54788#54889
+ object Label2: TLabel
+ Left = 50
+ Top = 56
+ Width = 114
+ Height = 19
+ Caption = #45572#51201#44540#47924#49884#44036
+ Font.Charset = HANGEUL_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -19
+ Font.Name = 'HY'#49688#54217#49440'M'
+ Font.Style = []
+ ParentFont = False
+ end
+ object Label3: TLabel
+ Left = 324
+ Top = 56
+ Width = 114
+ Height = 19
+ Caption = #51092#50668#44540#47924#49884#44036
+ Font.Charset = HANGEUL_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -19
+ Font.Name = 'HY'#49688#54217#49440'M'
+ Font.Style = []
+ ParentFont = False
+ end
+ object Label4: TLabel
+ Left = 590
+ Top = 56
+ Width = 152
+ Height = 19
+ Caption = #45817#50900#44540#47924#44032#45733#49884#44036
+ Font.Charset = HANGEUL_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -19
+ Font.Name = 'HY'#49688#54217#49440'M'
+ Font.Style = []
+ ParentFont = False
+ end
+ object Label5: TLabel
+ Left = 50
+ Top = 224
+ Width = 223
+ Height = 19
+ Caption = #51092#50668#44540#47924#44032#45733#49884#44036'('#51068#54217#44512')'
+ Font.Charset = HANGEUL_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -19
+ Font.Name = 'HY'#49688#54217#49440'M'
+ Font.Style = []
+ ParentFont = False
+ end
+ object Edit1: TEdit
+ Left = 50
+ Top = 96
+ Width = 121
+ Height = 28
+ TabOrder = 0
+ end
+ object Edit2: TEdit
+ Left = 324
+ Top = 96
+ Width = 121
+ Height = 28
+ TabOrder = 1
+ end
+ object Edit3: TEdit
+ Left = 590
+ Top = 96
+ Width = 121
+ Height = 28
+ TabOrder = 2
+ end
+ object Edit4: TEdit
+ Left = 50
+ Top = 264
+ Width = 121
+ Height = 28
+ TabOrder = 3
+ end
+ end
+ object tsWorkHistory: TTabSheet
+ Caption = #44540#47924#51060#47141
+ ImageIndex = 1
+ end
+ object tsEtc: TTabSheet
+ Caption = #44592#53440
+ ImageIndex = 2
+ end
+ end
+end
diff --git a/40_Project/YangMyungWhan/52Time_PROJECT/Source/Statistics.pas b/40_Project/YangMyungWhan/52Time_PROJECT/Source/Statistics.pas
new file mode 100644
index 0000000..347f90b
--- /dev/null
+++ b/40_Project/YangMyungWhan/52Time_PROJECT/Source/Statistics.pas
@@ -0,0 +1,38 @@
+unit Statistics;
+
+interface
+
+uses
+ Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
+ Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.ComCtrls, Vcl.StdCtrls, Vcl.ExtCtrls;
+
+type
+ TfrmStatisics = class(TForm)
+ pnlHead: TPanel;
+ Label1: TLabel;
+ pcStatistics: TPageControl;
+ tsWorkState: TTabSheet;
+ tsWorkHistory: TTabSheet;
+ tsEtc: TTabSheet;
+ Label2: TLabel;
+ Label3: TLabel;
+ Label4: TLabel;
+ Label5: TLabel;
+ Edit1: TEdit;
+ Edit2: TEdit;
+ Edit3: TEdit;
+ Edit4: TEdit;
+ private
+ { Private declarations }
+ public
+ { Public declarations }
+ end;
+
+var
+ frmStatisics: TfrmStatisics;
+
+implementation
+
+{$R *.dfm}
+
+end.
diff --git a/40_Project/YangMyungWhan/52Time_PROJECT/Source/ThZoomAnimation.pas b/40_Project/YangMyungWhan/52Time_PROJECT/Source/ThZoomAnimation.pas
new file mode 100644
index 0000000..987fae0
--- /dev/null
+++ b/40_Project/YangMyungWhan/52Time_PROJECT/Source/ThZoomAnimation.pas
@@ -0,0 +1,151 @@
+unit ThZoomAnimation;
+
+interface
+
+uses
+ System.Classes, System.Types,
+ FMX.Types, FMX.Ani;
+
+type
+ TZoomAni = class(TControl)
+ private
+ FZoomAni: TFloatAnimation;
+ FDiffuse: Single;
+
+ procedure SetDiffuse(const Value: Single);
+ procedure FinishAni(Sender: TObject);
+ protected
+ procedure Paint; override;
+ public
+ constructor Create(AOwner: TComponent); override;
+ destructor Destroy; override;
+
+ procedure ZoomIn(ATargetPos: TPointF);
+ procedure ZoomOut(ATargetPos: TPointF);
+
+ property Diffuse: Single read FDiffuse write SetDiffuse;
+ end;
+
+ TZoomCircleAni = class(TZoomAni)
+ protected
+ procedure Paint; override;
+ end;
+
+implementation
+
+uses
+ System.UIConsts, DebugUtils;
+
+{ TZoomAni }
+
+constructor TZoomAni.Create(AOwner: TComponent);
+begin
+ inherited;
+
+// Locked := False;
+ Hittest := False;
+
+ FZoomAni := TFloatAnimation.Create(Self);
+ FZoomAni.Parent := Self;
+ FZoomAni.AnimationType := TAnimationType.atOut;
+ FZoomAni.Interpolation := TInterpolationType.itQuadratic;
+ FZoomAni.PropertyName := 'Diffuse';
+ FZoomAni.StartFromCurrent := False;
+ FZoomAni.Delay := 0;
+ FZoomAni.Duration := 0.5;
+ FZoomAni.OnFinish := FinishAni;
+
+ FWidth := 100;
+ FHeight := 100;
+
+ Visible := False;
+end;
+
+destructor TZoomAni.Destroy;
+begin
+ FZoomAni.Free;
+
+ inherited;
+end;
+
+procedure TZoomAni.FinishAni(Sender: TObject);
+begin
+ Visible := False;
+end;
+
+procedure TZoomAni.Paint;
+begin
+ inherited;
+
+end;
+
+procedure TZoomAni.SetDiffuse(const Value: Single);
+begin
+ FDiffuse := Value;
+
+ Repaint;
+end;
+
+procedure TZoomAni.ZoomIn(ATargetPos: TPointF);
+begin
+ Position.Point := ATargetPos.Subtract(PointF(Width / 2, Height / 2));
+
+ if FZoomAni.Running then
+ FZoomAni.Stop;
+ Visible := True;
+
+ FZoomAni.StartValue := 10;
+ FZoomAni.StopValue := 100;
+ FZoomAni.Start;
+end;
+
+procedure TZoomAni.ZoomOut(ATargetPos: TPointF);
+begin
+ Position.Point := ATargetPos.Subtract(PointF(Width / 2, Height / 2));
+
+ if FZoomAni.Running then
+ FZoomAni.Stop;
+ Visible := True;
+
+ FZoomAni.StartValue := 100;
+ FZoomAni.StopValue := 10;
+ FZoomAni.Start;
+end;
+
+{ TZoomCircleAni }
+
+procedure TZoomCircleAni.Paint;
+var
+ Radius: Single;
+ R, R2: TRectF;
+ P: TPointF;
+ State: TCanvasSaveState;
+begin
+ inherited;
+
+ Radius := (Width / 2) * (FDiffuse / 100);
+ P := ClipRect.CenterPoint;
+ R := RectF(P.X, P.Y, P.X, P.Y);
+ R2 := RectF(P.X, P.Y, P.X, P.Y);
+
+ InflateRect(R, Radius, Radius);
+
+ State := Canvas.SaveState;
+ try
+ Canvas.StrokeThickness := 3;
+ Canvas.StrokeDash := TStrokeDash.sdDot;
+ Canvas.Stroke.Color := claDarkGray;
+ Canvas.DrawEllipse(R, 1);
+
+ // ũ ǥ
+ if Radius > (Width / 4) then
+ begin
+ InflateRect(R2, Radius / 2, Radius / 2);
+ Canvas.DrawEllipse(R2, 1);
+ end;
+ finally
+ Canvas.RestoreState(State);
+ end;
+end;
+
+end.
diff --git a/40_Project/YangMyungWhan/52Time_PROJECT/Source/TimeInsert.dfm b/40_Project/YangMyungWhan/52Time_PROJECT/Source/TimeInsert.dfm
new file mode 100644
index 0000000..1e8d674
--- /dev/null
+++ b/40_Project/YangMyungWhan/52Time_PROJECT/Source/TimeInsert.dfm
@@ -0,0 +1,446 @@
+object frmTimeInsert: TfrmTimeInsert
+ Left = 0
+ Top = 0
+ Width = 886
+ Height = 640
+ AutoScroll = True
+ Caption = 'frmTimeInsert'
+ Color = clBtnFace
+ Font.Charset = DEFAULT_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -11
+ Font.Name = 'Tahoma'
+ Font.Style = []
+ OldCreateOrder = False
+ DesignSize = (
+ 870
+ 601)
+ PixelsPerInch = 96
+ TextHeight = 13
+ object pcTimeInsert: TPageControl
+ Left = 0
+ Top = 40
+ Width = 870
+ Height = 561
+ ActivePage = tbsWorkTime
+ Align = alClient
+ Font.Charset = ANSI_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -16
+ Font.Name = 'Arial Narrow'
+ Font.Style = []
+ ParentFont = False
+ TabOrder = 0
+ object tbsWorkTime: TTabSheet
+ Caption = #52636'/'#53748#44540#49884#44036' '#51077#47141
+ DesignSize = (
+ 862
+ 526)
+ object Label2: TLabel
+ Left = 432
+ Top = 48
+ Width = 76
+ Height = 19
+ Anchors = [akTop, akRight]
+ Caption = #52636#44540#49884#44036
+ Font.Charset = HANGEUL_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -19
+ Font.Name = 'HY'#49688#54217#49440'M'
+ Font.Style = []
+ ParentFont = False
+ end
+ object Label3: TLabel
+ Left = 432
+ Top = 136
+ Width = 76
+ Height = 19
+ Anchors = [akTop, akRight]
+ Caption = #53748#44540#49884#44036
+ Font.Charset = HANGEUL_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -19
+ Font.Name = 'HY'#49688#54217#49440'M'
+ Font.Style = []
+ ParentFont = False
+ end
+ object tpWorkStart: TTimePicker
+ Left = 592
+ Top = 40
+ Anchors = [akTop, akRight]
+ Font.Charset = HANGEUL_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -19
+ Font.Name = 'HY'#44053'M'
+ Font.Style = []
+ HighlightColor = clWindow
+ StyleElements = [seFont, seClient]
+ TabOrder = 0
+ Time = 0.464004629629629600
+ TimeFormat = 'h:mm'
+ end
+ object tpWorkFinish: TTimePicker
+ Left = 592
+ Top = 129
+ Anchors = [akTop, akRight]
+ Font.Charset = HANGEUL_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -19
+ Font.Name = 'HY'#44053'M'
+ Font.Style = []
+ HighlightColor = clWindow
+ StyleElements = [seFont, seClient]
+ TabOrder = 1
+ Time = 0.464131944444444400
+ TimeFormat = ' h:mm'
+ end
+ object btnWorkTimeInsert: TButton
+ Left = 432
+ Top = 218
+ Width = 193
+ Height = 41
+ Anchors = [akTop, akRight]
+ Caption = #46321' '#47197
+ Font.Charset = HANGEUL_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -24
+ Font.Name = 'HY'#49688#54217#49440'B'
+ Font.Style = []
+ ParentFont = False
+ TabOrder = 2
+ OnClick = btnWorkTimeInsertClick
+ end
+ object cpWorkDate: TCalendarPicker
+ Left = 88
+ Top = 40
+ Width = 233
+ Height = 32
+ CalendarHeaderInfo.DaysOfWeekFont.Charset = DEFAULT_CHARSET
+ CalendarHeaderInfo.DaysOfWeekFont.Color = clWindowText
+ CalendarHeaderInfo.DaysOfWeekFont.Height = -13
+ CalendarHeaderInfo.DaysOfWeekFont.Name = 'Segoe UI'
+ CalendarHeaderInfo.DaysOfWeekFont.Style = []
+ CalendarHeaderInfo.Font.Charset = DEFAULT_CHARSET
+ CalendarHeaderInfo.Font.Color = clWindowText
+ CalendarHeaderInfo.Font.Height = -20
+ CalendarHeaderInfo.Font.Name = 'Segoe UI'
+ CalendarHeaderInfo.Font.Style = []
+ Color = clWindow
+ Date = 43672.000000000000000000
+ Font.Charset = DEFAULT_CHARSET
+ Font.Color = clGray
+ Font.Height = -16
+ Font.Name = 'Segoe UI'
+ Font.Style = []
+ IsEmpty = False
+ MaxYear = 2200
+ MinYear = 1900
+ ParentFont = False
+ TabOrder = 3
+ TextHint = 'select a date'
+ end
+ object DBGrid1: TDBGrid
+ Left = 0
+ Top = 316
+ Width = 862
+ Height = 210
+ Align = alBottom
+ DataSource = dmDataAccess.dsAutoTimeInsert
+ Font.Charset = ANSI_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -13
+ Font.Name = 'Arial Narrow'
+ Font.Style = []
+ Options = [dgEditing, dgAlwaysShowEditor, dgTitles, dgIndicator, dgColumnResize, dgColLines, dgRowLines, dgTabs, dgConfirmDelete, dgCancelOnExit, dgTitleClick, dgTitleHotTrack]
+ ParentFont = False
+ TabOrder = 4
+ TitleFont.Charset = DEFAULT_CHARSET
+ TitleFont.Color = clWindowText
+ TitleFont.Height = -11
+ TitleFont.Name = 'Tahoma'
+ TitleFont.Style = []
+ Columns = <
+ item
+ Expanded = False
+ FieldName = 'USERS_NAME'
+ Title.Alignment = taCenter
+ Title.Caption = #51060#47492
+ Title.Font.Charset = ANSI_CHARSET
+ Title.Font.Color = clWindowText
+ Title.Font.Height = -13
+ Title.Font.Name = 'Arial Narrow'
+ Title.Font.Style = []
+ Width = 80
+ Visible = True
+ end
+ item
+ Expanded = False
+ FieldName = 'WTIT_DATE'
+ Title.Alignment = taCenter
+ Title.Caption = #45216#51676
+ Title.Font.Charset = ANSI_CHARSET
+ Title.Font.Color = clWindowText
+ Title.Font.Height = -13
+ Title.Font.Name = 'Arial Narrow'
+ Title.Font.Style = []
+ Width = 80
+ Visible = True
+ end
+ item
+ Expanded = False
+ FieldName = 'WTIT_STWORKTIME'
+ Title.Alignment = taCenter
+ Title.Caption = #52636#44540#49884#44036
+ Title.Font.Charset = ANSI_CHARSET
+ Title.Font.Color = clWindowText
+ Title.Font.Height = -13
+ Title.Font.Name = 'Arial Narrow'
+ Title.Font.Style = []
+ Width = 80
+ Visible = True
+ end
+ item
+ Expanded = False
+ FieldName = 'WTIT_FIWORKTIME'
+ Title.Alignment = taCenter
+ Title.Caption = #53748#44540#49884#44036
+ Title.Font.Charset = ANSI_CHARSET
+ Title.Font.Color = clWindowText
+ Title.Font.Height = -13
+ Title.Font.Name = 'Arial Narrow'
+ Title.Font.Style = []
+ Width = 80
+ Visible = True
+ end
+ item
+ Expanded = False
+ FieldName = 'WTIT_REALWORKTIME'
+ Title.Alignment = taCenter
+ Title.Caption = #49892#44540#47924#49884#44036
+ Width = 80
+ Visible = True
+ end>
+ end
+ end
+ object tbsWorkExcept: TTabSheet
+ Caption = #51228#50808#49884#44036' '#51077#47141
+ ImageIndex = 1
+ DesignSize = (
+ 862
+ 526)
+ object Label4: TLabel
+ Left = 432
+ Top = 48
+ Width = 76
+ Height = 19
+ Anchors = [akTop, akRight]
+ Caption = #49884#51089#49884#44036
+ Font.Charset = HANGEUL_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -19
+ Font.Name = 'HY'#49688#54217#49440'M'
+ Font.Style = []
+ ParentFont = False
+ end
+ object Label5: TLabel
+ Left = 432
+ Top = 136
+ Width = 76
+ Height = 19
+ Anchors = [akTop, akRight]
+ Caption = #51333#47308#49884#44036
+ Font.Charset = HANGEUL_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -19
+ Font.Name = 'HY'#49688#54217#49440'M'
+ Font.Style = []
+ ParentFont = False
+ end
+ object tpExceptStart: TTimePicker
+ Left = 592
+ Top = 40
+ Anchors = [akTop, akRight]
+ Font.Charset = HANGEUL_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -19
+ Font.Name = 'HY'#44053'M'
+ Font.Style = []
+ HighlightColor = clWindow
+ StyleElements = [seFont, seClient]
+ TabOrder = 0
+ Time = 0.464004629629629600
+ TimeFormat = 'h:mm'
+ end
+ object tpExceptFinish: TTimePicker
+ Left = 592
+ Top = 129
+ Anchors = [akTop, akRight]
+ Font.Charset = HANGEUL_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -19
+ Font.Name = 'HY'#44053'M'
+ Font.Style = []
+ HighlightColor = clWindow
+ StyleElements = [seFont, seClient]
+ TabOrder = 1
+ Time = 0.464004629629629600
+ TimeFormat = 'h:mm'
+ end
+ object btnExceptTimeInsert: TButton
+ Left = 432
+ Top = 218
+ Width = 193
+ Height = 41
+ Anchors = [akTop, akRight]
+ Caption = #46321' '#47197
+ Font.Charset = HANGEUL_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -24
+ Font.Name = 'HY'#49688#54217#49440'B'
+ Font.Style = []
+ ParentFont = False
+ TabOrder = 2
+ OnClick = btnExceptTimeInsertClick
+ end
+ object cpExceptTimeDate: TCalendarPicker
+ Left = 88
+ Top = 40
+ Width = 233
+ Height = 32
+ CalendarHeaderInfo.DaysOfWeekFont.Charset = DEFAULT_CHARSET
+ CalendarHeaderInfo.DaysOfWeekFont.Color = clWindowText
+ CalendarHeaderInfo.DaysOfWeekFont.Height = -13
+ CalendarHeaderInfo.DaysOfWeekFont.Name = 'Segoe UI'
+ CalendarHeaderInfo.DaysOfWeekFont.Style = []
+ CalendarHeaderInfo.Font.Charset = DEFAULT_CHARSET
+ CalendarHeaderInfo.Font.Color = clWindowText
+ CalendarHeaderInfo.Font.Height = -20
+ CalendarHeaderInfo.Font.Name = 'Segoe UI'
+ CalendarHeaderInfo.Font.Style = []
+ Color = clWindow
+ Date = 43672.000000000000000000
+ Font.Charset = DEFAULT_CHARSET
+ Font.Color = clGray
+ Font.Height = -16
+ Font.Name = 'Segoe UI'
+ Font.Style = []
+ IsEmpty = False
+ MaxYear = 2200
+ MinYear = 1900
+ ParentFont = False
+ TabOrder = 3
+ TextHint = 'select a date'
+ end
+ object DBGrid2: TDBGrid
+ Left = 0
+ Top = 320
+ Width = 862
+ Height = 206
+ Align = alBottom
+ DataSource = dmDataAccess.dsExceptTime
+ Font.Charset = ANSI_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -11
+ Font.Name = 'Tahoma'
+ Font.Style = []
+ Options = [dgEditing, dgAlwaysShowEditor, dgTitles, dgIndicator, dgColumnResize, dgColLines, dgRowLines, dgTabs, dgConfirmDelete, dgCancelOnExit, dgTitleClick, dgTitleHotTrack]
+ ParentFont = False
+ TabOrder = 4
+ TitleFont.Charset = ANSI_CHARSET
+ TitleFont.Color = clWindowText
+ TitleFont.Height = -16
+ TitleFont.Name = 'Arial Narrow'
+ TitleFont.Style = []
+ Columns = <
+ item
+ Expanded = False
+ FieldName = 'WTIT_DATE'
+ Title.Alignment = taCenter
+ Title.Caption = #45216#51676
+ Title.Font.Charset = ANSI_CHARSET
+ Title.Font.Color = clWindowText
+ Title.Font.Height = -11
+ Title.Font.Name = 'Tahoma'
+ Title.Font.Style = []
+ Width = 80
+ Visible = True
+ end
+ item
+ Expanded = False
+ FieldName = 'ET_EXCEPTTIME'
+ Title.Alignment = taCenter
+ Title.Caption = #51228#50808#49884#44036
+ Title.Font.Charset = ANSI_CHARSET
+ Title.Font.Color = clWindowText
+ Title.Font.Height = -11
+ Title.Font.Name = 'Tahoma'
+ Title.Font.Style = []
+ Visible = True
+ end
+ item
+ Expanded = False
+ FieldName = 'ET_STEXCEPTTIME'
+ Title.Alignment = taCenter
+ Title.Caption = #51228#50808#49884#51089#49884#44036
+ Title.Font.Charset = ANSI_CHARSET
+ Title.Font.Color = clWindowText
+ Title.Font.Height = -11
+ Title.Font.Name = 'Tahoma'
+ Title.Font.Style = []
+ Width = 80
+ Visible = True
+ end
+ item
+ Expanded = False
+ FieldName = 'ET_FIEXCEPTTIME'
+ Title.Alignment = taCenter
+ Title.Caption = #51228#50808#51333#47308#49884#44036
+ Title.Font.Charset = ANSI_CHARSET
+ Title.Font.Color = clWindowText
+ Title.Font.Height = -11
+ Title.Font.Name = 'Tahoma'
+ Title.Font.Style = []
+ Width = 80
+ Visible = True
+ end>
+ end
+ end
+ end
+ object btnTimeDelete: TButton
+ Left = 652
+ Top = 289
+ Width = 94
+ Height = 41
+ Anchors = [akTop, akRight]
+ Caption = #49325' '#51228
+ Font.Charset = HANGEUL_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -24
+ Font.Name = 'HY'#49688#54217#49440'M'
+ Font.Style = []
+ ParentFont = False
+ TabOrder = 1
+ OnClick = btnTimeDeleteClick
+ end
+ object pnlHeader: TPanel
+ Left = 0
+ Top = 0
+ Width = 870
+ Height = 40
+ Align = alTop
+ TabOrder = 2
+ object Label1: TLabel
+ Left = 8
+ Top = 12
+ Width = 80
+ Height = 19
+ Caption = #49884#44036#51077#47141
+ Font.Charset = HANGEUL_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -19
+ Font.Name = 'HY'#49688#54217#49440'M'
+ Font.Style = [fsBold]
+ ParentFont = False
+ end
+ end
+end
diff --git a/40_Project/YangMyungWhan/52Time_PROJECT/Source/TimeInsert.pas b/40_Project/YangMyungWhan/52Time_PROJECT/Source/TimeInsert.pas
new file mode 100644
index 0000000..f63a400
--- /dev/null
+++ b/40_Project/YangMyungWhan/52Time_PROJECT/Source/TimeInsert.pas
@@ -0,0 +1,131 @@
+unit TimeInsert;
+
+interface
+
+uses
+ Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
+ Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Data.DB, Vcl.ComCtrls, Vcl.Grids,
+ Vcl.DBGrids, Vcl.StdCtrls, Vcl.ExtCtrls, Vcl.WinXPickers, Vcl.WinXCalendars,
+ Vcl.Samples.Calendar, DataAccessModule;
+
+type
+ TfrmTimeInsert = class(TForm)
+ pnlHeader: TPanel;
+ Label1: TLabel;
+ pcTimeInsert: TPageControl;
+ DBGrid1: TDBGrid;
+ tbsWorkTime: TTabSheet;
+ tbsWorkExcept: TTabSheet;
+ Label2: TLabel;
+ Label3: TLabel;
+ tpWorkStart: TTimePicker;
+ tpWorkFinish: TTimePicker;
+ btnWorkTimeInsert: TButton;
+ Label4: TLabel;
+ Label5: TLabel;
+ tpExceptStart: TTimePicker;
+ tpExceptFinish: TTimePicker;
+ btnExceptTimeInsert: TButton;
+ cpWorkDate: TCalendarPicker;
+ cpExceptTimeDate: TCalendarPicker;
+ btnTimeDelete: TButton;
+ DBGrid2: TDBGrid;
+ procedure btnExceptTimeInsertClick(Sender: TObject);
+ procedure btnWorkTimeInsertClick(Sender: TObject);
+ procedure btnTimeDeleteClick(Sender: TObject);
+
+
+ private
+ { Private declarations }
+ public
+ { Public declarations }
+ end;
+
+var
+ frmTimeInsert: TfrmTimeInsert;
+
+implementation
+
+{$R *.dfm}
+
+uses LogIn;
+
+
+
+
+
+procedure TfrmTimeInsert.btnExceptTimeInsertClick(Sender: TObject);
+Var
+ ExceptTime_Seq: Integer;
+ Et_FiExceptTime: TTime;
+ Et_StExceptTime:TTime;
+
+begin
+ dmdataaccess.qryExceptTime.append;
+ dmDataAccess.qryExceptTime.FieldByName('WTIT_DATE').AsdateTime := cpExceptTimeDate.date;
+ dmDataAccess.qryExceptTime.FieldByName('WTIT_SEQ').Asinteger := 1;
+ dmDataAccess.qryExceptTime.FieldByName('ET_STEXCEPTTIME').AsdateTime := tpExceptStart.Time;
+ dmDataAccess.qryExceptTime.FieldByName('ET_FIEXCEPTTIME').AsdateTime := tpExceptFinish.Time;
+ dmDataAccess.qryExceptTime.Post;
+ dmDataAccess.qryExceptTime.Refresh;
+
+ //ܽð
+ ExceptTime_Seq := dmDataAccess.qryExceptTime.FieldByName('ET_SEQ').AsInteger;
+ Et_StExceptTime := dmDataAccess.qryExceptTime.FieldByName('ET_STEXCEPTTIME').AsDateTime;
+ Et_FiExceptTime := dmDataAccess.qryExceptTime.FieldByName('ET_FIEXCEPTTIME').AsDateTime;
+ dmDataAccess.ExecuteExceptTime(ExceptTime_Seq, Et_StExceptTime, Et_FiExcepttime);
+ dmDataAccess.qryExceptTime.Refresh;
+
+end;
+
+procedure TfrmTimeInsert.btnTimeDeleteClick(Sender: TObject);
+Var
+ Msg: string;
+begin
+ Msg := Format('ش Ͻðڽϱ?',[]);
+ if MessageDlg(Msg, mtInformation, [mbYes, mbNo], 0) = mrNo then
+ Exit;
+
+ dmDataAccess.qryTimeInsert.Delete;
+ dmDataAccess.qryTimeInsert.Refresh;
+ dmDataAccess.qryAutoTimeInsert.Refresh;
+end;
+
+procedure TfrmTimeInsert.btnWorkTimeInsertClick(Sender: TObject);
+Var
+ RealTime_Seq: Integer;
+ Wtit_FiWorkTime: TTime;
+ Wtit_StWorkTime:TTime;
+ seq : Integer;
+
+begin
+
+ dmdataaccess.qryAutoTimeInsert.append;
+ dmdataAccess.qryNameInsert.Close;
+ dmdataAccess.qryNameInsert.ParamByName('AUSERS_NAME').AsString := frmLogin.edtLoginName.Text;
+ dmdataAccess.qryNameInsert.Open;
+ seq := dmdataAccess.qryInformationDept.FieldbyName('USERS_SEQ').Asinteger;
+ dmdataAccess.qryNameInsert.Close;
+
+ dmdataaccess.qryAutoTimeInsert.append;
+ dmDataAccess.qryAutoTimeInsert.FieldByName('USERS_SEQ').Asinteger := seq;
+ dmDataAccess.qryAutoTimeInsert.FieldByName('WTIT_DATE').AsdateTime := cpWorkDate.date;
+ dmDataAccess.qryAutoTimeInsert.FieldByName('WTIT_STWORKTIME').AsdateTime := tpWorkStart.Time;
+ dmDataAccess.qryAutoTimeInsert.FieldByName('WTIT_FIWORKTIME').AsdateTime := tpWorkFinish.Time;
+ dmDataAccess.qryAutoTimeInsert.Post;
+ dmDataAccess.qryAutoTimeInsert.Refresh;
+ dmDataAccess.qryAutoTimeInsert.Refresh;
+
+ //ٽð - ٽð = ٹð
+ RealTime_Seq := dmDataAccess.qryAutoTimeInsert.FieldByName('WTIT_SEQ').AsInteger;
+ Wtit_StWorkTime := dmDataAccess.qryAutoTimeInsert.FieldByName('WTIT_STWORKTIME').AsDateTime;
+ Wtit_FiWorkTime := dmDataAccess.qryAutoTimeInsert.FieldByName('WTIT_FIWORKTIME').AsDateTime;
+ dmDataAccess.ExecuteRealTime(RealTime_Seq, Wtit_StworkTime, Wtit_FiWorktime);
+ dmDataAccess.qryTimeInsert.Refresh;
+ dmDataAccess.qryAutoTimeInsert.Refresh;
+
+ // ܽð
+ // ܽð SUM ļ Ѱ
+end;
+
+end.
diff --git a/40_Project/YangMyungWhan/52Time_PROJECT/Source/Unit7.dfm b/40_Project/YangMyungWhan/52Time_PROJECT/Source/Unit7.dfm
new file mode 100644
index 0000000..9e72db5
--- /dev/null
+++ b/40_Project/YangMyungWhan/52Time_PROJECT/Source/Unit7.dfm
@@ -0,0 +1,30 @@
+object Form7: TForm7
+ Left = 0
+ Top = 0
+ Caption = 'Form7'
+ ClientHeight = 299
+ ClientWidth = 635
+ Color = clBtnFace
+ Font.Charset = DEFAULT_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -11
+ Font.Name = 'Tahoma'
+ Font.Style = []
+ OldCreateOrder = False
+ PixelsPerInch = 96
+ TextHeight = 13
+ object DBGrid1: TDBGrid
+ Left = 0
+ Top = 0
+ Width = 635
+ Height = 299
+ Align = alClient
+ Options = [dgEditing, dgAlwaysShowEditor, dgTitles, dgIndicator, dgColumnResize, dgColLines, dgRowLines, dgTabs, dgConfirmDelete, dgCancelOnExit, dgTitleClick, dgTitleHotTrack]
+ TabOrder = 0
+ TitleFont.Charset = DEFAULT_CHARSET
+ TitleFont.Color = clWindowText
+ TitleFont.Height = -11
+ TitleFont.Name = 'Tahoma'
+ TitleFont.Style = []
+ end
+end
diff --git a/40_Project/YangMyungWhan/52Time_PROJECT/Source/Unit7.pas b/40_Project/YangMyungWhan/52Time_PROJECT/Source/Unit7.pas
new file mode 100644
index 0000000..155b02c
--- /dev/null
+++ b/40_Project/YangMyungWhan/52Time_PROJECT/Source/Unit7.pas
@@ -0,0 +1,25 @@
+unit Unit7;
+
+interface
+
+uses
+ Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
+ Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Data.DB, Vcl.Grids, Vcl.DBGrids;
+
+type
+ TForm7 = class(TForm)
+ DBGrid1: TDBGrid;
+ private
+ { Private declarations }
+ public
+ { Public declarations }
+ end;
+
+var
+ Form7: TForm7;
+
+implementation
+
+{$R *.dfm}
+
+end.
diff --git a/40_Project/YangMyungWhan/52Time_PROJECT/Source/Unit8.dfm b/40_Project/YangMyungWhan/52Time_PROJECT/Source/Unit8.dfm
new file mode 100644
index 0000000..a97159c
--- /dev/null
+++ b/40_Project/YangMyungWhan/52Time_PROJECT/Source/Unit8.dfm
@@ -0,0 +1,41 @@
+object Form8: TForm8
+ Left = 0
+ Top = 0
+ Caption = 'Form8'
+ ClientHeight = 342
+ ClientWidth = 635
+ Color = clBtnFace
+ Font.Charset = DEFAULT_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -11
+ Font.Name = 'Tahoma'
+ Font.Style = []
+ OldCreateOrder = False
+ PixelsPerInch = 96
+ TextHeight = 13
+ object Panel1: TPanel
+ Left = 0
+ Top = 0
+ Width = 635
+ Height = 342
+ Align = alClient
+ TabOrder = 0
+ ExplicitLeft = 232
+ ExplicitTop = 168
+ ExplicitWidth = 185
+ ExplicitHeight = 41
+ object Label1: TLabel
+ Left = 152
+ Top = 80
+ Width = 40
+ Height = 25
+ Caption = 'DLL'
+ Font.Charset = DEFAULT_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -21
+ Font.Name = 'Tahoma'
+ Font.Style = [fsBold]
+ ParentFont = False
+ end
+ end
+end
diff --git a/40_Project/YangMyungWhan/52Time_PROJECT/Source/Unit8.pas b/40_Project/YangMyungWhan/52Time_PROJECT/Source/Unit8.pas
new file mode 100644
index 0000000..fd45417
--- /dev/null
+++ b/40_Project/YangMyungWhan/52Time_PROJECT/Source/Unit8.pas
@@ -0,0 +1,46 @@
+unit Unit8;
+
+interface
+
+uses
+ Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
+ Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Vcl.ExtCtrls;
+
+type
+ TForm8 = class(TForm)
+ Panel1: TPanel;
+ Label1: TLabel;
+
+ procedure Form222; Export; Stdcall;
+// procedure Form_Free; Export; Stdcall;
+
+ private
+ { Private declarations }
+ public
+ { Public declarations }
+ end;
+
+var
+ Form8: TForm8;
+
+implementation
+
+{$R *.dfm}
+
+{ TForm8 }
+
+procedure TForm8.Form222;
+var
+ Form : TForm8;
+begin
+Form := TForm8.Create(nil);
+Form.ShowModal;
+Form.Free;
+end;
+
+//procedure TForm8.Form_Free;
+//begin
+//Form.Free;
+//end;
+
+end.
diff --git a/40_Project/YangMyungWhan/52Time_PROJECT/Source/Usplash.dfm b/40_Project/YangMyungWhan/52Time_PROJECT/Source/Usplash.dfm
new file mode 100644
index 0000000..dac5290
--- /dev/null
+++ b/40_Project/YangMyungWhan/52Time_PROJECT/Source/Usplash.dfm
@@ -0,0 +1,42 @@
+object SplashForm: TSplashForm
+ Left = 0
+ Top = 0
+ BorderStyle = bsSingle
+ Caption = 'SplashForm'
+ ClientHeight = 242
+ ClientWidth = 300
+ Color = clBtnFace
+ Font.Charset = DEFAULT_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -11
+ Font.Name = 'Tahoma'
+ Font.Style = []
+ OldCreateOrder = False
+ Position = poScreenCenter
+ PixelsPerInch = 96
+ TextHeight = 13
+ object Panel1: TPanel
+ Left = 0
+ Top = 0
+ Width = 300
+ Height = 242
+ Align = alClient
+ BevelInner = bvLowered
+ TabOrder = 0
+ ExplicitWidth = 306
+ ExplicitHeight = 271
+ object Label1: TLabel
+ Left = 104
+ Top = 88
+ Width = 70
+ Height = 45
+ Caption = 'DLL'
+ Font.Charset = DEFAULT_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -37
+ Font.Name = 'Tahoma'
+ Font.Style = [fsBold]
+ ParentFont = False
+ end
+ end
+end
diff --git a/40_Project/YangMyungWhan/52Time_PROJECT/Source/Usplash.pas b/40_Project/YangMyungWhan/52Time_PROJECT/Source/Usplash.pas
new file mode 100644
index 0000000..f874de6
--- /dev/null
+++ b/40_Project/YangMyungWhan/52Time_PROJECT/Source/Usplash.pas
@@ -0,0 +1,38 @@
+unit Usplash;
+
+interface
+
+uses
+ Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
+ Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Vcl.ExtCtrls;
+
+type
+ TSplashForm = class(TForm)
+ Panel1: TPanel;
+ Label1: TLabel;
+ private
+ { Private declarations }
+ public
+ { Public declarations }
+ end;
+
+var
+ SplashForm: TSplashForm;
+procedure Display_USplash; Export; Stdcall;
+
+implementation
+Procedure Display_USplash;
+var
+ ASplash: TSplashForm;
+begin
+ ASplash := TSplashForm.Create(nil);
+ try
+ ASplash.ShowModal;
+ finally
+ ASplash.Free;
+ end;
+ end;
+
+{$R *.dfm}
+
+end.
diff --git a/40_Project/YangMyungWhan/52Time_PROJECT/Source/WorkerAddition.dfm b/40_Project/YangMyungWhan/52Time_PROJECT/Source/WorkerAddition.dfm
new file mode 100644
index 0000000..dc1e82c
--- /dev/null
+++ b/40_Project/YangMyungWhan/52Time_PROJECT/Source/WorkerAddition.dfm
@@ -0,0 +1,16 @@
+object Form1: TForm1
+ Left = 0
+ Top = 0
+ Caption = 'Form1'
+ ClientHeight = 299
+ ClientWidth = 635
+ Color = clBtnFace
+ Font.Charset = DEFAULT_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -11
+ Font.Name = 'Tahoma'
+ Font.Style = []
+ OldCreateOrder = False
+ PixelsPerInch = 96
+ TextHeight = 13
+end
diff --git a/40_Project/YangMyungWhan/52Time_PROJECT/Source/WorkerAddition.pas b/40_Project/YangMyungWhan/52Time_PROJECT/Source/WorkerAddition.pas
new file mode 100644
index 0000000..54cd287
--- /dev/null
+++ b/40_Project/YangMyungWhan/52Time_PROJECT/Source/WorkerAddition.pas
@@ -0,0 +1,24 @@
+unit WorkerAddition;
+
+interface
+
+uses
+ Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
+ Vcl.Controls, Vcl.Forms, Vcl.Dialogs;
+
+type
+ TForm1 = class(TForm)
+ private
+ { Private declarations }
+ public
+ { Public declarations }
+ end;
+
+var
+ Form1: TForm1;
+
+implementation
+
+{$R *.dfm}
+
+end.
diff --git a/40_Project/YangMyungWhan/52Time_PROJECT/Source/WorkerInformation.dfm b/40_Project/YangMyungWhan/52Time_PROJECT/Source/WorkerInformation.dfm
new file mode 100644
index 0000000..e0f4a18
--- /dev/null
+++ b/40_Project/YangMyungWhan/52Time_PROJECT/Source/WorkerInformation.dfm
@@ -0,0 +1,516 @@
+object frmWorkerInformation: TfrmWorkerInformation
+ Left = 0
+ Top = 0
+ Caption = 'frmWorkerInformation'
+ ClientHeight = 644
+ ClientWidth = 876
+ Color = clBtnFace
+ Font.Charset = DEFAULT_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -11
+ Font.Name = 'Tahoma'
+ Font.Style = []
+ OldCreateOrder = False
+ OnCreate = FormCreate
+ DesignSize = (
+ 876
+ 644)
+ PixelsPerInch = 96
+ TextHeight = 13
+ object pnlHeader: TPanel
+ Left = 0
+ Top = 0
+ Width = 876
+ Height = 40
+ Align = alTop
+ TabOrder = 0
+ DesignSize = (
+ 876
+ 40)
+ object Label1: TLabel
+ Left = 8
+ Top = 12
+ Width = 80
+ Height = 19
+ Caption = #49324#50896#44288#47532
+ Font.Charset = HANGEUL_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -19
+ Font.Name = 'HY'#49688#54217#49440'M'
+ Font.Style = [fsBold]
+ ParentFont = False
+ end
+ object btnWorkerSave: TButton
+ Left = 675
+ Top = 8
+ Width = 75
+ Height = 25
+ Anchors = [akTop, akRight]
+ Caption = #51200#51109
+ TabOrder = 0
+ OnClick = btnWorkerSaveClick
+ end
+ object btncancel: TButton
+ Left = 756
+ Top = 8
+ Width = 75
+ Height = 25
+ Anchors = [akTop, akRight]
+ Caption = #52712#49548
+ TabOrder = 1
+ OnClick = btncancelClick
+ end
+ object btnWorkerLoad: TButton
+ Left = 594
+ Top = 8
+ Width = 75
+ Height = 25
+ Anchors = [akTop, akRight]
+ Caption = #52628#44032
+ TabOrder = 2
+ OnClick = btnWorkerLoadClick
+ end
+ object Button1: TButton
+ Left = 399
+ Top = 9
+ Width = 75
+ Height = 25
+ Caption = 'DLL'
+ TabOrder = 3
+ OnClick = Button1Click
+ end
+ end
+ object pnlShowInformation: TPanel
+ Left = 0
+ Top = 40
+ Width = 876
+ Height = 585
+ Align = alClient
+ TabOrder = 1
+ DesignSize = (
+ 876
+ 585)
+ object lbl: TLabel
+ Left = 411
+ Top = 40
+ Width = 42
+ Height = 21
+ Anchors = [akTop, akRight]
+ Caption = #51060#47492
+ Font.Charset = HANGEUL_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -21
+ Font.Name = 'HY'#49688#54217#49440'M'
+ Font.Style = []
+ ParentFont = False
+ end
+ object Label3: TLabel
+ Left = 411
+ Top = 98
+ Width = 42
+ Height = 21
+ Anchors = [akTop, akRight]
+ Caption = #49324#48264
+ Font.Charset = HANGEUL_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -21
+ Font.Name = 'HY'#49688#54217#49440'M'
+ Font.Style = []
+ ParentFont = False
+ end
+ object Label4: TLabel
+ Left = 411
+ Top = 158
+ Width = 42
+ Height = 21
+ Anchors = [akTop, akRight]
+ Caption = #48512#49436
+ Font.Charset = HANGEUL_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -21
+ Font.Name = 'HY'#49688#54217#49440'M'
+ Font.Style = []
+ ParentFont = False
+ end
+ object Label5: TLabel
+ Left = 411
+ Top = 218
+ Width = 63
+ Height = 21
+ Anchors = [akTop, akRight]
+ Caption = #50672#46973#52376
+ Font.Charset = HANGEUL_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -21
+ Font.Name = 'HY'#49688#54217#49440'M'
+ Font.Style = []
+ ParentFont = False
+ end
+ object Label2: TLabel
+ Left = 411
+ Top = 271
+ Width = 42
+ Height = 21
+ Anchors = [akTop, akRight]
+ Caption = #44160#49353
+ Font.Charset = HANGEUL_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -21
+ Font.Name = 'HY'#49688#54217#49440'M'
+ Font.Style = []
+ ParentFont = False
+ end
+ object GroupBox1: TGroupBox
+ Left = 117
+ Top = 22
+ Width = 193
+ Height = 224
+ TabOrder = 0
+ object imgWorkerInformation: TImage
+ Left = 2
+ Top = 15
+ Width = 189
+ Height = 207
+ Align = alClient
+ Stretch = True
+ ExplicitLeft = 3
+ ExplicitTop = 31
+ ExplicitHeight = 173
+ end
+ end
+ object edtName: TDBEdit
+ Left = 525
+ Top = 35
+ Width = 155
+ Height = 33
+ Anchors = [akTop, akRight]
+ BiDiMode = bdLeftToRight
+ DataField = 'USERS_NAME'
+ DataSource = dmDataAccess.dsInformationDept
+ Font.Charset = ANSI_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -21
+ Font.Name = 'Arial Narrow'
+ Font.Style = []
+ ParentBiDiMode = False
+ ParentFont = False
+ TabOrder = 1
+ end
+ object edtCode: TDBEdit
+ Left = 525
+ Top = 95
+ Width = 155
+ Height = 33
+ Anchors = [akTop, akRight]
+ BiDiMode = bdLeftToRight
+ DataField = 'USERS_CODE'
+ DataSource = dmDataAccess.dsInformationDept
+ Font.Charset = ANSI_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -21
+ Font.Name = 'Arial Narrow'
+ Font.Style = []
+ ParentBiDiMode = False
+ ParentFont = False
+ TabOrder = 2
+ end
+ object edtNum: TDBEdit
+ Left = 525
+ Top = 215
+ Width = 155
+ Height = 33
+ Anchors = [akTop, akRight]
+ BiDiMode = bdLeftToRight
+ DataField = 'USERS_NUM'
+ DataSource = dmDataAccess.dsInformationDept
+ Font.Charset = ANSI_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -21
+ Font.Name = 'Arial Narrow'
+ Font.Style = []
+ ParentBiDiMode = False
+ ParentFont = False
+ TabOrder = 3
+ end
+ object btnClear: TButton
+ Left = 128
+ Top = 269
+ Width = 75
+ Height = 25
+ Caption = #52488#44592#54868
+ TabOrder = 4
+ OnClick = btnClearClick
+ end
+ object btnImageLoad: TButton
+ Left = 222
+ Top = 269
+ Width = 75
+ Height = 25
+ Caption = #48520#47084#50724#44592
+ TabOrder = 5
+ OnClick = btnImageLoadClick
+ end
+ object btnStartWork: TButton
+ Left = 740
+ Top = 35
+ Width = 92
+ Height = 86
+ Anchors = [akTop, akRight]
+ Caption = #52636#44540
+ Font.Charset = HANGEUL_CHARSET
+ Font.Color = clBlack
+ Font.Height = -37
+ Font.Name = 'HY'#49688#54217#49440'B'
+ Font.Style = []
+ ParentFont = False
+ TabOrder = 6
+ OnClick = btnStartWorkClick
+ end
+ object btnFinishWork: TButton
+ Left = 740
+ Top = 156
+ Width = 92
+ Height = 86
+ Anchors = [akTop, akRight]
+ Caption = #53748#44540
+ Font.Charset = HANGEUL_CHARSET
+ Font.Color = clBlack
+ Font.Height = -37
+ Font.Name = 'HY'#49688#54217#49440'B'
+ Font.Style = []
+ ParentFont = False
+ TabOrder = 7
+ OnClick = btnFinishWorkClick
+ end
+ object cbDept: TDBLookupComboBox
+ Left = 525
+ Top = 156
+ Width = 155
+ Height = 32
+ Anchors = [akTop, akRight]
+ DataField = 'DEPT_SEQ'
+ DataSource = dmDataAccess.dsInformationDept
+ Font.Charset = ANSI_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -21
+ Font.Name = 'Arial'
+ Font.Style = []
+ KeyField = 'DEPT_SEQ'
+ ListField = 'DEPT_DEPT'
+ ListSource = dmDataAccess.dsDept
+ ParentFont = False
+ TabOrder = 8
+ end
+ object btnAutoDelete: TButton
+ Left = 740
+ Top = 267
+ Width = 91
+ Height = 27
+ Anchors = [akTop, akRight]
+ Caption = #49325' '#51228
+ Font.Charset = HANGEUL_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -16
+ Font.Name = 'HY'#49688#54217#49440'M'
+ Font.Style = []
+ ParentFont = False
+ TabOrder = 9
+ OnClick = btnAutoDeleteClick
+ end
+ object edtSearch: TEdit
+ Left = 525
+ Top = 271
+ Width = 155
+ Height = 21
+ TabOrder = 10
+ OnKeyUp = edtSearchKeyUp
+ end
+ end
+ object grdInformation: TDBGrid
+ Left = 0
+ Top = 384
+ Width = 453
+ Height = 241
+ Anchors = [akLeft, akRight, akBottom]
+ DataSource = dsLoad
+ Font.Charset = ANSI_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -13
+ Font.Name = 'Arial'
+ Font.Style = []
+ Options = [dgEditing, dgAlwaysShowEditor, dgTitles, dgIndicator, dgColumnResize, dgColLines, dgRowLines, dgTabs, dgConfirmDelete, dgCancelOnExit, dgTitleClick, dgTitleHotTrack]
+ ParentFont = False
+ TabOrder = 2
+ TitleFont.Charset = DEFAULT_CHARSET
+ TitleFont.Color = clWindowText
+ TitleFont.Height = -11
+ TitleFont.Name = 'Tahoma'
+ TitleFont.Style = []
+ Columns = <
+ item
+ Expanded = False
+ FieldName = 'USERS_CODE'
+ Title.Alignment = taCenter
+ Title.Caption = #49324#48264
+ Title.Font.Charset = ANSI_CHARSET
+ Title.Font.Color = clWindowText
+ Title.Font.Height = -13
+ Title.Font.Name = 'Arial Narrow'
+ Title.Font.Style = []
+ Visible = True
+ end
+ item
+ Expanded = False
+ FieldName = 'USERS_NAME'
+ Title.Alignment = taCenter
+ Title.Caption = #51060#47492
+ Title.Font.Charset = ANSI_CHARSET
+ Title.Font.Color = clWindowText
+ Title.Font.Height = -13
+ Title.Font.Name = 'Arial Narrow'
+ Title.Font.Style = []
+ Width = 50
+ Visible = True
+ end
+ item
+ Expanded = False
+ FieldName = 'USERS_NUM'
+ Title.Alignment = taCenter
+ Title.Caption = #50672#46973#52376
+ Title.Font.Charset = ANSI_CHARSET
+ Title.Font.Color = clWindowText
+ Title.Font.Height = -13
+ Title.Font.Name = 'Arial Narrow'
+ Title.Font.Style = []
+ Width = 100
+ Visible = True
+ end
+ item
+ Expanded = False
+ FieldName = 'DEPT_DEPT'
+ Title.Alignment = taCenter
+ Title.Caption = #48512#49436
+ Title.Font.Charset = ANSI_CHARSET
+ Title.Font.Color = clWindowText
+ Title.Font.Height = -13
+ Title.Font.Name = 'Arial Narrow'
+ Title.Font.Style = []
+ Width = 100
+ Visible = True
+ end
+ item
+ Expanded = False
+ FieldName = 'USERS_MA_OX'
+ Title.Alignment = taCenter
+ Title.Caption = #44288#47532#51088#44428#54620
+ Title.Font.Charset = ANSI_CHARSET
+ Title.Font.Color = clWindowText
+ Title.Font.Height = -13
+ Title.Font.Name = 'Arial Narrow'
+ Title.Font.Style = []
+ Width = 80
+ Visible = True
+ end>
+ end
+ object StatusBar1: TStatusBar
+ Left = 0
+ Top = 625
+ Width = 876
+ Height = 19
+ Panels = <>
+ end
+ object DBGrid1: TDBGrid
+ Left = 453
+ Top = 384
+ Width = 422
+ Height = 241
+ Anchors = [akLeft, akRight, akBottom]
+ DataSource = dmDataAccess.dsAutoTimeInsert
+ Font.Charset = ANSI_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -13
+ Font.Name = 'Arial Narrow'
+ Font.Style = []
+ Options = [dgEditing, dgAlwaysShowEditor, dgTitles, dgIndicator, dgColumnResize, dgColLines, dgRowLines, dgTabs, dgConfirmDelete, dgCancelOnExit, dgTitleClick, dgTitleHotTrack]
+ ParentFont = False
+ TabOrder = 4
+ TitleFont.Charset = DEFAULT_CHARSET
+ TitleFont.Color = clWindowText
+ TitleFont.Height = -11
+ TitleFont.Name = 'Tahoma'
+ TitleFont.Style = []
+ Columns = <
+ item
+ Expanded = False
+ FieldName = 'USERS_NAME'
+ Title.Alignment = taCenter
+ Title.Caption = #51060#47492
+ Title.Font.Charset = ANSI_CHARSET
+ Title.Font.Color = clWindowText
+ Title.Font.Height = -13
+ Title.Font.Name = 'Arial Narrow'
+ Title.Font.Style = []
+ Width = 50
+ Visible = True
+ end
+ item
+ Expanded = False
+ FieldName = 'WTIT_DATE'
+ Title.Alignment = taCenter
+ Title.Caption = #45216#51676
+ Title.Font.Charset = ANSI_CHARSET
+ Title.Font.Color = clWindowText
+ Title.Font.Height = -13
+ Title.Font.Name = 'Arial Narrow'
+ Title.Font.Style = []
+ Width = 80
+ Visible = True
+ end
+ item
+ Expanded = False
+ FieldName = 'WTIT_STWORKTIME'
+ Title.Alignment = taCenter
+ Title.Caption = #52636#44540#49884#44036
+ Title.Font.Charset = ANSI_CHARSET
+ Title.Font.Color = clWindowText
+ Title.Font.Height = -13
+ Title.Font.Name = 'Arial Narrow'
+ Title.Font.Style = []
+ Visible = True
+ end
+ item
+ Expanded = False
+ FieldName = 'WTIT_FIWORKTIME'
+ Title.Alignment = taCenter
+ Title.Caption = #53748#44540#49884#44036
+ Title.Font.Charset = ANSI_CHARSET
+ Title.Font.Color = clWindowText
+ Title.Font.Height = -13
+ Title.Font.Name = 'Arial Narrow'
+ Title.Font.Style = []
+ Visible = True
+ end
+ item
+ Expanded = False
+ FieldName = 'WTIT_REALWORKTIME'
+ Title.Alignment = taCenter
+ Title.Caption = #49892#44540#47924#49884#44036
+ Width = 80
+ Visible = True
+ end>
+ end
+ object dlgLoadImage: TOpenDialog
+ Left = 200
+ Top = 176
+ end
+ object imgWorkBtn: TImageList
+ Left = 16
+ Top = 256
+ end
+ object dsLoad: TDataSource
+ DataSet = dmDataAccess.qryInformationDept
+ OnDataChange = dsLoadDataChange
+ Left = 32
+ Top = 312
+ end
+end
diff --git a/40_Project/YangMyungWhan/52Time_PROJECT/Source/WorkerInformation.pas b/40_Project/YangMyungWhan/52Time_PROJECT/Source/WorkerInformation.pas
new file mode 100644
index 0000000..ad58bd8
--- /dev/null
+++ b/40_Project/YangMyungWhan/52Time_PROJECT/Source/WorkerInformation.pas
@@ -0,0 +1,261 @@
+unit WorkerInformation;
+
+interface
+
+uses
+ Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
+ Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Data.DB, Vcl.Grids, Vcl.DBGrids,
+ Vcl.StdCtrls, Vcl.ExtCtrls, DataAccessModule, Vcl.Mask, Vcl.DBCtrls,
+ CommonFunctions, System.ImageList, Vcl.ImgList, Vcl.ToolWin, Vcl.ComCtrls,
+ DeptAdd;
+
+type
+ TfrmWorkerInformation = class(TForm)
+ pnlHeader: TPanel;
+ Label1: TLabel;
+ pnlShowInformation: TPanel;
+ grdInformation: TDBGrid;
+ GroupBox1: TGroupBox;
+ imgWorkerInformation: TImage;
+ lbl: TLabel;
+ Label3: TLabel;
+ Label4: TLabel;
+ Label5: TLabel;
+ edtName: TDBEdit;
+ edtCode: TDBEdit;
+ edtNum: TDBEdit;
+ btnClear: TButton;
+ btnImageLoad: TButton;
+ dlgLoadImage: TOpenDialog;
+ btnStartWork: TButton;
+ btnFinishWork: TButton;
+ imgWorkBtn: TImageList;
+ StatusBar1: TStatusBar;
+ btnWorkerSave: TButton;
+ btncancel: TButton;
+ btnWorkerLoad: TButton;
+ cbDept: TDBLookupComboBox;
+ DBGrid1: TDBGrid;
+ btnAutoDelete: TButton;
+ dsLoad: TDataSource;
+ edtSearch: TEdit;
+ Label2: TLabel;
+ Button1: TButton;
+ procedure btnClearClick(Sender: TObject);
+ procedure btnImageLoadClick(Sender: TObject);
+ procedure btnWorkerLoadClick(Sender: TObject);
+ procedure btncancelClick(Sender: TObject);
+ procedure btnWorkerSaveClick(Sender: TObject);
+ procedure btnDeptAddClick(Sender: TObject);
+ procedure btnStartWorkClick(Sender: TObject);
+ procedure btnFinishWorkClick(Sender: TObject);
+ procedure btnAutoDeleteClick(Sender: TObject);
+ procedure dsLoadDataChange(Sender: TObject; Field: TField);
+ procedure FormCreate(Sender: TObject);
+ procedure edtSearchKeyUp(Sender: TObject; var Key: Word; Shift: TShiftState);
+ procedure Button1Click(Sender: TObject);
+
+ private
+ { Private declarations }
+ public
+ { Public declarations }
+ end;
+
+var
+ frmWorkerInformation: TfrmWorkerInformation;
+ procedure Display_USplash; stdcall;
+external 'Project8.dll';
+implementation
+
+
+{$R *.dfm}
+
+uses LogIn;
+
+procedure TfrmWorkerInformation.btnAutoDeleteClick(Sender: TObject);
+var
+ Msg: string;
+begin
+ Msg := Format('ش Ͻðڽϱ?',[]);
+ if MessageDlg(Msg, mtInformation, [mbYes, mbNo], 0) = mrNo then
+ Exit;
+
+ dmDataAccess.qryAutoTimeInsert.Delete;
+ dmDataAccess.qryAutoTimeInsert.Refresh;
+ dmDataAccess.qryTimeInsert.Refresh;
+end;
+
+procedure TfrmWorkerInformation.btncancelClick(Sender: TObject);
+begin
+ dmDataAccess.qryInformationDept.Cancel;
+end;
+
+procedure TfrmWorkerInformation.btnClearClick(Sender: TObject);
+var
+ Field: TField;
+begin
+ imgWorkerInformation.Picture.Assign(nil);
+end;
+
+procedure TfrmWorkerInformation.btnDeptAddClick(Sender: TObject);
+begin
+ if not Assigned(frmDeptAdd) then
+ frmDeptAdd := frmDeptAdd.Create(Self);
+ frmDeptAdd.Show;
+end;
+
+procedure TfrmWorkerInformation.btnFinishWorkClick(Sender: TObject);
+Var
+ WorkTime_Seq: Integer;
+ FiworkTime: TTime;
+ RealTime_Seq: Integer;
+ Wtit_FiWorkTime: TTime;
+ Wtit_StWorkTime:TTime;
+
+begin
+
+ // Ŭ Է Ǿִ ð ߰
+ WorkTime_Seq := dmDataAccess.qryAutoTimeInsert.FieldByName('WTIT_SEQ').AsInteger;
+ dmDataAccess.ExecuteTime(WorkTime_Seq, now);
+ dmDataAccess.qryAutoTimeInsert.Refresh;
+ dmDataAccess.qryTimeInsert.Refresh;
+
+ //ٽð - ٽð = ٹð
+ RealTime_Seq := dmDataAccess.qryAutoTimeInsert.FieldByName('WTIT_SEQ').AsInteger;
+ Wtit_StWorkTime := dmDataAccess.qryAutoTimeInsert.FieldByName('WTIT_STWORKTIME').AsDateTime;
+ Wtit_FiWorkTime := dmDataAccess.qryAutoTimeInsert.FieldByName('WTIT_FIWORKTIME').AsDateTime;
+ dmDataAccess.ExecuteRealTime(RealTime_Seq, Wtit_StworkTime, Wtit_FiWorktime);
+ dmDataAccess.qryTimeInsert.Refresh;
+ dmDataAccess.qryAutoTimeInsert.Refresh;
+end;
+
+
+procedure TfrmWorkerInformation.btnImageLoadClick(Sender: TObject);
+var
+ field:Tfield;
+begin
+ if dlgLoadImage.execute then
+ begin
+ LoadImagefromFile(imgWorkerInformation, dlgLoadImage.FileName);
+
+ field := dmdataAccess.qryInformationDept.FieldByName('USERS_IMG');
+ SaveImageToBlobField(imgWorkerInformation, Field as TBlobField);
+ end;
+
+end;
+
+procedure TfrmWorkerInformation.btnStartWorkClick(Sender: TObject); // ư Ŭ
+var
+ seq : Integer;
+begin
+ dmdataaccess.qryAutoTimeInsert.append;
+ dmdataAccess.qryNameInsert.Close;
+ dmdataAccess.qryNameInsert.ParamByName('AUSERS_NAME').AsString := frmLogin.edtLoginName.Text;
+ dmdataAccess.qryNameInsert.Open;
+ seq := dmdataAccess.qryInformationDept.FieldbyName('USERS_SEQ').Asinteger;
+ dmdataAccess.qryNameInsert.Close;
+
+ dmDataAccess.qryAutoTimeInsert.FieldByName('USERS_SEQ').Asinteger := seq;
+ dmDataAccess.qryAutoTimeInsert.FieldByName('WTIT_DATE').AsdateTime := date;
+ dmDataAccess.qryAutoTimeInsert.FieldByName('WTIT_STWORKTIME').AsdateTime := Now;
+ dmDataAccess.qryAutoTimeInsert.FieldByName('WTIT_FIWORKTIME').AsdateTime := 0;
+ dmDataAccess.qryAutoTimeInsert.Post;
+ dmDataAccess.qryAutoTimeInsert.Refresh;
+end;
+
+procedure TfrmWorkerInformation.btnWorkerLoadClick(Sender: TObject);
+begin
+ dmdataaccess.qryInformationDept.Append;
+ edtName.SetFocus;
+end;
+
+
+procedure TfrmWorkerInformation.btnWorkerSaveClick(Sender: TObject);
+begin
+ if edtName.Text = '' then
+ begin
+ ShowMessage('̸ Էϼ.');
+ edtName.SetFocus;
+ Exit;
+ end;
+
+ if edtCode.Text = '' then
+ begin
+ ShowMessage(' Էϼ.');
+ edtCode.SetFocus;
+ Exit;
+ end;
+
+ if cbDept.Text = '' then
+ begin
+ ShowMessage('μ Էϼ.');
+ cbDept.SetFocus;
+ Exit;
+ end;
+
+ if edtNum.Text = '' then
+ begin
+ ShowMessage('ó Էϼ.');
+ edtNum.SetFocus;
+ Exit;
+ end;
+
+ dmDataAccess.qryInformationDept.Post;
+ dmDataAccess.qryInformationDept.Refresh;
+end;
+
+
+
+procedure TfrmWorkerInformation.Button1Click(Sender: TObject);
+begin
+ Display_USplash;
+end;
+
+procedure TfrmWorkerInformation.dsLoadDataChange(Sender: TObject;
+ Field: TField);
+var
+ LField: TField;
+begin
+ if dmDataAccess.qryInformationDept.State = dsEdit then
+ Exit;
+
+ LField := dmDataAccess.qryInformationDept.FieldByName('USERS_IMG');
+ if LField is TBlobField then
+ LoadImageFromBlobField(imgWorkerInformation, LField as TBlobField);
+end;
+
+
+procedure TfrmWorkerInformation.edtSearchKeyUp(Sender: TObject; var Key: Word;
+ Shift: TShiftState);
+var
+ Filter: string;
+begin
+ Filter := '';
+ if edtSearch.Text <> '' then
+ begin
+ begin
+ if Filter <> '' then
+ Filter := Filter + ' or ';
+ Filter := Filter + Format('USERS_NAME like ''%%%s%%''', [edtSearch.Text]);
+ end;
+ end;
+
+ dmDataAccess.qryInformationDept.Filter := Filter;
+ dmDataAccess.qryInformationDept.Filtered := (Filter <> '');
+end;
+
+
+procedure TfrmWorkerInformation.FormCreate(Sender: TObject);
+var
+ seq : Integer;
+begin
+ dmdataaccess.qryAutoTimeInsert.append;
+ dmdataAccess.qryNameInsert.Close;
+ dmdataAccess.qryNameInsert.ParamByName('AUSERS_NAME').AsString := frmLogin.edtLoginName.Text;
+ dmdataAccess.qryNameInsert.Open;
+ seq := dmdataAccess.qryInformationDept.FieldbyName('USERS_SEQ').Asinteger;
+ dmdataAccess.qryNameInsert.Close;
+end;
+
+end.
+
diff --git "a/M2/\352\263\274\354\240\234\354\240\234\354\266\234_M2(\352\263\204\354\202\260\352\270\260)_\354\226\221\353\252\205\355\231\230/Win32/Debug/\352\263\204\354\202\260\352\270\260.dcu" "b/M2/\352\263\274\354\240\234\354\240\234\354\266\234_M2(\352\263\204\354\202\260\352\270\260)_\354\226\221\353\252\205\355\231\230/Win32/Debug/\352\263\204\354\202\260\352\270\260.dcu"
new file mode 100644
index 0000000..4c40fb8
Binary files /dev/null and "b/M2/\352\263\274\354\240\234\354\240\234\354\266\234_M2(\352\263\204\354\202\260\352\270\260)_\354\226\221\353\252\205\355\231\230/Win32/Debug/\352\263\204\354\202\260\352\270\260.dcu" differ
diff --git "a/M2/\352\263\274\354\240\234\354\240\234\354\266\234_M2(\352\263\204\354\202\260\352\270\260)_\354\226\221\353\252\205\355\231\230/Win32/Debug/\352\263\204\354\202\260\352\270\260_\354\226\221\353\252\205\355\231\230.exe" "b/M2/\352\263\274\354\240\234\354\240\234\354\266\234_M2(\352\263\204\354\202\260\352\270\260)_\354\226\221\353\252\205\355\231\230/Win32/Debug/\352\263\204\354\202\260\352\270\260_\354\226\221\353\252\205\355\231\230.exe"
new file mode 100644
index 0000000..be806ab
Binary files /dev/null and "b/M2/\352\263\274\354\240\234\354\240\234\354\266\234_M2(\352\263\204\354\202\260\352\270\260)_\354\226\221\353\252\205\355\231\230/Win32/Debug/\352\263\204\354\202\260\352\270\260_\354\226\221\353\252\205\355\231\230.exe" differ
diff --git "a/M2/\352\263\274\354\240\234\354\240\234\354\266\234_M2(\352\263\204\354\202\260\352\270\260)_\354\226\221\353\252\205\355\231\230/\352\263\204\354\202\260\352\270\260_\354\226\221\353\252\205\355\231\230.dpr" "b/M2/\352\263\274\354\240\234\354\240\234\354\266\234_M2(\352\263\204\354\202\260\352\270\260)_\354\226\221\353\252\205\355\231\230/\352\263\204\354\202\260\352\270\260_\354\226\221\353\252\205\355\231\230.dpr"
new file mode 100644
index 0000000..7318fc1
--- /dev/null
+++ "b/M2/\352\263\274\354\240\234\354\240\234\354\266\234_M2(\352\263\204\354\202\260\352\270\260)_\354\226\221\353\252\205\355\231\230/\352\263\204\354\202\260\352\270\260_\354\226\221\353\252\205\355\231\230.dpr"
@@ -0,0 +1,17 @@
+program _ȯ;
+
+uses
+ Vcl.Forms,
+ in 'D:\201907_̱\\.pas' {Form1},
+ Vcl.Themes,
+ Vcl.Styles;
+
+{$R *.res}
+
+begin
+ Application.Initialize;
+ Application.MainFormOnTaskbar := True;
+ TStyleManager.TrySetStyle('Sky');
+ Application.CreateForm(TForm1, Form1);
+ Application.Run;
+end.
diff --git "a/M2/\352\263\274\354\240\234\354\240\234\354\266\234_M2(\352\263\204\354\202\260\352\270\260)_\354\226\221\353\252\205\355\231\230/\352\263\204\354\202\260\352\270\260_\354\226\221\353\252\205\355\231\230.dproj" "b/M2/\352\263\274\354\240\234\354\240\234\354\266\234_M2(\352\263\204\354\202\260\352\270\260)_\354\226\221\353\252\205\355\231\230/\352\263\204\354\202\260\352\270\260_\354\226\221\353\252\205\355\231\230.dproj"
new file mode 100644
index 0000000..ccd7505
--- /dev/null
+++ "b/M2/\352\263\274\354\240\234\354\240\234\354\266\234_M2(\352\263\204\354\202\260\352\270\260)_\354\226\221\353\252\205\355\231\230/\352\263\204\354\202\260\352\270\260_\354\226\221\353\252\205\355\231\230.dproj"
@@ -0,0 +1,621 @@
+
+
+ {081B45EC-0424-4AF5-92E1-6191645A0AF9}
+ 18.6
+ VCL
+ 계산기_양명환.dpr
+ True
+ Debug
+ Win32
+ 1
+ Application
+
+
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_1
+ true
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_2
+ true
+ true
+
+
+ .\$(Platform)\$(Config)
+ .\$(Platform)\$(Config)
+ false
+ false
+ false
+ false
+ false
+ System;Xml;Data;Datasnap;Web;Soap;Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;$(DCC_Namespace)
+ $(BDS)\bin\delphi_PROJECTICON.ico
+ $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_44.png
+ $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_150.png
+ 계산기_양명환
+ Amakrits|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Amakrits.vsf;"Amethyst Kamri|VCLSTYLE|$(BDSCOMMONDIR)\Styles\AmethystKamri.vsf";"Aqua Graphite|VCLSTYLE|$(BDSCOMMONDIR)\Styles\AquaGraphite.vsf";"Aqua Light Slate|VCLSTYLE|$(BDSCOMMONDIR)\Styles\AquaLightSlate.vsf";Auric|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Auric.vsf;Carbon|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Carbon.vsf;"Charcoal Dark Slate|VCLSTYLE|$(BDSCOMMONDIR)\Styles\CharcoalDarkSlate.vsf";"Cobalt XEMedia|VCLSTYLE|$(BDSCOMMONDIR)\Styles\CobaltXEMedia.vsf";"Cyan Dusk|VCLSTYLE|$(BDSCOMMONDIR)\Styles\CyanDusk.vsf";"Cyan Night|VCLSTYLE|$(BDSCOMMONDIR)\Styles\CyanNight.vsf";"Emerald Light Slate|VCLSTYLE|$(BDSCOMMONDIR)\Styles\EmeraldLightSlate.vsf";Glossy|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Glossy.vsf;Glow|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Glow.vsf;"Golden Graphite|VCLSTYLE|$(BDSCOMMONDIR)\Styles\GoldenGraphite.vsf";"Iceberg Classico|VCLSTYLE|$(BDSCOMMONDIR)\Styles\IcebergClassico.vsf";"Lavender Classico|VCLSTYLE|$(BDSCOMMONDIR)\Styles\LavenderClassico.vsf";Light|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Light.vsf;Luna|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Luna.vsf;"Metropolis UI Black|VCLSTYLE|$(BDSCOMMONDIR)\Styles\MetropolisUIBlack.vsf";"Metropolis UI Blue|VCLSTYLE|$(BDSCOMMONDIR)\Styles\MetropolisUIBlue.vsf";"Metropolis UI Dark|VCLSTYLE|$(BDSCOMMONDIR)\Styles\MetropolisUIDark.vsf";"Metropolis UI Green|VCLSTYLE|$(BDSCOMMONDIR)\Styles\MetropolisUIGreen.vsf";Obsidian|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Obsidian.vsf;"Onyx Blue|VCLSTYLE|$(BDSCOMMONDIR)\Styles\OnyxBlue.vsf";"Ruby Graphite|VCLSTYLE|$(BDSCOMMONDIR)\Styles\RubyGraphite.vsf";"Sapphire Kamri|VCLSTYLE|$(BDSCOMMONDIR)\Styles\SapphireKamri.vsf";Silver|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Silver.vsf;Sky|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Sky.vsf;"Slate Classico|VCLSTYLE|$(BDSCOMMONDIR)\Styles\SlateClassico.vsf";"Smokey Quartz Kamri|VCLSTYLE|$(BDSCOMMONDIR)\Styles\SmokeyQuartzKamri.vsf";"Tablet Light|VCLSTYLE|$(BDSCOMMONDIR)\Styles\TabletLight.vsf";TabletDark|VCLSTYLE|$(BDSCOMMONDIR)\Styles\TabletDark.vsf;"Turquoise Gray|VCLSTYLE|$(BDSCOMMONDIR)\Styles\TurquoiseGray.vsf";Windows10|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Windows10.vsf;"Windows10 Blue|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Windows10Blue.vsf";"Windows10 Dark|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Windows10Dark.vsf";"Windows10 Green|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Windows10Green.vsf";"Windows10 Purple|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Windows10Purple.vsf";"Windows10 SlateGray|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Windows10SlateGray.vsf"
+
+
+ DBXSqliteDriver;RESTComponents;fmxase;DBXDb2Driver;DBXInterBaseDriver;vclactnband;vclFireDAC;emsclientfiredac;tethering;svnui;DataSnapFireDAC;FireDACADSDriver;DBXMSSQLDriver;DatasnapConnectorsFreePascal;FireDACMSSQLDriver;vcltouch;vcldb;bindcompfmx;svn;DBXOracleDriver;inetdb;FmxTeeUI;emsedge;fmx;FireDACIBDriver;fmxdae;vclib;FireDACDBXDriver;dbexpress;IndyCore;vclx;dsnap;emsclient;DataSnapCommon;FireDACCommon;RESTBackendComponents;DataSnapConnectors;VCLRESTComponents;soapserver;vclie;bindengine;DBXMySQLDriver;CloudService;FireDACOracleDriver;FireDACMySQLDriver;DBXFirebirdDriver;FireDACCommonODBC;FireDACCommonDriver;DataSnapClient;inet;IndyIPCommon;bindcompdbx;vcl;IndyIPServer;DBXSybaseASEDriver;IndySystem;FireDACDb2Driver;dsnapcon;FireDACMSAccDriver;fmxFireDAC;FireDACInfxDriver;vclimg;TeeDB;FireDAC;emshosting;FireDACSqliteDriver;FireDACPgDriver;ibmonitor;FireDACASADriver;DBXOdbcDriver;FireDACTDataDriver;FMXTee;soaprtl;DbxCommonDriver;ibxpress;Tee;DataSnapServer;xmlrtl;soapmidas;DataSnapNativeClient;fmxobj;vclwinx;FireDACDSDriver;rtl;emsserverresource;DbxClientDriver;ibxbindings;DBXSybaseASADriver;CustomIPTransport;vcldsnap;bindcomp;appanalytics;DBXInformixDriver;IndyIPClient;bindcompvcl;TeeUI;vclribbon;dbxcds;VclSmp;adortl;FireDACODBCDriver;DataSnapIndy10ServerTransport;dsnapxml;DataSnapProviderClient;dbrtl;IndyProtocols;inetdbxpress;FireDACMongoDBDriver;DataSnapServerMidas;$(DCC_UsePackage)
+ Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
+ Debug
+ true
+ CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=com.embarcadero.$(MSBuildProjectName);ProductName=$(MSBuildProjectName);ProductVersion=1.0.0.0;Comments=
+ 1033
+ $(BDS)\bin\default_app.manifest
+
+
+ DBXSqliteDriver;RESTComponents;fmxase;DBXDb2Driver;DBXInterBaseDriver;vclactnband;vclFireDAC;emsclientfiredac;tethering;DataSnapFireDAC;FireDACADSDriver;DBXMSSQLDriver;DatasnapConnectorsFreePascal;FireDACMSSQLDriver;vcltouch;vcldb;bindcompfmx;DBXOracleDriver;inetdb;FmxTeeUI;emsedge;fmx;FireDACIBDriver;fmxdae;vclib;FireDACDBXDriver;dbexpress;IndyCore;vclx;dsnap;emsclient;DataSnapCommon;FireDACCommon;RESTBackendComponents;DataSnapConnectors;VCLRESTComponents;soapserver;vclie;bindengine;DBXMySQLDriver;CloudService;FireDACOracleDriver;FireDACMySQLDriver;DBXFirebirdDriver;FireDACCommonODBC;FireDACCommonDriver;DataSnapClient;inet;IndyIPCommon;bindcompdbx;vcl;IndyIPServer;DBXSybaseASEDriver;IndySystem;FireDACDb2Driver;dsnapcon;FireDACMSAccDriver;fmxFireDAC;FireDACInfxDriver;vclimg;TeeDB;FireDAC;emshosting;FireDACSqliteDriver;FireDACPgDriver;ibmonitor;FireDACASADriver;DBXOdbcDriver;FireDACTDataDriver;FMXTee;soaprtl;DbxCommonDriver;ibxpress;Tee;DataSnapServer;xmlrtl;soapmidas;DataSnapNativeClient;fmxobj;vclwinx;FireDACDSDriver;rtl;emsserverresource;DbxClientDriver;ibxbindings;DBXSybaseASADriver;CustomIPTransport;vcldsnap;bindcomp;appanalytics;DBXInformixDriver;IndyIPClient;bindcompvcl;TeeUI;vclribbon;dbxcds;VclSmp;adortl;FireDACODBCDriver;DataSnapIndy10ServerTransport;dsnapxml;DataSnapProviderClient;dbrtl;IndyProtocols;inetdbxpress;FireDACMongoDBDriver;DataSnapServerMidas;$(DCC_UsePackage)
+
+
+ DEBUG;$(DCC_Define)
+ true
+ false
+ true
+ true
+ true
+
+
+ false
+ true
+ PerMonitorV2
+ true
+ 1033
+
+
+ false
+ RELEASE;$(DCC_Define)
+ 0
+ 0
+
+
+ true
+ PerMonitorV2
+
+
+
+ MainSource
+
+
+
+ dfm
+
+
+ Cfg_2
+ Base
+
+
+ Base
+
+
+ Cfg_1
+ Base
+
+
+
+ Delphi.Personality.12
+ Application
+
+
+
+ 계산기_양명환.dpr
+
+
+ Embarcadero C++Builder Office 2000 Servers Package
+ Embarcadero C++Builder Office XP Servers Package
+ Microsoft Office 2000 Sample Automation Server Wrapper Components
+ Microsoft Office XP Sample Automation Server Wrapper Components
+
+
+
+
+
+ 계산기_양명환.exe
+ true
+
+
+
+
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ 0
+
+
+
+
+ classes
+ 1
+
+
+
+
+ res\xml
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ library\lib\armeabi
+ 1
+
+
+
+
+ library\lib\mips
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ res\drawable
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+
+
+ res\values-v21
+ 1
+
+
+
+
+ res\drawable
+ 1
+
+
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+
+
+ res\drawable-ldpi
+ 1
+
+
+
+
+ res\drawable-mdpi
+ 1
+
+
+
+
+ res\drawable-hdpi
+ 1
+
+
+
+
+ res\drawable-xhdpi
+ 1
+
+
+
+
+ res\drawable-small
+ 1
+
+
+
+
+ res\drawable-normal
+ 1
+
+
+
+
+ res\drawable-large
+ 1
+
+
+
+
+ res\drawable-xlarge
+ 1
+
+
+
+
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ 0
+
+
+
+
+ Contents\MacOS
+ 1
+ .framework
+
+
+ Contents\MacOS
+ 1
+ .framework
+
+
+ 0
+
+
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ 0
+ .dll;.bpl
+
+
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ 0
+ .bpl
+
+
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ Contents\Resources\StartUp\
+ 0
+
+
+ Contents\Resources\StartUp\
+ 0
+
+
+ 0
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\
+ 1
+
+
+ ..\
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+
+
+ ..\
+ 1
+
+
+ ..\
+ 1
+
+
+
+
+ Contents
+ 1
+
+
+ Contents
+ 1
+
+
+
+
+ Contents\Resources
+ 1
+
+
+ Contents\Resources
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ 0
+
+
+
+
+ 1
+
+
+ 1
+
+
+
+
+ Assets
+ 1
+
+
+ Assets
+ 1
+
+
+
+
+ Assets
+ 1
+
+
+ Assets
+ 1
+
+
+
+
+
+
+
+
+
+
+
+
+
+ True
+ False
+
+
+ 12
+
+
+
+
+
diff --git "a/M2/\352\263\274\354\240\234\354\240\234\354\266\234_M2(\352\263\204\354\202\260\352\270\260)_\354\226\221\353\252\205\355\231\230/\352\263\204\354\202\260\352\270\260_\354\226\221\353\252\205\355\231\230.dproj.local" "b/M2/\352\263\274\354\240\234\354\240\234\354\266\234_M2(\352\263\204\354\202\260\352\270\260)_\354\226\221\353\252\205\355\231\230/\352\263\204\354\202\260\352\270\260_\354\226\221\353\252\205\355\231\230.dproj.local"
new file mode 100644
index 0000000..f14b7e6
--- /dev/null
+++ "b/M2/\352\263\274\354\240\234\354\240\234\354\266\234_M2(\352\263\204\354\202\260\352\270\260)_\354\226\221\353\252\205\355\231\230/\352\263\204\354\202\260\352\270\260_\354\226\221\353\252\205\355\231\230.dproj.local"
@@ -0,0 +1,13 @@
+
+
+
+ 1899-12-30 00:00:00.000.239,=C:\Users\양명환\Documents\Embarcadero\Studio\Projects\Unit1.pas
+ 1899-12-30 00:00:00.000.416,C:\Users\양명환\Documents\Embarcadero\Studio\Projects\Unit1.pas=D:\201907_델파이교육\계산기\계산기.pas
+ 1899-12-30 00:00:00.000.416,C:\Users\양명환\Documents\Embarcadero\Studio\Projects\Unit1.dfm=D:\201907_델파이교육\계산기\계산기.dfm
+ 1899-12-30 00:00:00.000.198,D:\201907_델파이교육\계산기 과제_양명환\계산기_양명환.dproj=D:\201907_델파이교육\계산기 과제_양명환\계산기_양명환.dproj
+ 1899-12-30 00:00:00.000.175,D:\201907_델파이교육\과제제출_M2(계산기)_양명환\계산기_양명환.dproj=D:\git hub\20_Task\M2\과제제출_M2(계산기)_양명환\계산기_양명환.dproj
+ 1899-12-30 00:00:00.000.779,C:\Users\양명환\Documents\Embarcadero\Studio\Projects\Project1.dproj=D:\201907_델파이교육\계산기\계산시_양명환.dproj
+ 1899-12-30 00:00:00.000.206,D:\201907_델파이교육\계산기\계산시_양명환.dproj=D:\201907_델파이교육\계산기\계산시_양명환.dproj
+ 1899-12-30 00:00:00.000.334,D:\201907_델파이교육\계산기\계산시_양명환.dproj=D:\201907_델파이교육\계산기 과제_양명환\계산기_양명환.dproj
+
+
diff --git "a/M2/\352\263\274\354\240\234\354\240\234\354\266\234_M2(\352\263\204\354\202\260\352\270\260)_\354\226\221\353\252\205\355\231\230/\352\263\204\354\202\260\352\270\260_\354\226\221\353\252\205\355\231\230.identcache" "b/M2/\352\263\274\354\240\234\354\240\234\354\266\234_M2(\352\263\204\354\202\260\352\270\260)_\354\226\221\353\252\205\355\231\230/\352\263\204\354\202\260\352\270\260_\354\226\221\353\252\205\355\231\230.identcache"
new file mode 100644
index 0000000..a9fc87e
Binary files /dev/null and "b/M2/\352\263\274\354\240\234\354\240\234\354\266\234_M2(\352\263\204\354\202\260\352\270\260)_\354\226\221\353\252\205\355\231\230/\352\263\204\354\202\260\352\270\260_\354\226\221\353\252\205\355\231\230.identcache" differ
diff --git "a/M2/\352\263\274\354\240\234\354\240\234\354\266\234_M2(\352\263\204\354\202\260\352\270\260)_\354\226\221\353\252\205\355\231\230/\352\263\204\354\202\260\352\270\260_\354\226\221\353\252\205\355\231\230.res" "b/M2/\352\263\274\354\240\234\354\240\234\354\266\234_M2(\352\263\204\354\202\260\352\270\260)_\354\226\221\353\252\205\355\231\230/\352\263\204\354\202\260\352\270\260_\354\226\221\353\252\205\355\231\230.res"
new file mode 100644
index 0000000..d8b8b77
Binary files /dev/null and "b/M2/\352\263\274\354\240\234\354\240\234\354\266\234_M2(\352\263\204\354\202\260\352\270\260)_\354\226\221\353\252\205\355\231\230/\352\263\204\354\202\260\352\270\260_\354\226\221\353\252\205\355\231\230.res" differ
diff --git "a/M2/\352\263\274\354\240\234\354\240\234\354\266\234_M2(\352\263\204\354\202\260\352\270\260)_\354\226\221\353\252\205\355\231\230/\352\263\204\354\202\260\352\270\260_\354\226\221\353\252\205\355\231\230.stat" "b/M2/\352\263\274\354\240\234\354\240\234\354\266\234_M2(\352\263\204\354\202\260\352\270\260)_\354\226\221\353\252\205\355\231\230/\352\263\204\354\202\260\352\270\260_\354\226\221\353\252\205\355\231\230.stat"
new file mode 100644
index 0000000..d6c6ac0
--- /dev/null
+++ "b/M2/\352\263\274\354\240\234\354\240\234\354\266\234_M2(\352\263\204\354\202\260\352\270\260)_\354\226\221\353\252\205\355\231\230/\352\263\204\354\202\260\352\270\260_\354\226\221\353\252\205\355\231\230.stat"
@@ -0,0 +1,10 @@
+[Stats]
+EditorSecs=7467
+DesignerSecs=276
+InspectorSecs=122
+CompileSecs=127369
+OtherSecs=111
+StartTime=2019-07-08 8:54:06
+RealKeys=0
+EffectiveKeys=0
+DebugSecs=1