ΠΠΈΠ·ΡΠ°Π»ΠΈΠ·Π°ΡΠΈΡ Π³Π΅ΠΎΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΈΡ Π΄Π°Π½Π½ΡΡ
ΠΠ΅ΡΠΎΠ΄ Π·Π°Π³ΡΡΠΆΠ°Π΅Ρ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΠΏΠΎΠ»Π΅ΠΉ ΠΈΠ· Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ Π² ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠ΅ ΠΏΠΎΠ»Ρ ΠΊΠ»Π°ΡΡΠ° TLogging. Π Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ΠΎ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ° ΡΠΈΠΏΠ° TADO Query. ΠΠΎΡΠΎΡΡΠΉ ΡΠ½Π°ΡΠ°Π»Π° ΠΏΠΎΡΡΠ»Π°Π΅Ρ Π·Π°ΠΏΡΠΎΡ Π½Π° ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΠΈΠ· Π±Π°Π·Ρ Π²ΡΠ΅Ρ ΠΏΠΎΠ»Π΅ΠΉ ΠΊΡΠΎΠΌΠ΅ blob-ΠΏΠΎΠ»Ρ (MAS). ΠΠ°ΠΏΠΎΠ»Π½ΡΡΡΡΡ Π²ΡΠ΅ ΠΌΠ°ΡΡΠΈΠ²Ρ, ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠ΅ ΠΏΠΎΠ»ΡΠΌ Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ , ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»ΠΈΠ² Π΄Π»Ρ Π½ΠΈΡ ΠΏΠ°ΠΌΡΡΡ. ΠΠ°Π»Π΅Π΅ ΠΏΠΎΡΡΠ»Π°Π΅ΡΡΡ Π·Π°ΠΏΡΠΎΡ ΠΊ Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ Π½Π° Π²ΠΎΠ·Π²ΡΠ°ΡΠ΅Π½ΠΈΠ΅ Π²ΡΠ΅Ρ Π·Π°ΠΏΠΈΡΠ΅ΠΉ… Π§ΠΈΡΠ°ΡΡ Π΅ΡΡ >
ΠΠΈΠ·ΡΠ°Π»ΠΈΠ·Π°ΡΠΈΡ Π³Π΅ΠΎΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΈΡ Π΄Π°Π½Π½ΡΡ (ΡΠ΅ΡΠ΅ΡΠ°Ρ, ΠΊΡΡΡΠΎΠ²Π°Ρ, Π΄ΠΈΠΏΠ»ΠΎΠΌ, ΠΊΠΎΠ½ΡΡΠΎΠ»ΡΠ½Π°Ρ)
ΠΠΠΠΠ‘Π’ΠΠ Π‘Π’ΠΠ ΠΠΠ ΠΠΠΠΠΠΠΠ― Π ΠΠ‘ΠΠ£ΠΠΠΠΠ ΠΠΠΠΠ Π£Π‘Π¬ Π£ΡΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠ΅ ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΡ
«ΠΠΎΠΌΠ΅Π»ΡΡΠΊΠΈΠΉ Π³ΠΎΡΡΠ΄Π°ΡΡΡΠ²Π΅Π½Π½ΡΠΉ ΡΠ½ΠΈΠ²Π΅ΡΡΠΈΡΠ΅Ρ ΠΈΠΌΠ΅Π½ΠΈ Π€ΡΠ°Π½ΡΠΈΡΠΊΠ° Π‘ΠΊΠΎΡΠΈΠ½Ρ»
ΠΠ°ΡΠ΅ΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΠ°ΠΊΡΠ»ΡΡΠ΅Ρ ΠΠ°ΡΠ΅Π΄ΡΠ° ΠΌΠ°ΡΠ΅ΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΠ£Π Π‘ΠΠΠΠ― Π ΠΠΠΠ’Π ΠΠΈΠ·ΡΠ°Π»ΠΈΠ·Π°ΡΠΈΡ Π³Π΅ΠΎΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΈΡ Π΄Π°Π½Π½ΡΡ ΠΡΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»Ρ:
ΠΡΠΈΡΠ°Π½ΠΎΠ² ΠΠ²Π³Π΅Π½ΠΈΠΉ ΠΠ»Π΅ΠΊΡΠ°Π½Π΄ΡΠΎΠ²ΠΈΡ ΠΠΎΠΌΠ΅Π»Ρ 2014
Π‘ΠΎΠ΄Π΅ΡΠΆΠ°Π½ΠΈΠ΅ ΠΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΠΎΡΡΠ°Π½ΠΎΠ²ΠΊΠ° Π·Π°Π΄Π°ΡΠΈ
1. ΠΠ°Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π½Π½ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΡ ΡΡΠ΅Π΄ΡΡΠ²
1.1 ΠΠΈΠ·ΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΈΠΊΠ»ΠΈΠ½ΠΎΠΌΠ΅ΡΡΠΈΠΈ
1.2 ΠΠΈΠ·ΡΠ°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΊΠ°ΡΠΎΡΠ°ΠΆΠ°
2. ΠΡΡΡΠΎΠ΅Π½Π½ΡΠ΅ ΡΠΈΠΏΡ Π΄Π°Π½Π½ΡΡ Oracle
3. Π‘ΡΡΡΠΊΡΡΡΠ° Π±Π°Π· Π΄Π°Π½Π½ΡΡ , ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ
3.1 Π‘ΡΡΡΠΊΡΡΡΠ° Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ , ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π½Π½ΠΎΠΉ Π΄Π»Ρ Π²ΠΈΠ·ΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΊΠ°ΡΠΎΡΠ°ΠΆΠ°
3.2 Π‘ΡΡΡΠΊΡΡΡΠ° Π±Π°Π· Π΄Π°Π½Π½ΡΡ Π΄Π»Ρ Π²ΠΈΠ·ΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΈΠ½ΠΊΠ»ΠΈΠ½ΠΎΠΌΠ΅ΡΡΠΈΠΈ
4. ΠΠ·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ. ΠΠ»Π³ΠΎΡΠΈΡΠΌ ΡΠ°Π±ΠΎΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ
4.1 ΠΠ·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Ρ ΡΠΊΡΠ°Π½Π½ΠΎΠΉ ΡΠΎΡΠΌΠΎΠΉ Π΄Π»Ρ ΠΊΠ°ΡΠΎΡΠ°ΠΆΠ°
4.2 ΠΠ·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Ρ ΡΠΊΡΠ°Π½Π½ΠΎΠΉ ΡΠΎΡΠΌΠΎΠΉ Π΄Π»Ρ ΠΈΠ½ΠΊΠ»ΠΈΠ½ΠΎΠΌΠ΅ΡΡΠΈΠΈ Π‘ΠΏΠΈΡΠΎΠΊ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½Π½ΡΡ ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠΎΠ² ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ
ΠΠ²Π΅Π΄Π΅Π½ΠΈΠ΅
Π Π½Π°ΡΡΠΎΡΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΡΡΡΡ Π³Π΅ΠΎΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΈΡΡΠ»Π΅Π΄ΠΎΠ²Π°Π½ΠΈΡ ΡΠΊΠ²Π°ΠΆΠΈΠ½.
ΠΠ΅ΠΎΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΈΡΡΠ»Π΅Π΄ΠΎΠ²Π°Π½ΠΈΡ ΡΠΊΠ²Π°ΠΆΠΈΠ½ — ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ², ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ Π΄Π»Ρ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π² ΠΎΠ΄Π½ΠΎΠΌΠ΅ΡΠ½ΠΎΠΉ ΠΏΠ»ΠΎΡΠΊΠΎΡΡΠΈ ΡΠΊΠ²Π°ΠΆΠΈΠ½Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ², ΡΠ°ΠΊΠΈΡ ΠΊΠ°ΠΊ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π΄ΠΈΠ°ΠΌΠ΅ΡΡΠ° ΡΠΊΠ²Π°ΠΆΠΈΠ½Ρ, Π΅Ρ ΠΈΡΠΊΡΠΈΠ²Π»Π΅Π½ΠΈΡ, Π·Π°Π²ΠΎΠ΄Π½ΡΠ½Π½ΠΎΡΡΠΈ, ΡΠΎΠ΄Π΅ΡΠΆΠ°Π½ΠΈΡ ΡΠΎΠ»Π΅ΠΉ Π² Π²ΠΎΠ΄Π΅ ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠ³ΠΎ Π΄ΡΡΠ³ΠΎΠ³ΠΎ. ΠΡΡΠ»Π΅Π΄ΠΎΠ²Π°Π½ΠΈΡ Π²Π΅Π΄ΡΡΡΡ ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ Π³Π΅ΠΎΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΎΠ±ΠΎΡΡΠ΄ΠΎΠ²Π°Π½ΠΈΡ Π½Π΅ΡΡΠ΅Π³Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡΠ°.
ΠΠ½ΠΈ ΡΡΠ΅Π±ΡΠ΅Ρ ΡΡΠ°ΡΠ΅Π»ΡΠ½ΠΎΠΉ ΠΏΡΠΎΡΠ°Π±ΠΎΡΠΊΠΈ ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΡΡ Π΄Π°Π½Π½ΡΡ ΠΎ ΡΠΊΠ²Π°ΠΆΠΈΠ½Π΅ ΠΈ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΠΈ ΠΏΠΎ ΡΡΠ΅Π΄ΡΡΠ²Π°ΠΌ ΡΡΠΎΠ³ΠΎ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΡ ΡΠ²Π΅Π΄Π΅Π½ΠΈΠΉ, ΠΎΠ±Π»Π΅Π³ΡΠ°ΡΡΠΈΡ Π΄Π°Π»ΡΠ½Π΅ΠΉΡΡΡ ΡΠ°Π±ΠΎΡΡ.
ΠΠΎΡΡΠ°Π½ΠΎΠ²ΠΊΠ° Π·Π°Π΄Π°ΡΠΈ
ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΠΉ ΠΈΠΊΠ»ΠΈΠ½ΠΎΠΌΠ΅ΡΡΠΈΡ ΠΊΠ°ΡΠΎΡΠ°ΠΆ oracle
Π¦Π΅Π»ΡΡ ΠΊΡΡΡΠΎΠ²ΠΎΠΉ ΡΠ°Π±ΠΎΡΡ ΡΠ²Π»ΡΠ»ΠΎΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π² ΡΡΠ΅Π΄Π΅ Delphi, Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΡΡΡΠ΅Π΅ Ρ Π±Π°Π·Π°ΠΌΠΈ Π΄Π°Π½Π½ΡΡ Π² Π‘Π£ΠΠ Oracle, ΠΊΠΎΡΠΎΡΠ°Ρ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ Π³Π΅ΠΎΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΈΠ΅ Π΄Π°Π½Π½ΡΠ΅ ΠΈ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅Ρ ΠΈΡ Π² Π²ΠΈΠ΄Π΅ Π³ΡΠ°ΡΠΈΠΊΠΎΠ². Π ΡΠ°ΡΡΠ½ΠΎΡΡΠΈ, ΡΡΠ΅Π±ΠΎΠ²Π°Π»ΠΎΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°ΡΡ Π΄Π²Π΅ ΡΠΊΡΠ°Π½Π½ΡΠ΅ ΡΠΎΡΠΌΡ: ΡΠΎΡΠΌΠ° ΠΈΠ½ΠΊΠ»ΠΈΠ½ΠΎΠΌΠ΅ΡΡΠΈΠΈ ΠΈ Π΄Π»Ρ ΠΊΠ°ΡΠΎΡΠ°ΠΆΠ°.
ΠΠ½ΠΊΠ»ΠΈΠ½ΠΎΠΌΠ΅ΡΡΠΈΡ, ΠΌΠ΅ΡΠΎΠ΄ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΠΎΡΠ½ΠΎΠ²Π½ΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² (ΡΠ³Π»Π° ΠΈ Π°Π·ΠΈΠΌΡΡΠ°), Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΠ·ΡΡΡΠΈΡ ΠΈΡΠΊΡΠΈΠ²Π»Π΅Π½ΠΈΠ΅ Π±ΡΡΠΎΠ²ΡΡ ΡΠΊΠ²Π°ΠΆΠΈΠ½, ΠΏΡΡΡΠΌ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ ΠΈΠ½ΠΊΠ»ΠΈΠ½ΠΎΠΌΠ΅ΡΡΠ°ΠΌΠΈ Ρ ΡΠ΅Π»ΡΡ ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΡ ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΡ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°Ρ Π±ΡΡΡΡΠΈΡ ΡΡ ΡΠΊΠ²Π°ΠΆΠΈΠ½. ΠΠΎ Π΄Π°Π½Π½ΡΠΌ Π·Π°ΠΌΠ΅ΡΠΎΠ² ΡΠ³Π»Π° ΠΈ Π°Π·ΠΈΠΌΡΡΠ° ΠΈΡΠΊΡΠΈΠ²Π»Π΅Π½ΠΈΡ ΡΠΊΠ²Π°ΠΆΠΈΠ½Ρ, Π° ΡΠ°ΠΊΠΆΠ΅ Π³Π»ΡΠ±ΠΈΠ½Ρ ΡΡΠ²ΠΎΠ»Π° Π² ΡΠΎΡΠΊΠ΅ Π·Π°ΠΌΠ΅ΡΠ° ΡΡΡΠΎΠΈΡΡΡ ΠΏΠ»Π°Π½ (ΠΈΠ½ΠΊΠ»ΠΈΠ½ΠΎΠ³ΡΠ°ΠΌΠΌΠ°) — ΠΏΡΠΎΠ΅ΠΊΡΠΈΡ ΠΎΡΠΈ ΡΠΊΠ²Π°ΠΆΠΈΠ½Ρ Π½Π° Π³ΠΎΡΠΈΠ·ΠΎΠ½ΡΠ°Π»ΡΠ½ΡΡ ΠΏΠ»ΠΎΡΠΊΠΎΡΡΡ ΠΈ ΠΏΡΠΎΡΠΈΠ»Ρ — Π²Π΅ΡΡΠΈΠΊΠ°Π»ΡΠ½Π°Ρ ΠΏΡΠΎΠ΅ΠΊΡΠΈΡ Π½Π° ΠΏΠ»ΠΎΡΠΊΠΎΡΡΡ ΠΌΠ°Π³Π½ΠΈΡΠ½ΠΎΠ³ΠΎ ΠΌΠ΅ΡΠΈΠ΄ΠΈΠ°Π½Π°, ΡΠΈΡΠΎΡΠ½ΡΡ ΠΈΠ»ΠΈ Π»ΡΠ±ΡΡ Π΄Ρ. Π’Π°ΠΊΠΎΠ²ΠΎΠΉ ΠΎΠ±ΡΡΠ½ΠΎ ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅ΡΡΡ ΠΏΠ»ΠΎΡΠΊΠΎΡΡΡ, Π² ΠΊΠΎΡΠΎΡΠΎΠΉ ΡΠΎΡΡΠ°Π²Π»ΡΠ΅ΡΡΡ Π³Π΅ΠΎΠ»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΠ°Π·ΡΠ΅Π· ΠΏΠΎ ΠΌΠ΅ΡΡΠΎΡΠΎΠΆΠ΄Π΅Π½ΠΈΡ, ΠΏΡΠΎΡ ΠΎΠ΄ΡΡΠΈΠΉ ΡΠ΅ΡΠ΅Π· ΠΈΡΡΠ»Π΅Π΄ΡΠ΅ΠΌΡΡ ΡΠΊΠ²Π°ΠΆΠΈΠ½Ρ.
ΠΠ°Π½Π½ΡΠ΅ ΠΈΠ½ΠΊΠ»ΠΈΠ½ΠΎΠΌΠ΅ΡΡΠΈΠΈ ΡΠΊΠ²Π°ΠΆΠΈΠ½Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ:
— Π΄Π»Ρ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ Π±ΡΡΠ΅Π½ΠΈΡ ΡΠΊΠ²Π°ΠΆΠΈΠ½Ρ Π² Π·Π°Π΄Π°Π½Π½ΠΎΠΌ Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠΈ
— ΠΏΡΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠΈ ΠΈΡΡΠΈΠ½Π½ΡΡ Π³Π»ΡΠ±ΠΈΠ½ Π·Π°Π»Π΅Π³Π°Π½ΠΈΡ Π³Π΅ΠΎΠ»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ²,
— ΠΏΡΠΈ ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΠΈ ΠΊΠ°ΡΡ ΠΈ ΡΠ°Π·ΡΠ΅Π·ΠΎΠ², ΠΊΠΎΠ³Π΄Π° Π΄Π»Ρ ΡΡΠΈΡ ΡΠ΅Π»Π΅ΠΉ ΠΏΡΠΈΠ²Π»Π΅ΠΊΠ°ΡΡΡΡ ΠΊΠ°ΡΠΎΡΠ°ΠΆΠ½ΡΠ΅ ΠΈ Π±ΡΡΠΎΠ²ΡΠ΅ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π»Ρ.
ΠΠ°ΡΠΎΡΠ°ΠΆ — ΠΈΡΡΠ»Π΅Π΄ΠΎΠ²Π°Π½ΠΈΠ΅ Π»ΠΈΡΠΎΡΡΠ΅ΡΡ ΠΌΠ΅ΡΠΎΠ΄Π°ΠΌΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ (Π±ΡΡΠ΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ ΠΏΡΠΎΠ΄Π°Π²Π»ΠΈΠ²Π°Π½ΠΈΠ΅) ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΡ Π·ΠΎΠ½Π΄ΠΈΡΠΎΠ²ΠΎΡΠ½ΡΡ ΡΠΊΠ²Π°ΠΆΠΈΠ½ ΠΈ ΠΏΡΠΎΠ²Π΅Π΄Π΅Π½ΠΈΡ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΠΉ ΠΏΡΠΈ ΠΏΡΠΎΡ ΠΎΠΆΠ΄Π΅Π½ΠΈΠΈ ΡΠ»Π΅ΠΊΡΡΠΈΡΠ΅ΡΠΊΠΈΠΌΠΈ, ΠΌΠ°Π³Π½ΠΈΡΠ½ΡΠΌΠΈ, ΡΠ°Π΄ΠΈΠΎΠ°ΠΊΡΠΈΠ²Π½ΡΠΌΠΈ, Π°ΠΊΡΡΡΠΈΡΠ΅ΡΠΊΠΈΠΌΠΈ ΠΈ Π΄ΡΡΠ³ΠΈΠΌΠΈ ΠΌΠ΅ΡΠΎΠ΄Π°ΠΌΠΈ.
Π Ρ ΠΎΠ΄Π΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΊΡΡΡΠΎΠ²ΠΎΠΉ ΡΠ°Π±ΠΎΡΡ Π±ΡΠ»ΠΈ ΡΠ΅ΡΠ΅Π½Ρ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ Π·Π°Π΄Π°ΡΠΈ:
1) Π Π°Π·ΡΠ°Π±ΠΎΡΠ°Π½Π° Π±Π°Π·Π° Π΄Π°Π½Π½ΡΡ Π΄Π»Ρ ΠΊΠ°ΡΠΎΡΠ°ΠΆΠ°
2) ΠΡΠΎΡΠ°Π±ΠΎΡΠ°Π½Π° ΡΡΡΡΠΊΡΡΡΠ° Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ Π΄Π»Ρ ΠΈΠ½ΠΊΠ»ΠΈΠ½ΠΎΠΌΠ΅ΡΡΠΈΠΈ
3) ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° ΡΠ°Π±Π»ΠΈΡΠ° Π² Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ Π΄Π»Ρ ΠΈΠ½ΠΊΠ»ΠΈΠ½ΠΎΠΌΠ΅ΡΡΠΈΠΈ, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠ°Ρ ΠΏΠΎΠ»Ρ, Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠ΅ Π΄Π»Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΠΊΠ°ΡΡΡ
4) Π Π°Π·ΡΠ°Π±ΠΎΡΠ°Π½Ρ Π°Π»Π³ΠΎΡΠΈΡΠΌΡ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ Π³ΡΠ°ΡΠΈΠΊΠΎΠ² Π΄Π»Ρ ΠΈΠ½ΠΊΠ»ΠΈΠ½ΠΎΠΌΠ΅ΡΡΠΈΠΈ
5) Π Π°Π·ΡΠ°Π±ΠΎΡΠ°Π½ Π°Π»Π³ΠΎΡΠΈΡΠΌ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ Π³ΡΠ°ΡΠΈΠΊΠΎΠ² Π΄Π»Ρ ΠΊΠ°ΡΠΎΡΠ°ΠΆΠ°
6) Π Π°Π·ΡΠ°Π±ΠΎΡΠ°Π½ Π°Π»Π³ΠΎΡΠΈΡΠΌ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ Π³Π»ΡΠ±ΠΈΠ½ Π΄Π»Ρ ΠΈΠ½ΠΊΠ»ΠΈΠ½ΠΎΠΌΠ΅ΡΡΠΈΠΈ Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ Π²ΠΈΠ΄ΠΈΠΌΠΎΠΉ Π΄Π»Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΎΠ±Π»Π°ΡΡΠΈ ΡΠ°ΡΡΠΈ Π³ΡΠ°ΡΠΈΠΊΠ°
7) ΠΠ»Ρ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½Π½ΡΡ Π²ΡΡΠ΅ Π·Π°Π΄Π°Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π½Ρ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ ΠΈ ΠΊΠ»Π°ΡΡΡ Ρ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠΌΠΈ ΠΌΠ΅ΡΠΎΠ΄Π°ΠΌΠΈ ΠΈ ΡΠ²ΠΎΠΉΡΡΠ²Π°ΠΌΠΈ.
8) ΠΡΠ»Π° Π½Π°Π»Π°ΠΆΠ΅Π½Π° ΡΠ°Π±ΠΎΡΠ° ΠΌΠ΅ΠΆΠ΄Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ ΠΈ Π‘Π£ΠΠ Oracle.
1. ΠΠ°Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π½Π½ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΡ ΡΡΠ΅Π΄ΡΡΠ²
Π Π°Π·ΡΠ°Π±ΠΎΡΠ°Π½Π½ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΎ Π΄Π»Ρ ΠΎΡΡΡΠ΅ΡΡΠ²Π»Π΅Π½ΠΈΡ ΡΠ°Π±ΠΎΡΡ Ρ Π³Π΅ΠΎΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΈΠΌΠΈ Π΄Π°Π½Π½ΡΠΌΠΈ Ρ ΠΏΠΎΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ ΠΈΡ Π²ΠΈΠ·ΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠ΅ΠΉ. Π Π°Π·ΡΠ°Π±ΠΎΡΠ°Π½ΠΎ Π² ΠΈΠ½ΡΠ΅Π³ΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ ΡΡΠ΅Π΄Π΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ Delphi. Π ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ Π±ΡΠ»ΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π½ΠΎ Π΄Π²Π΅ ΡΠΊΡΠ°Π½Π½ΡΠ΅ ΡΠΎΡΠΌΡ, ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΡΡΠΈΠ΅ Π΄ΠΈΠ°Π»ΠΎΠ³ Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ. Π ΡΠ°ΡΡΠ½ΠΎΡΡΠΈ, Π½Π° ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΈΠ· ΡΠΎΡΠΌ Π½Π°Ρ ΠΎΠ΄ΡΡΡΡ ΡΡΡΠΎΠΊΠΈ ΠΌΠ΅Π½Ρ, ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠ΅ Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡΡΠΈΠΌ Π·Π°Π΄Π°ΡΠ°ΠΌ, Π²ΠΎΠ·Π»Π°Π³Π°Π΅ΠΌΡΠ΅ Π½Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ. ΠΠΎΠΏΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅ ΠΎ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΈΠ· ΡΠΎΡΠΌ:
1.1 ΠΠΈΠ·ΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΈΠΊΠ»ΠΈΠ½ΠΎΠΌΠ΅ΡΡΠΈΠΈ
ΠΠ½ΠΊΠ»ΠΈΠ½ΠΎΠΌΠ΅ΡΡΠΈΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Π° Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ Π² Π²ΠΈΠ΄Π΅ Π΄Π²ΡΡ Π³ΡΠ°ΡΠΈΠΊΠΎΠ², ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡΠΈΠΉ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΡΠΊΠ²Π°ΠΆΠΈΠ½Ρ Π² ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π΅, ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½Π½ΡΠ΅ Π² Π΄Π΅ΠΊΠ°ΡΡΠΎΠ²ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°Ρ Π½Π° ΠΏΠ»ΠΎΡΠΊΠΎΡΡΠΈ.
ΠΠ»Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΡΡΠΈ ΠΎΠ±ΠΎΠ·Π½Π°ΡΠΈΠΌ ΠΎΡΡ Π°Π±ΡΡΠΈΡΡ ΡΠΊΠ²Π°ΠΆΠΈΠ½Ρ ΠΠ₯, ΠΎΡΡ ΠΎΡΠ΄ΠΈΠ½Π°Ρ — ΠY, ΠΎΡΡ Π°ΠΏΠΏΠ»ΠΈΠΊΠ°Ρ — OZ.
ΠΠ΅ΡΠ²ΡΠΉ Π³ΡΠ°ΡΠΈΠΊ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅ΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ. ΠΡΠ΄ΠΈΠ½Π°ΡΡ Π³ΡΠ°ΡΠΈΠΊΠ° ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΡΡ ΡΠΎΠ±ΠΎΠΉ ΠΎΡΡ OZ, Ρ. Π΅. Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎ Π³Π»ΡΠ±ΠΈΠ½Ρ ΡΠΊΠ²Π°ΠΆΠΈΠ½Ρ. ΠΠ±ΡΡΠΈΡΡΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Ρ ΡΠΌΠ΅ΡΠ΅Π½ΠΈΡΠΌΠΈ ΡΠΊΠ²Π°ΠΆΠΈΠ½Ρ ΠΎΡ ΠΏΠ΅ΡΠΏΠ΅Π½Π΄ΠΈΠΊΡΠ»ΡΡΠ° ΠΊ ΠΏΠ»ΠΎΡΠΊΠΎΡΡΠΈ Π·Π΅ΠΌΠ»ΠΈ, ΠΎΡΡΠΌΠΈ OX ΠΈ OY.
ΠΡΠΎΡΠΎΠΉ Π³ΡΠ°ΡΠΈΠΊ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ ΠΏΡΠΎΠ΅ΠΊΡΠΈΠ΅ΠΉ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π° XYZ Π½Π° ΠΏΠ»ΠΎΡΠΊΠΎΡΡΡ XY, Π³Π΄Π΅ ΠX ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ ΠΎΡΠΈ Π°Π±ΡΡΠΈΡΡ Π³ΡΠ°ΡΠΈΠΊΠ°, Π° ΠY — ΠΎΡΠ΄ΠΈΠ½Π°ΡΠ°ΠΌ Π³ΡΠ°ΡΠΈΠΊΠ°.
Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΠΏΠΎΡΠ»Π΅ ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΡ Π³ΡΠ°ΡΠΈΠΊΠΎΠ² ΠΌΠΎΠΆΠ½ΠΎ ΡΡΠ΄ΠΈΡΡ ΠΎ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ ΠΊΡΠΈΠ²ΠΎΠΉ Π² ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π΅ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΡΡΠΎΠ³ΠΎ ΠΎ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎΡΡΠΈ Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π±ΡΡΠ΅Π½ΠΈΡ ΡΠΊΠ²Π°ΠΆΠΈΠ½Ρ.
Π’Π°ΠΊΠΆΠ΅, ΡΡΠΎΠΈΡ ΠΎΡΠΌΠ΅ΡΠΈΡΡ, ΡΡΠΎ Π΄Π»Ρ Π²ΡΠΎΡΠΎΠ³ΠΎ Π³ΡΠ°ΡΠΈΠΊΠ° ΠΏΡΠ΅Π΄ΡΡΠΌΠΎΡΡΠ΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ Π³Π»ΡΠ±ΠΈΠ½Ρ ΡΠΊΠ²Π°ΠΆΠΈΠ½Ρ Π½Π° Π²ΡΠ΅ΠΉ ΠΏΡΠΎΡΡΠΆΠ΅Π½Π½ΠΎΡΡΠΈ Π³ΡΠ°ΡΠΈΠΊΠ°. ΠΡΠΈΡΠ΅ΠΌ ΠΊΠ°ΠΊ Π²ΡΠ΅ Π³Π»ΡΠ±ΠΈΠ½Ρ, ΡΠ°ΠΊ ΠΈ Π°Π±ΡΠΎΠ»ΡΡΠ½ΡΠ΅ Π³Π»ΡΠ±ΠΈΠ½Ρ. ΠΡΠ΅Π΄ΡΡΠΌΠΎΡΡΠ΅Π½Π½ΡΠΉ Π΄Π»Ρ ΠΈΡ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ Π°Π»Π³ΠΎΡΠΈΡΠΌ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ:
ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡ ΠΈΡ ΡΡΠ΄ΠΎΠΌ Ρ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ΅ΠΉ ΠΈΠΌ ΡΠΎΡΠΊΠΎΠΉ
ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡ Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ Π²ΠΈΠ΄ΠΈΠΌΠΎΠΉ Π΄Π»Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΡΠ°ΡΡΠΈ Π³ΡΠ°ΡΠΈΠΊΠ°, ΠΏΡΠΈ ΡΡΠΎΠΌ ΡΡΠ°ΡΠ°ΡΡΡ ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠΈΡΡ ΠΈΡ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ Π±Π»ΠΈΠ·ΠΊΠΎ ΠΊ Π΄ΡΡΠ³ Π΄ΡΡΠ³Ρ, Π½ΠΎ ΡΠ°ΠΊ, ΡΡΠΎΠ±Ρ ΠΎΠ½ΠΈ Π½Π΅ Π½Π°Π»Π°ΠΆΠΈΠ²Π°Π»ΠΈΡΡ Π½Π° ΠΎΡΡΠ°Π»ΡΠ½ΡΠ΅ Π³Π»ΡΠ±ΠΈΠ½Ρ.
Π Π°Π·ΡΠ°Π±ΠΎΡΠ°Π½Ρ ΠΌΠ΅ΡΠΎΠ΄Ρ ΡΠ΅Π³ΡΠ»ΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π²ΠΈΠ΄ΠΈΠΌΠΎΡΡΠΈ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅ΠΌΡΡ Π³Π»ΡΠ±ΠΈΠ½, Π²ΡΠΏΠΎΠ»Π½ΡΡΡΠΈΠ΅ΡΡ ΠΏΠΎ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ.
Π’Π°ΠΊΠΆΠ΅ Π²ΡΠΎΡΠΎΠΉ Π³ΡΠ°ΡΠΈΠΊ Π½Π°Π»ΠΎΠΆΠ΅Π½ Π½Π° ΡΡΠ°Π³ΠΌΠ΅Π½Ρ ΠΌΠ΅ΡΡΠ½ΠΎΡΡΠΈ, Π½Π° ΠΊΠΎΡΠΎΡΠΎΠΌ ΠΏΡΠΎΡ ΠΎΠ΄ΡΡ Π³Π΅ΠΎΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΈΡΡΠ»Π΅Π΄ΠΎΠ²Π°Π½ΠΈΡ. ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ΅Π½ΠΈΡ ΠΏΠΎ ΠΊΠ°ΡΡΠ΅, Π² ΡΠΎΠΌ ΡΠΈΡΠ»Π΅ ΠΈ ΠΏΡΠΈΠ±Π»ΠΈΠΆΠ°ΡΡ Π΅Ρ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ.
ΠΠ΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ Π΄Π»Ρ ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΡ Π³ΡΠ°ΡΠΈΠΊΠΎΠ² ΠΈ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΠΊΠ°ΡΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ ΠΈΠ· Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ .
1.2 ΠΠΈΠ·ΡΠ°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΊΠ°ΡΠΎΡΠ°ΠΆΠ°
Π ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π½Π½ΠΎΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ ΠΊΠ°ΡΠΎΡΠ°ΠΆ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π³ΡΠ°ΡΠΈΠΊΠΎΠ², ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΡΡΠΈΡ ΡΠΎΠ±ΠΎΠΉ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊ Π½Π° ΡΠ°Π·Π»ΠΈΡΠ½ΠΎΠΉ Π²ΡΡΠΎΡΠ΅. ΠΡΠ°ΡΠΈΠΊΠΈ Π½Π°Ρ ΠΎΠ΄ΡΡΡΡ Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ Π½Π° ΠΎΠ΄Π½ΠΎΠΌ Π²ΠΈΠ΄ΠΈΠΌΠΎΠΌ ΡΡΠΎΠ²Π½Π΅ Π΄Π»Ρ Π±ΠΎΠ»Π΅Π΅ Π΄Π΅ΡΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅ΠΌΡΡ Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊ. ΠΠ°Π·Π²Π°Π½ΠΈΠ΅ Π³ΡΠ°ΡΠΈΠΊΠ° ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ ΠΌΠ΅ΡΠΎΠ΄Ρ ΠΊΠ°ΡΠΎΡΠ°ΠΆΠ°.
ΠΠ΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ Π΄Π»Ρ ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΡ Π³ΡΠ°ΡΠΈΠΊΠΎΠ² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ ΠΈΠ· Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ . ΠΡΠΈΡΠ΅ΠΌ Π΄Π°Π½Π½ΡΠ΅, Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠ΅ Π΄Π»Ρ ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΡ ΠΈ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ Π³ΡΠ°ΡΠΈΠΊΠ° ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅: Π½Π°ΡΠ°Π»ΡΠ½Π°Ρ Π³Π»ΡΠ±ΠΈΠ½Π°, Ρ ΠΊΠΎΡΠΎΡΠΎΠΉ Π½Π°ΡΠΈΠ½Π°ΡΡΡΡ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΡ, ΡΠ°Π³, Ρ ΠΊΠΎΡΠΎΡΡΠΌ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΡΡΡΡ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΡ, ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΠΉ ΠΈ ΡΠ°ΠΌΠΈ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½Π½ΡΠ΅ Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊΠΈ. Π‘ΠΎΠ²ΠΎΠΊΡΠΏΠ½ΠΎΡΡΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ Π³Π»ΡΠ±ΠΈΠ½ ΠΈ Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊ ΠΈ ΡΠΎΡΡΠ°Π²Π»ΡΡΡ Π³ΡΠ°ΡΠΈΠΊ. ΠΡΠΈΡΠ΅ΠΌ ΠΎΡΠ΄ΠΈΠ½Π°ΡΡ Π³ΡΠ°ΡΠΈΠΊΠ° ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Ρ Π³Π»ΡΠ±ΠΈΠ½Π°ΠΌΠΈ, Π° Π°Π±ΡΡΠΈΡΡΡ — ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½Π½ΡΠΌΠΈ Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊΠ°ΠΌΠΈ.
Π’Π°ΠΊΠΆΠ΅ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ, Π² ΡΠ»ΡΡΠ°Π΅ ΠΎΡΡΡΡΡΡΠ²ΠΈΡ Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊ Π΄Π»Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΠΌΠ΅ΡΠΎΠ΄Π° ΠΊΠ°ΡΠΎΡΠ°ΠΆΠ°, ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ Π΄ΠΈΠ°Π»ΠΎΠ³Π° Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ, ΡΠΊΠ°Π·Π°ΡΡ ΠΌΠ΅ΡΡΠΎΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΡΠ΅ΠΊΡΡΠΎΠ²ΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π° Ρ Π½ΡΠΆΠ½ΠΎΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠ΅ΠΉ.
ΠΠ±Π΅ ΡΠ°ΡΡΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΠΊΠ°ΠΊ Π±ΡΠ»ΠΎ ΡΠΊΠ°Π·Π°Π½ΠΎ ΡΠ°Π½Π½Π΅Π΅, ΠΏΠΎΠ»ΡΡΠ°ΡΡ Π΄Π°Π½Π½ΡΠ΅ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ ΠΈΠ· ΡΠ°Π±Π»ΠΈΡ Π±Π°Π· Π΄Π°Π½Π½ΡΡ . ΠΠ°Π·Ρ Π΄Π°Π½Π½ΡΡ Π½Π°Ρ ΠΎΠ΄ΡΡΡΡ Π² Π‘Π£ΠΠ Oracle.
ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΏΡΠΎΠ²ΠΎΠ΄ΠΈΡ Π½ΡΠΆΠ½ΡΠ΅ Π΅ΠΌΡ ΠΌΠ°Π½ΠΈΠΏΡΠ»ΡΡΠΈΠΈ Ρ ΠΏΡΠΈΠΊΠ»Π°Π΄Π½ΠΎΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΎΠΉ, ΡΠ΅ΠΌ ΡΠ°ΠΌΡΠΌ, ΠΏΠΎΡΡΠ»Π°Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ Π·Π°ΠΏΡΠΎΡΡ Π΄Π°Π½Π½ΡΡ Π½Π° ΡΠ΅ΡΠ²Π΅Ρ Ρ Π±Π°Π·ΠΎΠΉ Π΄Π°Π½Π½ΡΡ , ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π½ΠΎΠΉ Π΄Π»Ρ ΡΡΠΎΠ³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. ΠΠΎΡΠ»Π΅ ΡΠ΅Π³ΠΎ Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠ΅ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ ΡΡΠΈ Π·Π°ΠΏΡΠΎΡΡ ΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΏΠΎΡΡΠ»Π°ΡΡΡΡ Π½ΡΠΆΠ½ΡΠ΅ Π΅ΠΌΡ Π΄Π°Π½Π½ΡΠ΅, Π»ΠΈΠ±ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡΡΡ Π΄Π°Π½Π½ΡΠ΅ Π² ΡΠ°ΠΌΠΎΠΉ Π±Π°Π·Π΅. (Π ΠΈΡΡΠ½ΠΎΠΊ 1)
Π ΠΈΡΡΠ½ΠΎΠΊ 1
2. ΠΡΡΡΠΎΠ΅Π½Π½ΡΠ΅ ΡΠΈΠΏΡ Π΄Π°Π½Π½ΡΡ Oracle
VARCHAR2 (ΡΠ°Π·ΠΌΠ΅Ρ) [BYTE|CHAR]
Π‘ΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΠΎΠ΅ ΠΏΠΎΠ»Π΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π΄Π»ΠΈΠ½Ρ Ρ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠΉ Π΄Π»ΠΈΠ½ΠΎΠΉ Π΄ΠΎ 4000 Π±Π°ΠΉΡ, ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½Π°Ρ Π΄Π»ΠΈΠ½Π° 1 Π±Π°ΠΉΡ. ΠΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΎΡ CHAR ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ Π΄Π»Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ Π΄Π»ΠΈΠ½Ρ ΡΡΡΠΎΠΊΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΠ°ΠΊ Π½Π°Π·ΡΠ²Π°Π΅ΠΌΠ°Ρ ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½Π°Ρ ΡΠ΅ΠΌΠ°Π½ΡΠΈΠΊΠ°; BYTE ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ Π΄Π»Ρ ΡΡΠΎΠΉ ΡΠ΅Π»ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π±Π°ΠΉΡΠΎΠ²Π°Ρ ΡΠ΅ΠΌΠ°Π½ΡΠΈΠΊΠ°.
NVARCHAR2 (ΡΠ°Π·ΠΌΠ΅Ρ)
ΠΠΎΠ»Π΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π΄Π»ΠΈΠ½Ρ Ρ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΡΠΌ ΡΠ°Π·ΠΌΠ΅ΡΠΎΠΌ 4000 Π±Π°ΠΉΡ.
NUMBER (p, s)
Π§ΠΈΡΠ»ΠΎΠ²ΠΎΠΉ ΡΡΠΎΠ»Π±Π΅Ρ Ρ Π·Π°Π΄Π°Π½Π½ΡΠΌΠΈ ΡΠ°Π·ΡΡΠ΄Π½ΠΎΡΡΡΡ (p) ΠΈ ΠΌΠ°ΡΡΡΠ°Π±ΠΎΠΌ (s). Π Π°Π·ΡΡΠ΄Π½ΠΎΡΡΡ ΠΌΠΎΠΆΠ΅Ρ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡΡΡ Π² Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π΅ ΠΎΡ 1 Π΄ΠΎ 38, Π° ΠΌΠ°ΡΡΡΠ°Π± — ΠΎΡ -84 Π΄ΠΎ 127.
LONG
ΠΠΎΠ»Π΅ Π΄Π°Π½Π½ΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π΄Π»ΠΈΠ½Ρ, ΡΠ°Π·ΠΌΠ΅Ρ ΠΏΠΎΠ»Ρ Π΄ΠΎ 2 ΠΠ±Π°ΠΉΡ
DATE
ΠΠ½Π°ΡΠ΅Π½ΠΈΡ Π΄Π°Ρ, Π½Π°ΡΠΈΠ½Π°Ρ Ρ 1 ΡΠ½Π²Π°ΡΡ 4712 Π³. Π΄ΠΎ Π½.Ρ. ΠΈ Π·Π°ΠΊΠ°Π½ΡΠΈΠ²Π°Ρ 31 Π΄Π΅ΠΊΠ°Π±ΡΡ 9999 Π³.
BINARY_FLOAT
32-Π±ΠΈΡΠΎΠ²ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ Ρ ΠΏΠ»Π°Π²Π°ΡΡΠ΅ΠΉ ΡΠΎΡΠΊΠΎΠΉ.
BYNARY_DOUBLE
64-Π±ΠΈΡΠΎΠ²ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ Ρ ΠΏΠ»Π°Π²Π°ΡΡΠ΅ΠΉ ΡΠΎΡΠΊΠΎΠΉ.
TIMESTAMP (ΡΠΎΡΠ½ΠΎΡΡΡ ΡΠ΅ΠΊΡΠ½Π΄)
ΠΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ Π΄Π°ΡΡ ΠΈ Π²ΡΠ΅ΠΌΡ (Π³ΠΎΠ΄, ΠΌΠ΅ΡΡΡ, ΡΠΈΡΠ»ΠΎ; ΡΠ°ΡΡ, ΠΌΠΈΠ½ΡΡΡ, ΡΠ΅ΠΊΡΠ½Π΄Ρ ΠΈ Π΄ΠΎΠ»ΠΈ ΡΠ΅ΠΊΡΠ½Π΄). ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΠΎΡΠ½ΠΎΡΡΠΈ ΡΠ΅ΠΊΡΠ½Π΄ ΠΌΠΎΠΆΠ΅Ρ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡΡΡ ΠΎΡ 0 Π΄ΠΎ 9; Π΄ΡΡΠ³ΠΈΠΌΠΈ ΡΠ»ΠΎΠ²Π°ΠΌΠΈ, ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅ΡΡΡ ΡΠΎΡΠ½ΠΎΡΡΡ Π΄ΠΎ ΠΎΠ΄Π½ΠΎΠΉ ΠΌΠΈΠ»Π»ΠΈΠ°ΡΠ΄Π½ΠΎΠΉ ΡΠ΅ΠΊΡΠ½Π΄Ρ. ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΡΠ°Π²Π½ΠΎ 6 (ΠΎΠ΄Π½Π° ΠΌΠΈΠ»Π»ΠΈΠΎΠ½Π½Π°Ρ ΡΠ΅ΠΊΡΠ½Π΄Ρ).
TIMESTAMP (ΡΠΎΡΠ½ΠΎΡΡΡ_ΡΠ΅ΠΊΡΠ½Π΄) WITH TIME ZONE
Π‘ΠΎΠ΄Π΅ΡΠΆΠΈΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ TIMESTAMP, ΠΊ ΠΊΠΎΡΠΎΡΠΎΠΌΡ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΎ ΡΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅, ΡΠ²ΡΠ·Π°Π½Π½ΠΎΠ΅ Ρ ΡΠ°ΡΠΎΠ²ΡΠΌ ΠΏΠΎΡΡΠΎΠΌ.
TIMESTAMP (ΡΠΎΡΠ½ΠΎΡΡΡ_ΡΠ΅ΠΊΡΠ½Π΄) WITH LOCAL TIME ZONE
ΠΡΠΎΡ ΡΠΈΠΏ Π΄Π°Π½Π½ΡΡ ΠΏΠΎΡ ΠΎΠΆ Π½Π° TIMESTAMP (ΡΠΎΡΠ½ΠΎΡΡΡ ΡΠ΅ΠΊΡΠ½Π΄) WITH TIME ZONE Π·Π° ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ΠΌ ΡΠΎΠ³ΠΎ, ΡΡΠΎ:
1) ΠΡΠΈ ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΠΈ Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ Π΄Π°ΡΠ° ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡΡΡ ΠΊ ΡΠ°ΡΠΎΠ²ΠΎΠΌΡ ΠΏΠΎΡΡΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ
2) ΠΡΠΈ Π²ΡΠ±ΠΎΡΠΊΠ΅ Π΄Π°Π½Π½ΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π±ΡΠ΄Π΅Ρ Π²ΠΈΠ΄Π΅ΡΡ ΡΡΠΈ Π΄Π°Π½Π½ΡΠ΅ Π² ΠΏΠ΅ΡΠ΅ΡΡΠ΅ΡΠ΅ Π½Π° ΡΠ°ΡΠΎΠ²ΠΎΠΉ ΠΏΠΎΡΡ ΡΠ΅Π°Π½ΡΠ°.
INTERVAL YEAR (ΡΠ°Π·ΡΡΠ΄Π½ΠΎΡΡΡ_Π³ΠΎΠ΄Π°) TO MONTH
Π₯ΡΠ°Π½ΠΈΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΈΠ½ΡΠ΅ΡΠ²Π°Π»Π° Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ, Π²ΡΡΠ°ΠΆΠ΅Π½Π½ΠΎΠ΅ Π² Π³ΠΎΠ΄Π°Ρ ΠΈ ΠΌΠ΅ΡΡΡΠ°Ρ . ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΠ°Π·ΡΡΠ΄Π½ΠΎΡΡΡ Π³ΠΎΠ΄Π° ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ ΡΠΈΡΠ»ΠΎ ΡΠΈΡΡ Π² ΠΏΠΎΠ»Π΅ YEAR Π΄Π°ΡΡ.
INTERVAL DAY (ΡΠ°Π·ΡΡΠ΄Π½ΠΎΡΡΡ_Π΄Π½Π΅ΠΉ) TO SECOND (ΡΠΎΡΠ½ΠΎΡΡΡ ΡΠ΅ΠΊΡΠ½Π΄)
Π₯ΡΠ°Π½ΠΈΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΈΠ½ΡΠ΅ΡΠ²Π°Π»Π° Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ, Π²ΡΡΠ°ΠΆΠ΅Π½Π½ΠΎΠ΅ Π² Π΄Π½ΡΡ , ΡΠ°ΡΠ°Ρ , ΠΌΠΈΠ½ΡΡΠ°Ρ , ΡΠ΅ΠΊΡΠ½Π΄Π°Ρ ΠΈ Π΄ΠΎΠ»ΡΡ ΡΠ΅ΠΊΡΠ½Π΄Ρ. ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΠ°Π·ΡΡΠ΄Π½ΠΎΡΡΡ Π΄Π½Π΅ΠΉ Π»Π΅ΠΆΠΈΡ Π² ΠΈΠ½ΡΠ΅ΡΠ²Π°Π»Π΅ ΠΎΡ 0 Π΄ΠΎ 9. ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΡΠ°Π²Π½ΠΎ 2. ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΠΎΡΠ½ΠΎΡΡΡ ΡΠ΅ΠΊΡΠ½Π΄ Π°Π½Π°Π»ΠΎΠ³ΠΈΡΠ½ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΡΠΎΡΠ½ΠΎΡΡΡ ΡΠ΅ΠΊΡΠ½Π΄ Π΄Π»Ρ ΡΠΈΠΏΠ° Π΄Π°Π½Π½ΡΡ TIMESTAMP. ΠΠ½ΠΎ ΡΠ°ΠΊΠΆΠ΅ Π»Π΅ΠΆΠΈΡ Π² ΠΈΠ½ΡΠ΅ΡΠ²Π°Π»Π΅ ΠΎΡ 0 Π΄ΠΎ 9, Π° Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΡΠ°Π²Π½ΠΎ 6.
RAW (ΡΠ°Π·ΠΌΠ΅Ρ)
ΠΠΎΠ»Π΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π΄Π»ΠΈΠ½Ρ (Π΄ΠΎ 2000 Π±Π°ΠΉΡ).
LONG RAW
ΠΠΎΠ»Π΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π΄Π»ΠΈΠ½Ρ (Π΄ΠΎ 2 ΠΠ±Π°ΠΉΡ), ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΠΎΠ΅ Π΄Π»Ρ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ Π΄Π²ΠΎΠΈΡΠ½ΡΡ Π΄Π°Π½Π½ΡΡ .
ROWID
ΠΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ (Π² ΠΊΠΎΠ΄ΠΈΡΠΎΠ²ΠΊΠ΅ base-64) Π² Π²ΠΈΠ΄Π΅ ΡΡΡΠΎΠΊΠΈ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΠΎΠ³ΠΎ Π°Π΄ΡΠ΅ΡΠ° ΡΡΡΠΎΠΊΠΈ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ΅ΠΉ ΡΠ°Π±Π»ΠΈΡΡ. ΠΡΠΎΡ Π°Π΄ΡΠ΅Ρ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠΌ Π΄Π»Ρ Π²ΡΠ΅ΠΉ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ .
UROWID [(ΡΠ°Π·ΠΌΠ΅Ρ)]
Π‘ΡΡΠΎΠΊΠ° (Π² ΠΊΠΎΠ΄ΠΈΡΠΎΠ²ΠΊΠ΅ base-64), ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΡΡΠ°Ρ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΠΉ Π°Π΄ΡΠ΅Ρ ΡΡΡΠΎΠΊΠΈ ΠΈΠ½Π΄Π΅ΠΊΡ-ΡΠ°Π±Π»ΠΈΡΡ; Π΄Π»ΠΈΠ½Π° Π΄ΠΎ 4000 Π±Π°ΠΉΡ.
CHAR (ΡΠ°Π·ΠΌΠ΅Ρ) [BYTE|CHAR]
Π‘ΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΠΎΠ΅ ΠΏΠΎΠ»Π΅ ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ Π΄Π»ΠΈΠ½Ρ, ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΠΌΠΎΠΉ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ΠΌ ΡΠ°Π·ΠΌΠ΅Ρ.
ΠΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π΄Π»ΠΈΠ½Ρ ΡΠ°Π²Π½ΠΎ 1 Π±Π°ΠΉΡ, ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ — 2000 Π±Π°ΠΉΡ. ΠΠ°ΡΠ°ΠΌΠ΅ΡΡΡ BYTE ΠΈ CHAR ΡΠΊΠ°Π·ΡΠ²Π°ΡΡ Π½Π° ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π±Π°ΠΉΡΠΎΠ²ΠΎΠΉ ΠΈΠ»ΠΈ ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΠΎΠΉ ΡΠ΅ΠΌΠ°Π½ΡΠΈΠΊΠΈ, ΠΊΠ°ΠΊ ΠΈ VARCHAR2.
NCHAR (ΡΠ°Π·ΠΌΠ΅Ρ)
ΠΠΎΠ»Π΅ Π΄Π»Ρ ΡΠ°Π·ΠΌΠ΅ΡΠ΅Π½ΠΈΡ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ Π΄Π»ΠΈΠ½Ρ (ΡΠΎΡΡΠΎΡΡΠΈΡ ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ Π±Π°ΠΉΡΠΎΠ²). ΠΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΡΠΉ ΡΠ°Π·ΠΌΠ΅Ρ ΠΏΠΎΠ»Ρ — 2000 Π±Π°ΠΉΡ. ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ — 1 Π±Π°ΠΉΡ.
CLOB
Π‘ΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΠΉ Π±ΠΎΠ»ΡΡΠΎΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠΉ ΠΎΠ΄Π½ΠΎΠ±Π°ΠΉΡΠΎΠ²ΡΠ΅ ΠΈΠ»ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠ±Π°ΠΉΡΠ½ΡΠ΅ ΡΠΈΠΌΠ²ΠΎΠ»Ρ; ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΠΊΠ°ΠΊ ΠΎΠ΄Π½ΠΎΠ±Π°ΠΉΡΠ½ΡΠ΅, ΡΠ°ΠΊ ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠ±Π°ΠΉΡΠ½ΡΠ΅ Π½Π°Π±ΠΎΡΡ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ². ΠΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΡΠΉ ΡΠ°Π·ΠΌΠ΅Ρ ΠΎΠ±ΡΠ΅ΠΊΡΠ° ΡΠ°Π²Π΅Π½ (4 ΠΠ±Π°ΠΉΡ-1)*DB_BLOCK_SIZE.
NCLOB
ΠΠ½Π°Π»ΠΎΠ³ΠΈΡΠ΅Π½ CLOB Π·Π° ΡΠ΅ΠΌ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ΠΌ, ΡΡΠΎ Π² Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ Π²ΠΌΠ΅ΡΡΠΎ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² ΠΈΠ· Π½Π°Π±ΠΎΡΠΎΠ² ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ Π΄Π»ΠΈΠ½Ρ ΠΈΠ»ΠΈ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π΄Π»ΠΈΠ½Ρ Π·Π°ΠΏΠΈΡΡΠ²Π°ΡΡΡΡ ΡΠΈΠΌΠ²ΠΎΠ»Ρ Unicode. ΠΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΡΠΉ ΡΠ°Π·ΠΌΠ΅Ρ ΠΎΠ±ΡΠ΅ΠΊΡΠ° ΡΠ°Π²Π΅Π½ (4 ΠΠ±Π°ΠΉΡ — 1)*DB_BLOCK_SIZE.
BLOB
ΠΠ²ΠΎΠΈΡΠ½ΡΠΉ Π±ΠΎΠ»ΡΡΠΎΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ. ΠΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΡΠΉ ΡΠ°Π·ΠΌΠ΅Ρ ΠΎΠ±ΡΠ΅ΠΊΡΠ° ΡΠ°Π²Π΅Π½ ΡΠ°Π²Π΅Π½ (4 ΠΠ±Π°ΠΉΡ — 1)*DB_BLOCK_SIZE.
BFILE
Π£ΠΊΠ°Π·Π°ΡΠ΅Π»Ρ Π½Π° Π±ΠΎΠ»ΡΡΠΎΠΉ Π΄Π²ΠΎΠΈΡΠ½ΡΠΉ ΡΠ°ΠΉΠ», Ρ ΡΠ°Π½ΡΡΠΈΠΉΡΡ Π²Π½Π΅ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ . ΠΠ²ΠΎΠΈΡΠ½ΡΠ΅ ΡΠ°ΠΉΠ»Ρ Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΡΡ Π΄ΠΎΡΡΡΠΏΠ½Ρ Ρ ΡΠ΅ΡΠ²Π΅ΡΠ°, Π½Π° ΠΊΠΎΡΠΎΡΠΎΠΌ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡ Oracle. ΠΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΡΠΉ ΡΠ°Π·ΠΌΠ΅Ρ ΠΎΠ±ΡΠ΅ΠΊΡΠ° ΡΠ°Π²Π΅Π½ 4 ΠΠ±Π°ΠΉΡ.
3 Π‘ΡΡΡΠΊΡΡΡΠ° Π±Π°Π· Π΄Π°Π½Π½ΡΡ , ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ
Π ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΊΡΡΡΠΎΠ²ΠΎΠΉ ΡΠ°Π±ΠΎΡΡ, Π±ΡΠ»Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π½Π° Π±Π°Π·Π° Π΄Π°Π½Π½ΡΡ karotaj, ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π½Π° Π΅Ρ ΡΡΡΡΠΊΡΡΡΠ° ΠΈ ΡΡΡΡΠΊΡΡΡΠ° ΡΠ°ΠΌΠΈΡ ΡΠ°Π±Π»ΠΈΡ.
Π’Π°ΠΊΠΆΠ΅ Π±ΡΠ»Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π½Π° ΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΡΠ°Π±Π»ΠΈΡΠ° Π² Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ geo_incr, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π° Π΄Π»Ρ Π²ΠΈΠ·ΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΈΠ½ΠΊΠ»ΠΈΠ½ΠΎΠΌΠ΅ΡΡΠΈΠΈ. Π’Π°Π±Π»ΠΈΡΠ° Ρ ΡΠ°Π½ΠΈΡ Π΄Π°Π½Π½ΡΠ΅ ΠΎ ΠΊΠ°ΡΡΠ΅ ΠΌΠ΅ΡΡΠ½ΠΎΡΡΠΈ, Π½Π° ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ Π±ΡΡΠ΅Π½ΠΈΠ΅ ΡΠΊΠ²Π°ΠΆΠΈΠ½Ρ.
3.1 Π‘ΡΡΡΠΊΡΡΡΠ° Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ , ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π½Π½ΠΎΠΉ Π΄Π»Ρ Π²ΠΈΠ·ΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΊΠ°ΡΠΎΡΠ°ΠΆΠ°
Π‘ΠΎΡΡΠ°Π² ΡΠ°Π±Π»ΠΈΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ
Π Π΄Π°Π½Π½ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΠ΅ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½Ρ Π²ΡΠ΅ ΡΠ°Π±Π»ΠΈΡΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ :
ΠΠ°ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ°Π±Π»ΠΈΡΡ | ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ | |
WELL_VID | Π‘ΠΎΠ΄Π΅ΡΠΆΠΈΡ ΡΠ²Π΅Π΄Π΅Π½ΠΈΡ ΠΎ Π²ΠΈΠ΄Π°Ρ ΠΊΠ°ΡΠΎΡΠ°ΠΆΠ° | |
WELL_METOD | Π‘ΠΎΠ΄Π΅ΡΠΆΠΈΡ ΡΠ²Π΅Π΄Π΅Π½ΠΈΡ ΠΎ ΠΌΠ΅ΡΠΎΠ΄Π΅ ΠΊΠ°ΡΠΎΡΠ°ΠΆΠ° | |
WELL_KRIV | Π‘ΠΎΠ΄Π΅ΡΠΆΠΈΡ ΡΠ²Π΅Π΄Π΅Π½ΠΈΡ ΠΎ Π³ΡΠ°ΡΠΈΠΊΠ°Ρ , ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡΠΈΡ Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊΠΈ ΠΊΠ°ΡΠΎΡΠ°ΠΆΠ°. Π‘Π²ΡΠ·Π°Π½Π° Ρ WELL_VID ΠΈ WELL_METOD | |
Π‘ΡΡΡΠΊΡΡΡΠ° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π½Π½ΡΡ ΡΠ°Π±Π»ΠΈΡ
Π’Π°Π±Π»ΠΈΡΠ° WELL_VID:
ΠΠ°ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎΠ»Ρ | Π’ΠΈΠΏ ΠΏΠΎΠ»Ρ | ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ | |
COD | NUMBER | ΠΠ΅ΡΠ²ΠΈΡΠ½ΡΠΉ ΠΊΠ»ΡΡ. ΠΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ Π·Π°ΠΏΠΈΡΠΈ | |
NAME | VARCHAR2 | ΠΠ°ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠ΅ Π²ΠΈΠ΄Π° ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΠΊΠ°ΡΠΎΡΠ°ΠΆΠ° | |
Π’Π°Π±Π»ΠΈΡΠ° WELL_METOD:
ΠΠ°ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎΠ»Ρ | Π’ΠΈΠΏ ΠΏΠΎΠ»Ρ | ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ | |
COD | NUMBER | ΠΠ΅ΡΠ²ΠΈΡΠ½ΡΠΉ ΠΊΠ»ΡΡ. ΠΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ Π·Π°ΠΏΠΈΡΠΈ | |
METOD | VARCHAR2 | ΠΠ°ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΌΠ΅ΡΠΎΠ΄Π° ΠΊΠ°ΡΠΎΡΠ°ΠΆΠ° | |
GLUB | NUMBER | ΠΠ°ΡΠ°Π»ΡΠ½Π°Ρ Π³Π»ΡΠ±ΠΈΠ½Π° | |
SHAG | NUMBER | Π Π°ΡΡΡΠΎΡΠ½ΠΈΠ΅, ΡΠ΅ΡΠ΅Π· ΠΊΠΎΡΠΎΡΠΎΠ΅ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊΠΈ ΡΠΊΠ²Π°ΠΆΠΈΠ½Ρ | |
NUM | NUMBER | ΠΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΠΉ Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊ ΡΠΊΠ²Π°ΠΆΠΈΠ½Ρ | |
MAS | BLOB | Π‘ΠΎΠ΄Π΅ΡΠΆΠΈΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ ΠΎΠ± ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΡΡ Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊΠ°Ρ ΡΠΊΠ²Π°ΠΆΠΈΠ½Ρ | |
Π’Π°Π±Π»ΠΈΡΠ° WELL_KRIV:
ΠΠ°ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎΠ»Ρ | Π’ΠΈΠΏ ΠΏΠΎΠ»Ρ | ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ | |
COD | NUMBER | ΠΠ΅ΡΠ²ΠΈΡΠ½ΡΠΉ ΠΊΠ»ΡΡ. ΠΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ Π·Π°ΠΏΠΈΡΠΈ | |
COD_VID | NUMBER | ΠΡΠΎΡΠΈΡΠ½ΡΠΉ ΠΊΠ»ΡΡ. ΠΠΎΠ΄ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ΅Π³ΠΎ Π²ΠΈΠ΄Π° ΠΊΠ°ΡΠΎΡΠ°ΠΆΠ° | |
COD_METOD | NUMBER | ΠΡΠΎΡΠΈΡΠ½ΡΠΉ ΠΊΠ»ΡΡ. ΠΠΎΠ΄ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ΅Π³ΠΎ ΠΌΠ΅ΡΠΎΠ΄Π° ΠΊΠ°ΡΠΎΡΠ°ΠΆΠ° | |
3.2 Π‘ΡΡΡΠΊΡΡΡΠ° Π±Π°Π· Π΄Π°Π½Π½ΡΡ Π΄Π»Ρ Π²ΠΈΠ·ΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΈΠ½ΠΊΠ»ΠΈΠ½ΠΎΠΌΠ΅ΡΡΠΈΠΈ
Π‘ΠΎΡΡΠ°Π² ΡΠ°Π±Π»ΠΈΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ
Π Π΄Π°Π½Π½ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΠ΅ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½Ρ Π²ΡΠ΅ ΡΠ°Π±Π»ΠΈΡΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ :
ΠΠ°ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ°Π±Π»ΠΈΡΡ | ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ | |
FIELD_HDR | Π‘ΠΎΠ΄Π΅ΡΠΆΠΈΡ ΡΠ²Π΅Π΄Π΅Π½ΠΈΡ ΠΎ ΠΌΠ΅ΡΡΠΎΡΠΎΠΆΠ΄Π΅Π½ΠΈΡΡ | |
MAP | Π‘ΠΎΠ΄Π΅ΡΠΆΠΈΡ ΡΠ²Π΅Π΄Π΅Π½ΠΈΡ ΠΎ ΠΊΠ°ΡΡΠ΅ ΠΌΠ΅ΡΡΠ½ΠΎΡΡΠΈ | |
WELL_HDR | Π‘ΠΎΠ΄Π΅ΡΠΆΠΈΡ ΡΠ²Π΅Π΄Π΅Π½ΠΈΡ ΠΎ ΡΠΊΠ²Π°ΠΆΠΈΠ½Π°Ρ | |
WELL_INCR | Π‘ΠΎΠ΄Π΅ΡΠΆΠΈΡ Π΄Π°Π½Π½ΡΠ΅ ΠΈΠ½ΠΊΠ»ΠΈΠ½ΠΎΠΌΠ΅ΡΡΠΈΠΈ | |
Π‘ΡΡΡΠΊΡΡΡΠ° ΡΠ°Π±Π»ΠΈΡΡ MAP:
ΠΠ°ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎΠ»Ρ | Π’ΠΈΠΏ ΠΏΠΎΠ»Ρ | ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ | |
COD | NUMBER | ΠΠ΅ΡΠ²ΠΈΡΠ½ΡΠΉ ΠΊΠ»ΡΡ. ΠΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ Π·Π°ΠΏΠΈΡΠΈ | |
NUM | NUMBER | ΠΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠΎΡΠ΅ΠΊ Π² ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ΅ ΠΊΠ°ΡΡΡ | |
COLOR | NUMBER | Π¦Π²Π΅Ρ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ° ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ | |
KOOR_X | BLOB | ΠΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΡ ΡΠΎΡΠ΅ΠΊ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ° ΠΊΠ°ΡΡΡ | |
KOOR_Y | BLOB | ΠΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΡ ΡΠΎΡΠ΅ΠΊ Π² ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ΅ ΠΊΠ°ΡΡΡ | |
4. ΠΠ·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ. ΠΠ»Π³ΠΎΡΠΈΡΠΌ ΡΠ°Π±ΠΎΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ
4.1 ΠΠ·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Ρ ΡΠΊΡΠ°Π½Π½ΠΎΠΉ ΡΠΎΡΠΌΠΎΠΉ Π΄Π»Ρ ΠΊΠ°ΡΠΎΡΠ°ΠΆΠ°
ΠΠΊΡΠ°Π½Π½Π°Ρ ΡΠΎΡΠΌΠ° Π΄Π»Ρ ΠΊΠ°ΡΠΎΡΠ°ΠΆΠ° ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π΅:
Π ΠΈΡΡΠ½ΠΎΠΊ 2
ΠΠΊΡΠ°Π½Π½Π°Ρ ΡΠΎΡΠΌΠ° ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΏΠ°Π½Π΅Π»Ρ ΠΌΠ΅Π½Ρ ΡΠΈΠΏΠ° TMain Menu Ρ ΠΏΡΠ½ΠΊΡΠ°ΠΌΠΈ «ΠΠ°Π½Π½ΡΠ΅"(Ρ ΠΏΠΎΠ΄ΠΏΡΠ½ΠΊΡΠΎΠΌ «ΠΠ°Π³ΡΡΠ·ΠΈΡΡ ΠΈΠ· Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ »), «ΠΡΠ°ΡΠΈΠΊΠΈ"(Ρ ΠΏΠΎΠ΄ΠΏΡΠ½ΠΊΡΠΎΠΌ «ΠΠΎΡΡΡΠΎΠΈΡΡ») ΠΈ ΠΏΠ°Π½Π΅Π»Ρ ΡΠΈΠΏΠ° TPanel Log (Π½Π°ΡΠ»Π΅Π΄ΠΎΠ²Π°Π½ ΠΎΡ TPanel), Π½Π° ΠΊΠΎΡΠΎΡΠΎΠΉ Π±ΡΠ΄ΡΡ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡΡΡ Π³ΡΠ°ΡΠΈΠΊΠΈ. ΠΡΠΈΡΠ΅ΠΌ Π΄Π»Ρ ΠΏΡΠ½ΠΊΡΠΎΠ² ΠΌΠ΅Π½Ρ «ΠΠ°Π³ΡΡΠ·ΠΈΡΡ ΠΈΠ· Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ » ΠΈ «ΠΠΎΡΡΡΠΎΠΈΡΡ» ΠΏΡΠ΅Π΄ΡΡΠΌΠΎΡΡΠ΅Π½Ρ Π³ΠΎΡΡΡΠΈΠ΅ ΠΊΠ»Π°Π²ΠΈΡΠΈ. ΠΠΎΠ΄ΠΏΡΠ½ΠΊΡ ΠΌΠ΅Π½Ρ «ΠΠΎΡΡΡΠΎΠΈΡΡ» Π² Π½Π°ΡΠ°Π»Π΅ ΡΠ°Π±ΠΎΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π½Π΅ Π΄ΠΎΡΡΡΠΏΠ΅Π½ Π΄Π»Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ, Ρ.ΠΊ. ΠΏΠΎΠΊΠ° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ ΡΠ²Π΅Π΄Π΅Π½ΠΈΡ, ΠΏΠΎ ΠΊΠΎΡΠΎΡΡΠΌ ΡΡΡΠΎΠΈΡΡ Π³ΡΠ°ΡΠΈΠΊΠΈ.
ΠΡΠ°ΡΠΈΠΊ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ ΡΠΈΠΏΠΎΠΌ TChart Log (Π½Π°ΡΠ»Π΅Π΄ΠΎΠ²Π°Π½ ΠΎΡ TChart), ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΈΠ· ΠΊΠΎΡΠΎΡΡΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΎΠ΄Π½Ρ ΡΠ΅ΡΠΈΡ ΡΠΈΠΏΠ° TLine Series Log (Π½Π°ΡΠ»Π΅Π΄ΠΎΠ²Π°Π½ ΠΎΡ TLine Series). Π ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΡ ΡΠΈΠΏΠ° TChart Log ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½Ρ Π² ΡΠΏΠΈΡΠΎΠΊ ΡΠΈΠΏΠ° TObject List.
ΠΡΠΈ Π½Π°ΠΆΠ°ΡΠΈΠΈ ΠΏΡΠ½ΠΊΡΠ° ΠΌΠ΅Π½Ρ «ΠΠΎΠ»ΡΡΠΈΡΡ ΠΈΠ· Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ » Π΄Π°Π½Π½ΡΠ΅ ΠΈΠ· Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ Π·Π°Π½ΠΎΡΡΡΡΡ Π² ΡΠΎΠ·Π΄Π°Π½Π½ΡΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠΉ ΠΏΠΎΠ»Ρ Π΄Π»Ρ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ ΡΡΠΈΡ Π΄Π°Π½Π½ΡΡ . ΠΠ·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ Ρ Π±Π°Π·ΠΎΠΉ Π΄Π°Π½Π½ΡΡ ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΠ΅ΡΡΡ ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΠ° ΡΠΈΠΏΠ° TADO Query, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎΡΡΠ»Π°Π΅Ρ sql-Π·Π°ΠΏΡΠΎΡ ΠΊ ΡΠ°Π±Π»ΠΈΡΠ΅ WELL_METOD Π΄Π»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ , ΡΡΠΎΠ±Ρ Π² Π΄Π°Π»ΡΠ½Π΅ΠΉΡΠ΅ΠΌ Π·Π°Π½Π΅ΡΡΠΈ ΠΈΡ Π² ΠΎΠ±ΡΠ΅ΠΊΡ ΡΠΈΠΏΠ° TLogging, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠΉ ΠΏΠΎΠ»Ρ Π΄Π»Ρ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ ΠΌΠ΅ΡΠΎΠ΄Π° ΠΊΠ°ΡΠΎΡΠ°ΠΆΠ° ΠΈ Π΅Π³ΠΎ Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊ.
Π₯ΠΎΡΠ΅ΡΡΡ ΡΠ΄Π΅Π»ΠΈΡΡ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΠΏΠΎΠ»Ρ, Ρ ΡΠ°Π½ΡΡΠ΅ΠΌΡ Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊΠΈ. ΠΠ½ΠΎ ΠΈΠΌΠ΅Π΅Ρ ΡΠΈΠΏ Blob. ΠΠΎΡΡΠΎΠΌΡ Π΄Π»Ρ ΡΡΠ΅Π½ΠΈΡ ΠΈΠ· ΡΡΠΎΠ³ΠΎ ΠΏΠΎΠ»Ρ ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ ΠΏΠΎΡΠΎΠΊ ΡΠΈΠΏΠ° TMemory Stream, Π² ΠΊΠΎΡΠΎΡΡΠΉ Π·Π°Π³ΡΡΠΆΠ°Π΅ΡΡΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ blob-ΠΏΠΎΠ»Ρ, Π° ΠΏΠΎΡΠΎΠΌ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠΌ ΡΡΠ΅Π½ΠΈΡ ΠΈΠ· ΠΏΠΎΡΠΎΠΊΠ° ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΠΏΠΎΡΠΎΠΊΠ° Π·Π°Π½ΠΎΡΠΈΡΡΡ Π² ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠ΅ ΠΏΠΎΠ»Ρ ΠΎΠ±ΡΠ΅ΠΊΡΠ° ΡΠΈΠΏΠ° TLogging.
ΠΡΠ»ΠΈ sql-Π·Π°ΠΏΡΠΎΡ, Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΏΠΎΠ»Π΅, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠ΅Π΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠ΅ Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊΠΈ, ΠΏΡΡΡΡΠΌ — ΡΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ ΠΏΠΎΠΏΡΡΠΊΡ ΠΏΡΠΎΡΠΈΡΠ°ΡΡ ΡΡΠΈ Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊΠΈ ΠΈΠ· ΡΠ°ΠΉΠ»Π°, Π½Π°Ρ ΠΎΠ΄ΡΡΠ΅Π³ΠΎΡΡ Π² ΠΏΠ°ΠΏΠΊΠ΅ data, Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ ΠΌΠ΅ΡΠΎΠ΄Ρ ΠΊΠ°ΡΠΎΡΠ°ΠΆΠ°. ΠΡΠ»ΠΈ ΡΡΠΎ Π½Π΅ ΡΠ΄Π°Π»ΠΎΡΡ, ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π²ΡΠ²ΠΎΠ΄ΠΈΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΎΠ½Π½ΠΎΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΈ ΠΏΡΠΎΡΠΈΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΡΠΊΠ°Π·Π°ΡΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠΉ ΡΠ°ΠΉΠ». ΠΠΈΠ°Π»ΠΎΠ³ Π΄Π»Ρ ΠΎΡΠΊΡΡΡΠΈΡ ΡΠ°ΠΉΠ»Π° ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠΌ ΡΠΈΠΏΠ° TOpen Dialog. ΠΠΎΡΠ»Π΅ ΡΠ΅Π³ΠΎ Π½ΡΠΆΠ½ΠΎ Π·Π°Π½Π΅ΡΡΠΈ ΠΏΡΠΎΡΠΈΡΠ°Π½Π½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ Π² blob-ΠΏΠΎΠ»Π΅.
ΠΠ»Ρ Π·Π°ΠΏΠΈΡΠΈ Π² blob-ΠΏΠΎΠ»Π΅ (ΡΡΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ΄Π΅Ρ ΠΎΡΡΡΠ΅ΡΡΠ²Π»Π΅Π½ΠΎ Π² ΠΎΠΏΠΈΡΠ°Π½Π½ΠΎΠΌ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ·ΠΆΠ΅), ΡΠ°ΠΊΠΆΠ΅ ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ ΠΏΠΎΡΠΎΠΊ ΡΠΈΠΏΠ° TMemory Stream, Π² ΠΊΠΎΡΠΎΡΡΠΉ Π·Π°Π½ΠΎΡΡΡΡΡ Π΄Π°Π½Π½ΡΠ΅, ΠΏΡΠΎΡΠΈΡΠ°Π½Π½ΡΠ΅ ΠΈΠ· ΡΠ°ΠΉΠ»Π°, Π° ΠΏΠΎΡΠΎΠΌ sql-Π·Π°ΠΏΡΠΎΡΠΎΠΌ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΠΏΠΎΡΠΎΠΊΠ° Π·Π°Π½ΠΎΡΠΈΡΡΡ Π² ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΡΡ ΡΠ°Π±Π»ΠΈΡΡ.
ΠΠΎΡΠ»Π΅ Π½Π°ΠΆΠ°ΡΠΈΡ Π½Π° ΠΏΠΎΠ΄ΠΏΡΠ½ΠΊΡ ΠΌΠ΅Π½Ρ «ΠΠΎΠ»ΡΡΠΈΡΡ ΠΈΠ· Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ » ΠΏΠΎΠ΄ΠΏΡΠ½ΠΊΡ ΠΌΠ΅Π½Ρ «ΠΠΎΡΡΡΠΎΠΈΡΡ» ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡ Π΄ΠΎΡΡΡΠΏΠ½ΡΠΌ Π΄Π»Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ.
Π ΠΈΡΡΠ½ΠΎΠΊ 3
ΠΡΠΈ Π½Π°ΠΆΠ°ΡΠΈΠΈ Π½Π° ΡΡΡ ΠΊΠ½ΠΎΠΏΠΊΡ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π΅ (Π ΠΈΡΡΠ½ΠΎΠΊ 3):
1) ΠΠΎΡΡΠ»Π°Π΅ΡΡΡ sql-Π·Π°ΠΏΡΠΎΡ ΠΊ ΡΠ°Π±Π»ΠΈΡΠ΅ WELL_KRIV, Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡΠΈΠΉ Π΅Ρ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅.
2) Π‘ΠΎΠ·Π΄Π°Π΅ΡΡΡ Π½ΡΠΆΠ½ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² (ΡΠ°Π²Π½ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Ρ ΡΡΡΠΎΠΊ Π² ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ sql-Π·Π°ΠΏΡΠΎΡΠ° ΠΈΠ· ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅Π³ΠΎ ΠΏΡΠ½ΠΊΡΠ°) Π΄Π»Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ Π³ΡΠ°ΡΠΈΠΊΠΎΠ². Π Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ΠΎ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ Π² ΡΠΏΠΈΡΠΎΠΊ ΡΠΈΠΏΠ° TObjectList ΡΠΎΠ·Π΄Π°Π½Π½ΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² ΡΠΈΠΏΠ° TChartLog. ΠΡΠΈΡΠ΅ΠΌ ΠΏΡΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠΈ ΡΡΠΈΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² ΡΠΎΠ·Π΄Π°ΡΡΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΡ ΡΠΈΠΏΠ° TLineSeriesLog, Π² ΠΊΠΎΡΠΎΡΡΠ΅ Π΄ΠΎΠ±Π°Π²Π»ΡΡΡΡΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠ΅ ΡΠΎΡΠΊΠΈ ΠΈΠ· ΠΎΠ±ΡΠ΅ΠΊΡΠ° ΡΠΈΠΏΠ° TLogging. Π ΠΊΠ°ΠΆΠ΄ΡΠΉ ΡΠΎΠ·Π΄Π°Π½Π½ΡΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ ΡΠΈΠΏΠ° TChartLog ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ, ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠΉ ΠΌΠ΅ΡΠΎΠ΄Ρ ΠΊΠ°ΡΠΎΡΠ°ΠΆΠ°.
3) ΠΠ΄Π΅Ρ ΡΠ°Π·ΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ ΡΠΈΠΏΠ° TChartLog Π½Π° ΠΏΠ°Π½Π΅Π»ΠΈ ΡΠ°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΡΡΠΎΠ±Ρ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ Π·Π°Π½ΠΈΠΌΠ°Π» ΡΠ°Π²Π½ΠΎΠ΅ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎ ΠΈ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Ρ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ Π±ΡΠ»ΠΈ ΡΠ°Π²Π½ΠΎΠΌΠ΅ΡΠ½ΠΎ ΠΏΠΎ ΠΏΠ°Π½Π΅Π»ΠΈ.
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅.
ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π½Π½ΡΡ ΠΊΠ»Π°ΡΡΠΎΠ² ΠΈ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ Π.
4.2 ΠΠ·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Ρ ΡΠΊΡΠ°Π½Π½ΠΎΠΉ ΡΠΎΡΠΌΠΎΠΉ Π΄Π»Ρ ΠΈΠ½ΠΊΠ»ΠΈΠ½ΠΎΠΌΠ΅ΡΡΠΈΠΈ ΠΠΊΡΠ°Π½Π½Π°Ρ ΡΠΎΡΠΌΠ° Π΄Π»Ρ ΠΈΠΊΠ½Π»ΠΈΠ½ΠΎΠΌΠ΅ΡΡΠΈΠΈ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π΅:
Π ΠΈΡΡΠ½ΠΎΠΊ 4
ΠΠΊΡΠ°Π½Π½Π°Ρ ΡΠΎΡΠΌΠ° ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΏΠ°Π½Π΅Π»Ρ ΠΌΠ΅Π½Ρ ΡΠΈΠΏΠ° TMain Menu ΠΈ Π΄Π²Π° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ° ΡΠΈΠΏΠ° TChartIncr (Π½Π°ΡΠ»Π΅Π΄ΠΎΠ²Π°Π½ ΠΎΡ TChart).
ΠΡΠ°ΡΠΈΠΊΠΈ ΠΈΠ½ΠΊΠ»ΠΈΠ½ΠΎΠΌΠ΅ΡΡΠΈΠΈ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡΡΡ Π½Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π½Π½ΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ°Ρ ΡΠΈΠΏΠ° TChartIncr, ΡΠΈΠΏ ΠΊΠΎΡΠΎΡΡΡ ΠΌΠΎΠΆΠ΅Ρ Π²ΡΠ±ΠΈΡΠ°Π΅ΡΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ Π² Π²ΠΈΠ·ΡΠ°Π»ΡΠ½ΠΎΠΌ ΡΠ²ΠΎΠΉΡΡΠ²Π΅ ΡΡΠΈΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² Type Chart, ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ View Cut, View Top.
ΠΠ°Π½Π΅Π»Ρ ΠΌΠ΅Π½Ρ ΠΈΠΌΠ΅Π΅Ρ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΠΏΡΠ½ΠΊΡΡ ΠΌΠ΅Π½Ρ: «ΠΠ°Π½Π½ΡΠ΅» Ρ ΠΏΠΎΠ΄ΠΏΡΠ½ΠΊΡΠΎΠΌ «ΠΠ°Π³ΡΡΠ·ΠΈΡΡ ΠΈΠ· Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ », «ΠΡΠ°ΡΠΈΠΊΠΈ» Ρ ΠΏΠΎΠ΄ΠΏΡΠ½ΠΊΡΠ°ΠΌΠΈ «ΠΠΎΡΡΡΠΎΠΈΡΡ ΠΏΡΠΎΡΠΈΠ»Ρ ΡΠΊΠ²Π°ΠΆΠΈΠ½Ρ», «ΠΠΎΡΡΡΠΎΠΈΡΡ ΠΏΡΠΎΠ΅ΠΊΡΠΈΡ Π½Π° ΠΏΠ»ΠΎΡΠΊΠΎΡΡΡ», «ΠΠΈΠ΄» Ρ ΠΏΠΎΠ΄ΠΏΡΠ½ΠΊΡΠ°ΠΌΠΈ «ΠΠ»ΡΠ±ΠΈΠ½Ρ» ΠΈ «ΠΠ°ΡΡΠ°», ΠΊΠΎΡΠΎΡΡΠ΅ Π² ΡΠ²ΠΎΡ ΠΎΡΠ΅ΡΠ΅Π΄Ρ ΠΈΠΌΠ΅ΡΡ ΠΏΠΎΠ΄ΠΏΡΠ½ΠΊΡΡ: «ΠΠΊΠ»ΡΡΠΈΡΡ Π³Π»ΡΠ±ΠΈΠ½Ρ», «ΠΠΊΠ»ΡΡΠΈΡΡ Π°Π±ΡΠΎΠ»ΡΡΠ½ΡΠ΅ Π³Π»ΡΠ±ΠΈΠ½Ρ», «ΠΡΠΊΠ»ΡΡΠΈΡΡ Π³Π»ΡΠ±ΠΈΠ½Ρ» Π΄Π»Ρ «ΠΠ»ΡΠ±ΠΈΠ½Ρ» ΠΈ «ΠΠΎΠ±Π°Π²ΠΈΡΡ ΡΠ»Π΅ΠΌΠ΅Π½Ρ ΠΈΠ· ΡΠ°ΠΉΠ»Π°» Π΄Π»Ρ «ΠΠ°ΡΡΠ°». ΠΠ»Ρ Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΠΈΠ· ΠΏΠΎΠ΄ΠΏΡΠ½ΠΊΡΠΎΠ² ΠΏΡΠ΅Π΄ΡΡΠΌΠΎΡΡΠ΅Π½Ρ Π³ΠΎΡΡΡΠΈΠ΅ ΠΊΠ»Π°Π²ΠΈΡΠΈ.
ΠΡΠΈ Π·Π°Π³ΡΡΠ·ΠΊΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π΄ΠΎΡΡΡΠΏΠ΅Π½ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΡΠ½ΠΊΡ ΠΌΠ΅Π½Ρ «ΠΠ°Π½Π½ΡΠ΅», ΡΡΠΎΠ±Ρ ΠΈΠ·Π±Π΅ΠΆΠ°ΡΡ Π½Π΅ΠΊΠΎΡΡΠ΅ΠΊΡΠ½ΡΡ Π΄Π»Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ, ΠΏΠΎΡΡΠΎΠΌΡ Π΄Π»Ρ Π΄Π°Π»ΡΠ½Π΅ΠΉΡΠ΅ΠΉ ΡΠ°Π±ΠΎΡΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π½Π°ΠΆΠ°ΡΡ Π½Π° «ΠΠ°Π³ΡΡΠ·ΠΈΡΡ ΠΈΠ· Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ ». Π ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ Π² ΠΎΠ±ΡΠ΅ΠΊΡ ΡΠΈΠΏΠ° TIncr (Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ° ΡΠΈΠΏΠ° TADO Query ΠΏΠΎΡΡΠ»Π°ΡΡΠ΅Π³ΠΎ sql-Π·Π°ΠΏΡΠΎΡ ΠΊ Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ , Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡΠΈΠΉ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΡ ΡΠΊΠ²Π°ΠΆΠΈΠ½Ρ), Π·Π°Π½ΠΎΡΡΡΡΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ Π΄Π»Ρ ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΡ Π³ΡΠ°ΡΠΈΠΊΠΎΠ². Π’Π°ΠΊΠΆΠ΅ ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡ Π΄ΠΎΡΡΡΠΏΠ΅Π½ ΠΏΡΠ½ΠΊΡ ΠΌΠ΅Π½Ρ «ΠΡΠ°ΡΠΈΠΊΠΈ».
ΠΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΡΡΠΎΠΈΡΡ ΠΏΠ΅ΡΠ²ΡΠΉ (Π ΠΈΡΡΠ½ΠΎΠΊ 5) ΠΈΠ»ΠΈ Π²ΡΠΎΡΠΎΠΉ (Π ΠΈΡΡΠ½ΠΎΠΊ 6) Π³ΡΠ°ΡΠΈΠΊΠΈ, Π²ΡΠ±ΡΠ°Π² ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠ΅ ΠΏΡΠ½ΠΊΡΡ ΠΌΠ΅Π½Ρ. ΠΠΎΡΠ»Π΅ Π²ΡΠ±ΠΎΡΠΎΠ² ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΠ· ΡΡΠΈΡ ΠΏΡΠ½ΠΊΡΠΎΠ², ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠ΅ ΠΏΠΎΠ»Ρ ΠΈΠ· ΠΎΠ±ΡΠ΅ΠΊΡΠ° ΡΠΈΠΏΠ° TIncr Π΄ΠΎΠ±Π°Π²Π»ΡΡΡΡΡ Π² ΡΠ΅ΡΠΈΡ ΡΠΈΠΏΠ° TLine Series Incr, Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π½ΡΡ Π² ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ ΡΠΈΠΏΠ° TChartIncr ΠΏΡΠΈ Π΅Π³ΠΎ ΡΠΎΠ·Π΄Π°Π½ΠΈΠΈ.
Π’Π°ΠΊΠΆΠ΅ ΠΏΡΠΈ Π²ΡΠ±ΠΎΡΠ΅ ΠΏΡΠ½ΠΊΡΠ° ΠΌΠ΅Π½Ρ «ΠΠΎΡΡΡΠΎΠΈΡΡ ΡΠΊΠ²Π°ΠΆΠΈΠ½Ρ Π² Π²ΠΈΠ΄Π΅ ΡΠ²Π΅ΡΡ Ρ» ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² ΡΠΈΠΏΠ° TLabelIncr (Π½Π°ΡΠ»Π΅Π΄ΠΎΠ²Π°Π½ ΠΎΡ TLabel), ΠΊΠΎΡΠΎΡΡΠ΅ Π΄ΠΎΠ±Π°Π²Π»ΡΡΡΡΡ Π² ΡΠΏΠΈΡΠΎΠΊ ΡΠΈΠΏΠ° TObject List Label (Π½Π°ΡΠ»Π΅Π΄ΠΎΠ²Π°Π½ ΠΎΡ TObject List). ΠΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ ΠΎΠ½ΠΎ ΠΏΠΎ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌΡ Π°Π»Π³ΠΎΡΠΈΡΠΌΡ:
1) ΠΡΠ»ΠΈ ΡΠ°Π½Π΅Π΅ ΠΎΠ±ΡΠ΅ΠΊΡΡ ΡΠΈΠΏΠ° TLabelIncr Π½Π΅ ΡΠΎΠ·Π΄Π°Π²Π°Π»ΠΈΡΡ, ΡΠΎ Π²ΡΡΠΈΡΠ»ΡΠ΅ΡΡΡ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½Π°Ρ ΡΠΈΡΠΈΠ½Π° Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΈΠ· Π½ΠΈΡ (Π±Π΅ΡΠ΅ΡΡΡ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½Π°Ρ ΠΈΠ»ΠΈ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½Π°Ρ Π²ΡΡΠΎΡΠ° ΠΈ ΠΏΡΠΎΠ²Π΅ΡΡΠ΅ΡΡΡ, ΠΊΠ°ΠΊΠ°Ρ ΠΈΠ· Π½ΠΈΡ Π΄Π΅Π»Π°Π΅Ρ ΡΠΈΡΠΈΠ½Ρ ΠΎΠ±ΡΠ΅ΠΊΡΠ° ΡΠΈΠΏΠ° TLabelIncr Π±ΠΎΠ»ΡΡΠ΅). Π‘ΡΠΎΠΈΡ Π·Π°ΠΌΠ΅ΡΠΈΡΡ, ΡΡΠΎ ΠΏΡΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠΈ ΡΡΠΈΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² ΠΈΡ ΡΠ²ΠΎΠΉΡΡΠ²ΠΎ Autosize ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΎ Π² True.
2) ΠΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΠΏΠΎΠ΄ΡΡΠ΅Ρ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π° ΠΌΠ΅ΡΠΎΠΊ, ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΎΠ·Π΄Π°ΡΡ. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ ΠΏΡΠΎΡΠΌΠ°ΡΡΠΈΠ²Π°ΡΡΡΡ Π²ΡΠ΅ ΡΠΎΡΠΊΠΈ Π³ΡΠ°ΡΠΈΠΊΠ° (ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΎΡΡΠΎΡΡΠΈΡΠΎΠ²Π°Π½Ρ ΠΏΠΎ Π²ΠΎΠ·ΡΠ°ΡΡΠ°Π½ΠΈΡ Π³Π»ΡΠ±ΠΈΠ½Ρ), ΠΈ ΠΏΡΠΎΠ²Π΅ΡΡΠ΅ΡΡΡ, Π±ΡΠ΄Π΅Ρ Π»ΠΈ Π²Ρ ΠΎΠ΄ΠΈΡΡ ΠΌΠ΅ΡΠΊΠ°, ΡΠ°Π·ΠΌΠ΅ΡΠ΅Π½Π½Π°Ρ ΡΡΠ΄ΠΎΠΌ Ρ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ΅ΠΉ Π΅ΠΉ ΡΠΎΡΠΊΠΎΠΉ, Π² Π²ΠΈΠ΄ΠΈΠΌΡΡ ΠΎΠ±Π»Π°ΡΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ° ΡΠΈΠΏΠ° TChartIncr ΠΈ Π½Π΅ Π±ΡΠ΄Π΅Ρ Π»ΠΈ ΠΎΠ½Π° ΡΠ°ΡΡΠΈΡΠ½ΠΎ ΠΈΠ»ΠΈ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΠΏΠ΅ΡΠ΅ΠΊΡΡΠ²Π°ΡΡ ΠΏΠΎΠΌΠ΅ΡΠ΅Π½Π½ΡΡ Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΌΠ΅ΡΠΊΡ. Π’Π΅ΠΌ ΡΠ°ΠΌΡΠΌ ΠΏΠΎΠΌΠ΅ΡΠ°ΡΡΡΡ Π½ΠΎΠΌΠ΅ΡΠ° ΡΠΎΡΠ΅ΠΊ, ΡΠ΄ΠΎΠ²Π»Π΅ΡΠ²ΠΎΡΡΡΡΠΈΡ ΡΡΠ»ΠΎΠ²ΠΈΡ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΌΠ΅ΡΠΊΠΈ.
3) ΠΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈ ΡΠΎΠ·Π΄Π°ΡΡΡΡ ΠΌΠ΅ΡΠΊΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ Π·Π°Π½ΠΎΡΡΡΡΡ Π² ΡΠΏΠΈΡΠΎΠΊ ΡΠΈΠΏΠ° TObject List Label. ΠΡΠΈΡΠ΅ΠΌ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠΎΠ·Π΄Π°Π²Π°Π΅ΠΌΡΡ ΠΌΠ΅ΡΠΎΠΊ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΡΡΡ Π²ΠΎΡ ΠΊΠ°ΠΊ: Π΅ΡΠ»ΠΈ ΡΠΈΡΠ»ΠΎ ΠΏΠΎΠ΄ΡΡΠΈΡΠ°Π½Π½ΡΡ ΠΌΠ΅ΡΠΎΠΊ Π² ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅ΠΌ ΠΏΡΠ½ΠΊΡΠ΅ ΠΏΡΠ΅Π²ΡΡΠ°Π΅Ρ ΡΠΈΡΠ»ΠΎ ΡΠ°Π½Π΅Π΅ ΡΠΎΠ·Π΄Π°Π½Π½ΡΡ ΠΌΠ΅ΡΠΎΠΊ, ΡΠΎ ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ «ΡΠΈΡΠ»ΠΎ ΠΏΠΎΠ΄ΡΡΠΈΡΠ°Π½Π½ΡΡ ΠΌΠ΅ΡΠΎΠΊ" — «ΡΠΈΡΠ»ΠΎ ΡΠ°Π½Π΅Π΅ ΡΠΎΠ·Π΄Π°Π½Π½ΡΡ ΠΌΠ΅ΡΠΎΠΊ». Π ΠΏΡΠΎΡΠΈΠ²Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π½Π΅ ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ Π½ΠΈ ΠΎΠ΄Π½ΠΎΠΉ ΠΌΠ΅ΡΠΊΠΈ.
4) ΠΡΡΠΈΡΠ»ΡΡΡΡΡ ΠΈ ΠΏΡΠΈΡΠ²Π°ΠΈΠ²Π°ΡΡΡΡ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΡ ΡΠ°Π·ΠΌΠ΅ΡΠ΅Π½ΠΈΡ ΠΌΠ΅ΡΠΎΠΊ Π½Π° Π³ΡΠ°ΡΠΈΠΊΠ΅.
ΠΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ Π² ΡΠ΅ΡΠΈΡ ΡΠΈΠΏΠ° TLine Map (Π½Π°ΡΠ»Π΅Π΄ΠΎΠ²Π°Π½ ΠΎΡ TLine Series) Π·Π°Π³ΡΡΠΆΠ°ΡΡΡΡ Π·Π°ΠΏΠΈΡΠΈ ΠΈΠ· Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ , Π½Π΅ΡΡΡΠΈΠ΅ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΠΊΠ°ΡΡΠ΅ ΠΌΠ΅ΡΡΠ½ΠΎΡΡΠΈ, Π½Π° ΠΊΠΎΡΠΎΡΠΎΠΉ ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½Π° ΡΠΊΠ²Π°ΠΆΠΈΠ½Π°. ΠΡΠ° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΡ Π»ΠΈΠ½ΠΈΠΉ ΠΊΠ°ΡΡΡ, Π° ΡΠ°ΠΊΠΆΠ΅ Π΅Ρ ΡΠ²Π΅Ρ. Π¦Π²Π΅Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΡΡΡ Π² ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠΈ Ρ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»ΡΠ΅ΠΌΡΠΌ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎΠΌ TLine Color, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠ΅ ΡΠ²Π΅ΡΠ°, ΠΏΡΠ΅Π΄ΡΡΠΌΠΎΡΡΠ΅Π½Π½ΡΠ΅ Π΄Π»Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ Π»ΠΈΠ½ΠΈΠΉ. ΠΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΡ ΠΆΠ΅ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡΡ Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ Π² blob-ΠΏΠΎΠ»Π΅, ΠΏΠΎΡΡΠΎΠΌΡ ΠΏΠ΅ΡΠ΅Π΄ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ ΠΈΡ Π² ΡΠ΅ΡΠΈΡ ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ Π΄Π²Π° ΠΏΠΎΡΠΎΠΊΠ° ΡΠΈΠΏΠ° TMemory Stream, Π² ΠΊΠΎΡΠΎΡΡΠΉ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΏΠΎΡΠ»Π°Π½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠΌ ΡΠΈΠΏΠ° TADO Query sql-Π·Π°ΠΏΡΠΎΡΠ°, Π·Π°Π½ΠΎΡΡΡΡΡ Π΄Π°Π½Π½ΡΠ΅ ΠΈΠ· blob-ΠΏΠΎΠ»Ρ. ΠΠΎΡΠ»Π΅ ΡΠ΅Π³ΠΎ ΠΈΠ· ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΈΠ· ΠΏΠΎΡΠΎΠΊΠΎΠ² ΡΠΈΡΠ°ΡΡΡΡ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΡ X ΠΈ Y.
Π ΠΈΡΡΠ½ΠΎΠΊ 5
Π ΠΈΡΡΠ½ΠΎΠΊ 6
ΠΠΏΠΈΡΠ°Π½Π½ΡΠΉ Π²ΡΡΠ΅ Π°Π»Π³ΠΎΡΠΈΡΠΌ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ Π² Π½Π°ΡΠ°Π»Π΅ ΡΠ°Π±ΠΎΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΎΠΉ, Π½ΠΎ ΡΠ°ΠΊΠΆΠ΅ ΠΏΡΠΈ ΡΠΊΡΠΎΠ»Π»ΠΈΠ½Π³Π΅ ΠΈ ΠΏΡΠΈΠ±Π»ΠΈΠΆΠ΅Π½ΠΈΠΈ Π³ΡΠ°ΡΠΈΠΊΠ°. ΠΡΠΎ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ΠΎ ΠΏΠ΅ΡΠ΅ΠΊΡΡΡΠΈΠ΅ΠΌ ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² ΡΠΎΠ±ΡΡΠΈΡ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠΌ ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠΌ ΡΠΎΠ±ΡΡΠΈΠ΅. Π ΠΏΠΎΡΡΠΎΠΌΡ ΠΏΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅ΠΌΠΎΠΉ ΠΎΠ±Π»Π°ΡΡΠΈ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠΎΠ²ΠΊΠ° ΠΌΠ΅ΡΠΎΠΊ (Π ΠΈΡΡΠ½ΠΎΠΊ 7).
Π ΠΈΡΡΠ½ΠΎΠΊ 7
Π ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ ΡΠ°ΠΊΠΆΠ΅ ΠΏΡΠ΅Π΄ΡΡΠΌΠΎΡΡΠ΅Π½ΠΎ ΡΠ΅Π³ΡΠ»ΠΈΡΠΎΠ²ΠΊΠ° ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ Π³Π»ΡΠ±ΠΈΠ½, ΡΡΠΎ ΠΏΡΠ΅Π΄ΡΡΠΌΠΎΡΡΠ΅Π½ΠΎ ΠΏΠΎΠ΄ΠΏΡΠ½ΠΊΡΠ°ΠΌΠΈ ΠΌΠ΅Π½Ρ Π² ΠΏΠΎΠ΄ΠΏΡΠ½ΠΊΡΠ΅ «ΠΠ»ΡΠ±ΠΈΠ½Ρ».
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅. ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π½Π½ΡΡ ΠΊΠ»Π°ΡΡΠΎΠ² ΠΈ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ Π.
Π‘ΠΏΠΈΡΠΎΠΊ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½Π½ΡΡ ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠΎΠ²
1. Π. Π―. ΠΡΡ Π°Π½Π³Π΅Π»ΡΡΠΊΠΈΠΉ. ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π² Delphi 7. ΠΠΎΡΠΊΠ²Π°: ΠΠ·Π΄Π°ΡΠ΅Π»ΡΡΡΠ²ΠΎ ΠΠΈΠ½ΠΎΠΌ 2003. — 1152 ΡΡΡ.
2. ΠΠ΅Π²ΠΈΠ½ ΠΡΠ½ΠΈ, ΠΠΎΠ± ΠΡΠΈΠ»Π°. Oracle Database 10g ΠΠ°ΡΡΠΎΠ»ΡΠ½Π°Ρ ΠΊΠ½ΠΈΠ³Π° Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠ° Π±Π°Π· Π΄Π°Π½Π½ΡΡ . ΠΠΎΡΠΊΠ²Π°: ΠΠ·Π΄Π°ΡΠ΅Π»ΡΡΡΠ²ΠΎ ΠΠΎΡΠΈ. 2008. — 729 ΡΡΡ.
ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π
ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π½Π½ΡΡ ΠΊΠ»Π°ΡΡΠΎΠ² ΠΈ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² Π΄Π»Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΠΊΠ°ΡΠΎΡΠ°ΠΆΠ°
ΠΠ»Π°ΡΡ TLogging, ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π½ΡΠΉ Π΄Π»Ρ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΡΡ Π΄Π°Π½Π½ΡΡ ΠΈΠ· ΡΠ°Π±Π»ΠΈΡΡ WELL_METOD ΠΈ ΠΌΠ°Π½ΠΈΠΏΡΠ»ΡΡΠΈΠΈ ΠΈΠΌΠΈ.
type TLogging=Class (TObject)
private
State: Boolean; //ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ, ΡΠΎΠ·Π΄Π°Π²Π°Π»ΡΡ Π»ΠΈ ΡΠ°Π½Π΅Π΅ ΠΎΠ±ΡΠ΅ΠΊΡ ΠΊΠ»Π°ΡΡΠ°
Cod: array of Integer; //ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΡ Π·Π°ΠΏΠΈΡΠ΅ΠΉ Π² ΡΠ°Π±Π»ΠΈΡΠ΅
Glub: array of Single; //Π½Π°ΡΠ°Π»ΡΠ½ΡΠ΅ Π³Π»ΡΠ±ΠΈΠ½Ρ
Shag: array of Single; //ΠΈΠ½ΡΠ΅ΡΠ²Π°Π»Ρ ΠΌΠ΅ΠΆΠ΄Ρ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΡΠΌΠΈ Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊ
Num: array of Integer; //ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π° ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΠΉ Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊ
Count: Integer; //ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π·Π°ΠΏΠΈΡΠ΅ΠΉ Π² ΡΠ°Π±Π»ΠΈΡΠ΅
Mas: array of array of Single; //Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊΠΈ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΠΉ
Metod:array of String; //Π½Π°ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΡ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² ΠΊΠ°ΡΠΎΡΠ°ΠΆΠ°
public
function GetCod (i: Integer): Integer;
function GetGlub (i: Integer): Single;
function GetShag (i: Integer): Single;
function GetNum (i: Integer): Integer;
function GetCount: Integer;
function GetMas (i, j: Integer): Single;
function GetMetod (i: Integer): String;
procedure GetData;
procedure LoadMasFromFile (FileNameMas: string;k: Integer);
procedure LoadMasFromBlob (k: integer);
procedure SetMasToBlob (k: integer);
Constructor Create;
Destructor Destroy; override;
end;
procedure GetData;
ΠΠ΅ΡΠΎΠ΄ Π·Π°Π³ΡΡΠΆΠ°Π΅Ρ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΠΏΠΎΠ»Π΅ΠΉ ΠΈΠ· Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ Π² ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠ΅ ΠΏΠΎΠ»Ρ ΠΊΠ»Π°ΡΡΠ° TLogging. Π Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ΠΎ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ° ΡΠΈΠΏΠ° TADO Query. ΠΠΎΡΠΎΡΡΠΉ ΡΠ½Π°ΡΠ°Π»Π° ΠΏΠΎΡΡΠ»Π°Π΅Ρ Π·Π°ΠΏΡΠΎΡ Π½Π° ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΠΈΠ· Π±Π°Π·Ρ Π²ΡΠ΅Ρ ΠΏΠΎΠ»Π΅ΠΉ ΠΊΡΠΎΠΌΠ΅ blob-ΠΏΠΎΠ»Ρ (MAS). ΠΠ°ΠΏΠΎΠ»Π½ΡΡΡΡΡ Π²ΡΠ΅ ΠΌΠ°ΡΡΠΈΠ²Ρ, ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠ΅ ΠΏΠΎΠ»ΡΠΌ Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ , ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»ΠΈΠ² Π΄Π»Ρ Π½ΠΈΡ ΠΏΠ°ΠΌΡΡΡ. ΠΠ°Π»Π΅Π΅ ΠΏΠΎΡΡΠ»Π°Π΅ΡΡΡ Π·Π°ΠΏΡΠΎΡ ΠΊ Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ Π½Π° Π²ΠΎΠ·Π²ΡΠ°ΡΠ΅Π½ΠΈΠ΅ Π²ΡΠ΅Ρ Π·Π°ΠΏΠΈΡΠ΅ΠΉ, Π² ΠΊΠΎΡΠΎΡΡΡ ΠΏΠΎΠ»Π΅ MAS Π½Π΅ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΎ, ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½Π½ΡΠΉ Ρ Π·Π°ΠΏΡΠΎΡΠΎΠΌ, Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡΠΈΠΌ Π²ΡΠ΅ Π·Π°ΠΏΠΈΡΠΈ, Π² ΠΊΠΎΡΠΎΡΡΡ ΠΏΠΎΠ»Π΅ MAS Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΎ (Π² ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π·Π°ΠΏΡΠΎΡΠ° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ ΠΊΠΎΠ΄Ρ Π·Π°ΠΏΠΈΡΠ΅ΠΉ, Π½ΠΎ ΠΈ ΠΌΠ΅ΡΠΊΠΈ 1 ΠΈΠ»ΠΈ 0 Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π·Π°ΠΏΠΈΡΠΈ, ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠ΅ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½Π½ΠΎΠΌΡ ΠΈ Π½Π΅Π·Π°ΠΏΠΎΠ»Π½Π΅Π½Π½ΠΎΠΌΡ ΠΏΠΎΠ»Ρ). Π ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠΈ Ρ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠΌ Π·Π°ΠΏΡΠΎΡΠ° Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π·Π°ΠΏΠΈΡΠΈ Π² ΠΊΠ»Π°ΡΡΠ΅ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ Π»ΠΈΠ±ΠΎ ΠΌΠ΅ΡΠΎΠ΄ Load Mas From File ΠΈ Set Mas To Blob (Π² ΡΠ»ΡΡΠ°Π΅ Π΅ΡΠ»ΠΈ ΠΌΠ΅ΡΠΊΠ° ΡΠ°Π²Π½Π° 0), Π»ΠΈΠ±ΠΎ Load Mas From Blob (Π² ΡΠ»ΡΡΠ°Π΅ ΡΠ°Π²Π΅Π½ΡΡΠ²Π° ΠΌΠ΅ΡΠΊΠΈ Π΅Π΄ΠΈΠ½ΠΈΡΠ΅).
procedure Load Mas From File (File Name Mas: string;k: Integer);
ΠΠ΅ΡΠΎΠ΄ ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ ΠΈΠΌΡ ΡΠ°ΠΉΠ»Π° File Name Mas ΠΈ Π½ΠΎΠΌΠ΅Ρ Π·Π°ΠΏΠΈΡΠΈ k Π² ΠΊΠ»Π°ΡΡΠ΅. ΠΠ· ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π° ΡΠΈΡΠ°Π΅ΡΡΡ Num[k] ΡΠΈΡΠ΅Π» ΡΠΈΠΏΠ° Single, ΠΊΠΎΡΠΎΡΡΠ΅ Π·Π°Π½ΠΎΡΡΡΡΡ Π² k-ΡΡΡ ΡΡΡΠΎΠΊΡ ΠΌΠ°ΡΡΠΈΠ²Π° Mas.
procedure Set Mas To Blob (k: integer);
ΠΠ΅ΡΠΎΠ΄, ΠΊΠΎΡΠΎΡΡΠΉ Π² ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ sql-Π·Π°ΠΏΡΠΎΡΠ° Π·Π°ΠΏΠΎΠ»Π½ΡΠ΅Ρ k-ΡΡΡ Π·Π°ΠΏΠΈΡΡ ΠΏΠΎΠ»Π΅ MAS k-ΡΠΎΠΉ ΡΡΡΠΎΠΊΠΎΠΉ ΠΌΠ°ΡΡΠΈΠ²Π° Mas. ΠΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ k-ΡΠΎΠΉ ΡΡΡΠΎΠΊΠΈ ΠΌΠ°ΡΡΠΈΠ²Π° Mas Π·Π°Π½ΠΎΡΡΡΡΡ Π² ΡΠΎΠ·Π΄Π°Π½Π½ΡΠΉ ΠΏΠΎΡΠΎΠΊ. ΠΠΎΡΠΎΡΡΠΉ ΠΈ Π·Π°Π³ΡΡΠΆΠ°Π΅ΡΡΡ Π² ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠΉ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ Π·Π°ΠΏΡΠΎΡΠ°.
procedure Load Mas From Blob (k: integer);
ΠΠ΅ΡΠΎΠ΄, ΠΊΠΎΡΠΎΡΡΠΉ Π² ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ sql-Π·Π°ΠΏΡΠΎΡΠ° Π·Π°ΠΏΠΎΠ»Π½ΡΠ΅Ρ k-ΡΡΡ ΡΡΡΠΎΠΊΡ ΠΌΠ°ΡΡΠΈΠ²Π° Mas ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΡΠΌ ΠΏΠΎΠ»Ρ MAS k-ΡΠΎΠΉ Π·Π°ΠΏΠΈΡΠΈ Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ . ΠΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΠΏΠΎΠ»Ρ MAS ΡΠΎΡ ΡΠ°Π½ΡΠ΅ΡΡΡ Π² ΡΠΎΠ·Π΄Π°Π½Π½ΡΠΉ ΠΏΠΎΡΠΎΠΊ. ΠΠ· ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΠΏΠΎΡΠΎΠΌ ΠΈ ΡΡΠΈΡΡΠ²Π°ΡΡΡΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ Π΄Π»Ρ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΌΠ°ΡΡΠΈΠ²Π° Mas
ΠΠ»Π°ΡΡ TLine Series Log.
type TLine Series Log = class (TLine Series)
public
procedure Draw Graph (i: Integer;Logging :TLogging);
end;
procedure Draw Graph (i: Integer; Logging: TLogging);
ΠΠ΅ΡΠΎΠ΄ Π·Π°Π½ΠΎΡΠΈΡ Π² ΡΠ΅ΡΠΈΡ ΡΠΎΡΠΊΠΈ, ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠ΅ i-ΡΡΠΌ ΡΡΡΠΎΠΊΠ°ΠΌ Π² ΠΌΠ°ΡΡΠΈΠ²Π°Ρ ΠΏΠΎΠ»Π΅ΠΉ ΠΎΠ±ΡΠ΅ΠΊΡΠ° Logging. ΠΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠ²ΠΎΠΉΡΡΠ²ΠΎ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΠΈ ΠΏΠΎ ΠΎΡΠΈ Π°Π±ΡΡΠΈΡΡ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΡΡΡ Π² loNone, Ρ. Π΅. ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΠ° ΠΎΡΡΡΡΡΡΠ²ΡΠ΅Ρ.
ΠΠ»Π°ΡΡ TChartLog
type
TChartLog = class (TChart)
public
LineSeriesLog: TLineSeriesLog; //ΡΠ΅ΡΠΈΡ, Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅ΠΌΠ°Ρ ΠΏΡΠΈ Π²ΡΠ·ΠΎΠ²Π΅ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡΠ°
constructor Create (AOwner: TComponent); override;
destructor Destroy; override;
ΠΠ»Π°ΡΡ TPanelLog
type
TPanelLog = class (TPanel)
private
ListChart: TObjectList;
State: Boolean;
NumGraph: Integer; //ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅ΠΌΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ ΡΠΈΠΏΠ° TChartLog
public
constructor Create (AOwner: TComponent); override;
destructor Destroy; override;
procedure GetNumGraph;
procedure Execute (Logging: TLogging);
end;
procedure GetNumGraph;
ΠΠ΅ΡΠΎΠ΄, ΠΊΠΎΡΠΎΡΡΠΉ Ρ ΠΏΠΎΠΌΠΎΡΡΡ sql-Π·Π°ΠΏΡΠΎΡΠ°, Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡΠ΅Π³ΠΎ Π·Π°ΠΏΠΈΡΠΈ ΠΈΠ· ΡΠ°Π±Π»ΠΈΡΡ WELL_KRIV, Π·Π°Π½ΠΎΡΠΈΡ Π² ΠΏΠΎΠ»Π΅ ΠΊΠ»Π°ΡΡΠ° Num Graph ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π·Π°ΠΏΠΈΡΠ΅ΠΉ, Π²ΠΎΠ·Π²ΡΠ°ΡΠ΅Π½Π½ΡΡ Π·Π°ΠΏΡΠΎΡΠΎΠΌ.
procedure Execute (Logging: TLogging);
ΠΠ΅ΡΠΎΠ΄ Π·Π°Π½ΠΈΠΌΠ°Π΅ΡΡΡ ΡΠ°Π·ΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅ΠΌ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ ΡΠΈΠΏΠ° TChart Log Π½Π° ΠΎΠΏΠΈΡΡΠ²Π°Π΅ΠΌΠΎΠΌ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ΅. ΠΠ½Π°ΡΠ°Π»Π΅ Π²ΡΡΠΈΡΠ»ΡΠ΅ΡΡΡ ΠΎΠ±ΡΠ°Ρ ΡΠΈΡΠΈΠ½Π° Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΈΠ· ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ², ΠΏΠΎΠ»ΡΡΠ°Π΅ΠΌΠ°Ρ ΠΈΠ· ΡΠΈΡΠΈΠ½Ρ ΠΏΠ°Π½Π΅Π»ΠΈ ΠΈ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ. ΠΠ°Π»Π΅Π΅ Π² ΡΠΏΠΈΡΠΎΠΊ ΡΠΈΠΏΠ° TList Chart Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅ΡΡΡ Num Graph ΡΠΎΠ·Π΄Π°Π²Π°Π΅ΠΌΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ ΠΈ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΈΠ· Π½ΠΈΡ Π·Π°Π΄Π°ΡΡΡΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠ΅ ΠΈΠΌ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΡ Π½Π° ΠΏΠ°Π½Π΅Π»ΠΈ.
Π’Π°ΠΊΠΆΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΠΌΠΎΠ΄ΡΠ»Ρ UString Log, Ρ Π½Π°Ρ ΠΎΠ΄ΡΡΠΈΠΌΠΈΡΡ Π² Π½Π΅ΠΌ ΡΡΡΠΎΠΊΠΎΠ²ΡΠΌΠΈ ΠΊΠΎΠ½ΡΡΠ°Π½ΡΠ°ΠΌΠΈ, Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠΌΠΈ Π΄Π»Ρ sql-Π·Π°ΠΏΡΠΎΡΠΎΠ².
ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π
ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π½Π½ΡΡ ΠΊΠ»Π°ΡΡΠΎΠ² ΠΈ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² Π΄Π»Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΠΊΠ°ΡΠΎΡΠ°ΠΆΠ°
ΠΠ»Π°ΡΡ TIncr
type TIncr=Class (TObject)
private
X, Y, Z: array of Real; //ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΡ ΡΠΎΡΠ΅ΠΊ
Num: Integer; //ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠΎΡΠ΅ΠΊ
public
destructor Destroy; override;
function GetNum: Integer;
function GetX (i: Integer): Real;
function GetY (i: Integer): Real;
function GetZ (i: Integer): Real;
procedure GetData;
end;
procedure GetData;
ΠΠ΅ΡΠΎΠ΄, ΠΊΠΎΡΠΎΡΡΠΉ Ρ ΠΏΠΎΠΌΠΎΡΡΡ sql-Π·Π°ΠΏΡΠΎΡΠ° Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ Π²ΡΠ΅ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΠ°ΠΌΠΈ ΠΈΠ· ΡΠ°Π±Π»ΠΈΡΡ WELL_INCR. Π ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ ΠΏΠΎΠ»Ρ Num ΠΏΡΠΈΡΠ²Π°ΠΈΠ²Π°Π΅ΡΡΡ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π²ΠΎΠ·Π²ΡΠ°ΡΠ΅Π½Π½ΡΡ Π·Π°ΠΏΠΈΡΠ΅ΠΉ. ΠΠ°Π»Π΅Π΅ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΡΡΡ ΠΏΠ°ΠΌΡΡΡ Π΄Π»Ρ Num ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΡ ΠΌΠ°ΡΡΠΈΠ²Π°Ρ X, Y, Z.
ΠΠΎΠ΄ΡΠ»Ρ UWork ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π΅
type TTypeChart=(ViewCut, ViewTop); //ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΡΠΈΠΏ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΠΈΠ½ΠΊΠ»ΠΈΠ½ΠΎΠΌΠ΅ΡΡΠΈΠΈ
type TColorLine=(Red, Blue, Gray, Green, Yellow, Black, Silver); //ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΡΠ²Π΅ΡΠΎΠ² ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅ΠΌΡΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΠΊΠ°ΡΡΡ
ΠΠ»Π°ΡΡ TLabelIncr. Π‘ ΠΏΠΎΠΌΠΎΡΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² ΡΡΠΎΠ³ΠΎ ΡΠΈΠΏΠ° ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡΡΡ Π³Π»ΡΠ±ΠΈΠ½Ρ ΡΠΊΠ²Π°ΠΆΠΈΠ½Ρ
type
TLabelIncr = class (TLabel)
public
constructor Create (AOwnew: TComponent); override;
end;
ΠΠ»Π°ΡΡ TObjectListLabel. Π‘ΠΏΠΈΡΠΎΠΊ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² ΡΠΈΠΏΠ° TLabelIncr
type
TObjectListLabel = class (TObjectList)
private
NumLabel: integer; //ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ²
FChart: TChart;
WLabel, HLabel: Integer; //Π²Π΅Π»ΠΈΡΠΈΠ½Ρ ΡΠ²ΡΠ·Π°Π½Π½ΡΠ΅ Ρ ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄ΠΎΠΌ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°Ρ ΠΈΠ· ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°Ρ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² ΡΠΈΠΏΠ° TLabelIncr Π½Π° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ΅ ΡΠΈΠΏΠ° TChart Π² ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΡ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΡΠΎΡΠ΅ΠΊ ΡΠ΅ΡΠΈΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ΅ ΡΠΈΠΏΠ° TChart
FIncr: TIncr;
FVisGlub, FVisAbsGlub: Boolean; //ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ, Π²ΠΈΠ΄ΠΈΠΌΡ Π»ΠΈ ΠΌΠ΅ΡΠΊΠΈ Π½Π° Π΄Π°Π½Π½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ
procedure FnIncr (IncrTemp: TIncr);
procedure FnVisGlub (Vis: Boolean);
procedure FnVisAbsGlub (Vis: Boolean);
public
constructor Create (AOwnsObjects: Boolean); overload;
procedure AddLabel (k: Integer);
procedure LabelDraw (Ind: array of Integer);
procedure LabelDefineSize (S: Integer;a: Real);
procedure MakeLabels;
procedure VisibleLAbs (Vis: Boolean);
procedure VisibleL (Vis: Boolean);
property Chart: TChart write FChart;
property Incr: TIncr write FIncr;
property VisGlub: Boolean write FnVisGlub;
property VisAbsGlub: Boolean write FnVisAbsGlub;
end;
procedure AddLabel (k: Integer);
ΠΠ΅ΡΠΎΠ΄ ΡΠΎΠ·Π΄Π°Π΅Ρ NumLabel-k ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² ΡΠΈΠΏΠ° TLabelIncr, Π·Π°Π΄Π°Π²Π°Ρ ΠΏΡΠΈ ΡΡΠΎΠΌ Π΄Π»Ρ Π½ΠΈΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠ΅ ΡΠ²ΠΎΠΉΡΡΠ²Π°. ΠΡΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΡ Π΄ΠΎΠ±Π°Π²Π»ΡΡΡΡΡ Π² ΠΎΠ±ΡΠ΅ΠΊΡ ΠΎΠΏΠΈΡΡΠ²Π°Π΅ΠΌΠΎΠ³ΠΎ ΠΊΠ»Π°ΡΡΠ°.
procedure LabelDraw (Ind: array of Integer);
ΠΠ°ΡΡΠΈΠ² Ind ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΏΠΎΠΌΠ΅ΡΠ΅Π½Π½ΡΠ΅ ΡΠΎΡΠΊΠΈ Π³ΡΠ°ΡΠΈΠΊΠ°, ΡΡΠ΄ΠΎΠΌ Ρ ΠΊΠΎΡΠΎΡΡΠΌΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΠ°ΡΠΏΠΎΠ»Π°Π³Π°ΡΡΡΡ ΠΌΠ΅ΡΠΊΠΈ. Π ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠΈ Ρ ΡΡΠΈΠΌ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠΌ ΠΎΠ±ΡΠ΅ΠΊΡΡ ΡΠΏΠΈΡΠΊΠ° ΡΠΈΠΏΠ° TObjectListLabel ΠΏΠΎΠ»ΡΡΠ°ΡΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠ΅ ΠΈΠΌ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΡ ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π½Π° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ΅ ΡΠΈΠΏΠ° TChartIncr
procedure LabelDefineSize (a: Real);
ΠΠ΅ΡΠΎΠ΄ Π²ΡΠ·ΡΠ²Π°Π΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΡΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠΈ ΡΠΏΠΈΡΠΊΠ°. Π‘ΠΎΠ·Π΄Π°Π΅ΡΡΡ ΠΌΠ΅ΡΠΊΠ° ΡΠΈΠΏΠ° TLabelIncr. a — ΡΠΈΡΠ»ΠΎ, ΠΊΠΎΡΠΎΡΡΠΌ Π·Π°ΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΠΌΠ΅ΡΠΊΠ°. Π ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΌΠ΅ΡΠΎΠ΄Π° ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΡΡΡ ΡΠΈΡΠΈΠ½Π° ΠΈ Π²ΡΡΠΎΡΠ° Π΄Π»Ρ Π²ΡΠ΅Ρ ΠΌΠ΅ΡΠΎΠΊ, ΠΊΠΎΡΠΎΡΡΠ΅ Π±ΡΠ΄ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ, ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎ WLabel ΠΈ HLabel.
procedure MakeLabels;
ΠΡΠ½ΠΎΠ²Π½ΠΎΠΉ ΠΌΠ΅ΡΠΎΠ΄. ΠΡΠ·ΡΠ²Π°Π΅ΡΡΡ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΡΠ°Π· ΠΏΠΎΡΠ»Π΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π³ΡΠ°ΡΠΈΠΊΠ° Π½Π° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ΅ ΡΠΈΠΏΠ° TChartIncr.
Π‘Π½Π°ΡΠ°Π»Π° Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΠΏΠΎΠ΄ΡΡΠ΅Ρ ΠΌΠ΅ΡΠΎΠΊ Π² ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ k, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΠΎΡΠΎΠ±ΡΠ°Π·ΠΈΡΡ, ΠΏΠΎΠΌΠ΅ΡΠ°Ρ Π½ΠΎΠΌΠ΅ΡΠ° ΡΠΎΡΠ΅ΠΊ, ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠΌ ΠΌΠ΅ΡΠΊΠ°ΠΌ, Π² ΠΌΠ°ΡΡΠΈΠ²Π΅ Ind. ΠΠ°Π»Π΅Π΅ Π²ΡΠ·ΡΠ²Π°Π΅ΡΡΡ ΠΌΠ΅ΡΠΎΠ΄ AddLabel (k).
procedure VisibleLAbs (Vis: Boolean) ΠΈ procedure VisibleL (Vis: Boolean)
ΠΠ°Π΄Π°Π΅Ρ Π²ΠΈΠ΄ΠΈΠΌΠΎΡΡΡ Π΄Π»Ρ ΠΌΠ΅ΡΠΎΠΊ, ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡΠΈΡ Π³Π»ΡΠ±ΠΈΠ½Ρ ΠΈ Π΄Π»Ρ ΠΌΠ΅ΡΠΎΠΊ, ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡΠΈΡ Π°Π±ΡΠΎΠ»ΡΡΠ½ΡΠ΅ Π³Π»ΡΠ±ΠΈΠ½Ρ (ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎ Π½Π΅ΡΠ΅ΡΠ½ΡΠ΅ ΠΈ ΡΠ΅ΡΠ½ΡΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΡΠΏΠΈΡΠΊΠ°)
ΠΠ»Π°ΡΡ TLineSeriesIncr
type
TLineSeriesIncr = class (TLineSeries)
private
FIncr: TIncr; //ΠΎΠ±ΡΠ΅ΠΊΡ ΡΠΈΠΏΠ° TIncr, Ρ ΡΠ°Π½ΡΡΠΈΠΉ Π΄Π°Π½Π½ΡΠ΅ ΠΎ Π³ΡΠ°ΡΠΈΠΊΠ΅
FTypeChart: TTypeChart; //ΡΠΈΠΏ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π½ΠΈΡ ΠΈΠ½ΠΊΠ»ΠΈΠ½ΠΎΠΌΠ΅ΡΡΠΈΠΈ
procedure FnIncr (IncrF: TIncr);
protected
public
ListLabel: TObjectListLabel; //ΡΠΏΠΈΡΠΎΠΊ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² ΡΠΈΠΏΠ° TLabelIncr
procedure AddAllPoint;
constructor Create (AOwner: TComponent); override;
destructor Destroy; override;
property Incr: TIncr read FIncr write FnIncr;
property TypeChart: TTypeChart read FTypeChart write FTypeChart;
end;
procedure AddAllPoint;
ΠΠ΅ΡΠΎΠ΄, Π΄ΠΎΠ±Π°Π²Π»ΡΡΡΠΈΠΉ ΡΠΎΡΠΊΠΈ Π² ΡΠ΅ΡΠΈΡ ΠΈΠ· ΠΎΠ±ΡΠ΅ΠΊΡΠ° FIncr Π² ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠΈ Ρ ΠΏΠΎΠ»Π΅ΠΌ FTypeChart (Ρ.Π΅. Π² ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠΈ Ρ Π²ΠΈΠ΄ΠΎΠΌ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ Π³ΡΠ°ΡΠΈΠΊΠ°)
ΠΠ»Π°ΡΡ TLineMap
type
TLineMap = class (TLineSeries)
private
function DefineColor (iColor: Integer): TColor;
public
procedure LoadFromFile (filename: String);
procedure GetFromBlob;
constructor Create (AOwner: TComponent); override;
end;
function DefineColor (iColor: Integer): TColor;
ΠΠ΅ΡΠΎΠ΄ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ ΡΠ²Π΅Ρ, ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠΉ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΠΈΠ· ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½ΠΈΡ TColorLine. iColorΠ½ΠΎΠΌΠ΅Ρ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ° Π² ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½ΠΈΠΈ.
procedure LoadFromFile (filename: String);
ΠΠ΅ΡΠΎΠ΄, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ Π²Π½Π°ΡΠ°Π»Π΅ ΡΠΈΡΠ°ΡΡΡΡ Π΄Π°Π½Π½ΡΠ΅ ΠΈΠ· ΡΠ°ΠΉΠ»Π° filename, Π² ΡΠ°ΡΡΠ½ΠΎΡΡΠΈ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°Ρ, Π½ΠΎΠΌΠ΅Ρ ΡΠ²Π΅ΡΠ° Π² ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½ΠΈΠΈ ΠΈ ΡΠ°ΠΌΠΈ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΡ. ΠΡΠΈΡΠ΅ΠΌ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΡ Π·Π°ΠΏΠΈΡΡΠ²Π°ΡΡΡΡ ΡΡΠ°Π·Ρ Π² ΠΏΠΎΡΠΎΠΊΠΈ Π΄Π»Ρ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°Ρ X ΠΈ Y ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎ. ΠΠ°Π»Π΅Π΅ Π² ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ sql-Π·Π°ΠΏΡΠΎΡΠ° Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅ΡΡΡ Π·Π°ΠΏΠΈΡΡ Ρ ΠΏΡΠΎΡΠΈΡΠ°Π½Π½ΡΠΌΠΈ Π΄Π°Π½Π½ΡΠΌΠΈ ΠΈΠ· ΡΠ°ΠΉΠ»Π° Π² ΡΠ°Π±Π»ΠΈΡΡ Map. ΠΡΠΈΡΠ΅ΠΌ ΠΏΠΎΡΠΎΠΊΠΈ Π·Π°Π³ΡΡΠΆΠ°ΡΡΡΡ Π² ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠ΅ blob-ΠΏΠΎΠ»Ρ.
procedure GetFromBlob;
ΠΠ΅ΡΠΎΠ΄, ΠΊΠΎΡΠΎΡΡΠΉ Π² ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ sql-Π·Π°ΠΏΡΠΎΡΠ°, Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡΠ΅Π³ΠΎ Π²ΡΠ΅ Π·Π°ΠΏΠΈΡΠΈ ΡΠ°Π±Π»ΠΈΡΡ Map, Π·Π°Π½ΠΎΡΠΈΡ ΡΡΠΈ Π·Π°ΠΏΠΈΡΠΈ Π² ΡΠ΅ΡΠΈΡ, ΠΏΡΠΈΡΠ΅ΠΌ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π·Π°ΠΏΠΈΡΠΈ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ ΡΠ²ΠΎΡ Π»ΠΈΠ½ΠΈΡ Π² ΡΠ΅ΡΠΈΠΈ.
ΠΠ»Π°ΡΡ TChartIncr
type
TChartIncr = class (TChart)
private
FTypeChart: TTypeChart; //ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ ΡΠΈΠΏ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΠΈΠ½ΠΊΠ»ΠΈΠ½ΠΎΠΌΠ΅ΡΡΠΈΠΈ
Timer: TTimer; //ΡΠ°ΠΉΠΌΠ΅Ρ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌ Π΄Π»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΠΊΠΎΡΡΠ΅ΠΊΡΠ½ΠΎ Π²ΡΠΏΠΎΠ»Π½ΡΠ»Π°ΡΡ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠΎΠ²ΠΊΠ° ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² ΡΠΈΠΏΠ° TLabel ΠΏΡΠΈ ΡΠΊΡΠΎΠ»Π»ΠΈΠ½Π³Π΅ ΠΈ ΠΏΡΠΈΠ±Π»ΠΈΠΆΠ΅Π½ΠΈΠΈ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ
procedure FnTypeChart (TypeCh: TTypeChart);
procedure OnTimerIncr (Sender: TObject);
procedure OnActionIncr (Sender: TObject);
public
LineMap: TLineMap; //ΡΠ΅ΡΠΈΡ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠ°Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ Π»ΠΈΠ½ΠΈΠΈ, ΠΎΠ±ΡΠ°Π·ΡΡΡΠΈΠ΅ Π² ΡΠΎΠ²ΠΎΠΊΡΠΏΠ½ΠΎΡΡΠΈ ΠΊΠ°ΡΡΡ ΠΌΠ΅ΡΡΠ½ΠΎΡΡΠΈ
LineSeriesIncr: TLineSeriesIncr; //ΡΠ΅ΡΠΈΡ, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠ°Ρ ΡΠΎΡΠΊΠΈ ΡΠΊΠ²Π°ΠΆΠΈΠ½Ρ
constructor Create (AOwner: TComponent); override;
destructor Destroy; override;
published
property TypeChart: TTypeChart read FTypeChart write FnTypeChart;
end;
procedure OnTimerIncr (Sender: TObject);
ΠΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊ ΡΠΎΠ±ΡΡΠΈΠΉ Π΄Π»Ρ Timer. Π’Π°ΠΉΠΌΠ΅Ρ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌ Π΄Π»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΠΊΠΎΡΡΠ΅ΠΊΡΠ½ΠΎ Π²ΡΠΏΠΎΠ»Π½ΡΠ»Π°ΡΡ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠΎΠ²ΠΊΠ° ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² ΡΠΈΠΏΠ° TLabelIncr ΠΏΡΠΈ ΡΠΊΡΠΎΠ»Π»ΠΈΠ½Π³Π΅ ΠΈ ΠΏΡΠΈΠ±Π»ΠΈΠΆΠ΅Π½ΠΈΠΈ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ.
ΠΡΠ·ΡΠ²Π°Π΅Ρ ΠΌΠ΅ΡΠΎΠ΄ ΠΊΠ»Π°ΡΡΠ° TObjectListLabel — MakeLabels.
procedure OnActionIncr (Sender: TObject);
ΠΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊ ΡΠΎΠ±ΡΡΠΈΠΉ OnZoom, OnUndoZoom, OnScrolling Π΄Π»Ρ ΠΎΠ±ΡΠ΅ΠΊΡΠ° ΡΠΈΠΏΠ° TChartIncr
ΠΠ΅ΡΠΎΠ΄ Π΄Π»Ρ ΠΊΠΎΡΡΠ΅ΠΊΡΠ½ΠΎΠΉ ΠΏΡΠΎΡΠΈΡΠΎΠ²ΠΊΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² ΡΠΈΠΏΠ° TLabelIncr Π·Π°ΠΏΡΡΠΊΠ°Π΅Ρ ΡΠ°ΠΉΠΌΠ΅Ρ.
Π’Π°ΠΊΠΆΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΠΌΠΎΠ΄ΡΠ»Ρ UStringIncr, Ρ Π½Π°Ρ ΠΎΠ΄ΡΡΠΈΠΌΠΈΡΡ Π² Π½Π΅ΠΌ ΡΡΡΠΎΠΊΠΎΠ²ΡΠΌΠΈ ΠΊΠΎΠ½ΡΡΠ°Π½ΡΠ°ΠΌΠΈ, Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠΌΠΈ Π΄Π»Ρ sql-Π·Π°ΠΏΡΠΎΡΠΎΠ².