Upload
zurina
View
30
Download
0
Embed Size (px)
DESCRIPTION
Training Course. Casio DT-X7 Stocktaking Sample. Name:Arne Reinelt Function: Product Support Mobile Industrial Solutions. DT-X7 Stocktaking Sample. Upload data to PC. Workflow. Get user name, rack number, and article numbers Deactivate certain records due to wrong input - PowerPoint PPT Presentation
Citation preview
Mobile Industrial Solutions
Casio DT-X7 Stocktaking Sample
Name: Arne ReineltFunction: Product Support
Mobile Industrial Solutions
Mobile Industrial SolutionsWorkflow
• Get user name, rack number, and article numbers
• Deactivate certain records due to wrong input• Write all data to specific files• Upload data files to PC by using Casio
LMWin communication software
Mobile Industrial SolutionsData Flow
DATA.TMP
DATA.DAT
Barcode
Date
User
Rack
Time
Price
Quantity
APPEND
RACK1.DAT RACK9.DATRACK2.DAT
Mobile Industrial SolutionsObject Orientated Design
Presentation Layer(Dialog Classes)
Business Layer(Business Transaction Class )
Data Layer(Data Class)
• Show data• Get data from user• Show system status
• Collect data• Delete data• Upload data
• Read/write to file• Read/write to DB• Query DB
Mobile Industrial SolutionsCasio Libraries
• System Library (System Settings)– Keyboard– CPU Speed– Mouse Pointer– Speaker / Vibrator
• OBR Library (Scanner)• Flink Library (Data Communication)
Mobile Industrial SolutionsOBR Conditions
closed opened
• Scanning disabled
• Changing the settings enabled
• Trigger keys not occupied
• Scanning enabled
• Changing the settings disabled
• Trigger keys occupied
OBROpen(...)
OBRClose(...)
Mobile Industrial Solutions
Synchronization done by CCriticalSection object
OBR Workflow
Scanning No
Settings Global
Execution Once
Duration 3-5 sec.
Data
Sub DialogMain Dialog
OBROpen…
OBRGets…
OBRClose
Reader Thread
Scanning Yes
Settings Specific
Execution Multiple
Duration 50 ms
Fast Switching
Mobile Industrial SolutionsData Communication
FLKOpen
do
while( false )
FLKFileAdd
CheckStatus
CheckStatus
CheckStatus
FLKClose
Error: break
Exit
OK
OK
OK
CheckStatus
FLKDateTime
Err
or:
retu
rn
CheckStatus: Necessary due to asynchronous function calls
Error: break
You must disable
ActiveSync when using
FLink
Mobile Industrial SolutionsSpecial Features
• Full Screen Mode• Color buttons• Custom Fonts• Keyboard Navigation• Hot Keys (Red, Yellow, and Blue)• Custom Title and Task Bar• MFC Collection Classes
Mobile Industrial SolutionsFull Screen Mode
• Client windows are smaller than the main application window
• Custom taskbar stays visible all the time
• Using dialog template to avoid duplicating common functions
Mobile Industrial SolutionsInstallation
• Install latest libraries to your DT-X7• Copy OBRDRV.ini to \FlashDisk\System
Settings\, and overwrite the existing one if necessary
• Deploy release version of DTX7_Stocktaking application to your mobile device
• Test the application…
~ 15 Minutes
Mobile Industrial SolutionsSystem Library
• Add new function to CHelper class in order to get the device ID of your DT-X7
• Use this newly added function to display the device ID when the [Make Settings] button from main menu is pressed (display only relevant digits)
• Play warning sound through buzzer when battery power drops below 15 percent
• Repeat that warning every 5 seconds• Hint: Use CheckBatteryPower( ) function in
CDTX7_StockTakingDlg class as starting point
~ 30 Minutes
Mobile Industrial SolutionsOBR Library
• Enable notification by vibrator for scanning complete condition
• Two possibilities:– Modify InitSettings( ) in CDTX7_StockTaking class
and Init( ) in COBRWedgeBase class– Modify Modify OnBprdok( ) in CTX7_ProductDlg
class• Allow to read Code128 instead of Code39 for the
user name• Hint: Modify MakeSettings(…) in COBRWedge class
~ 30 Minutes
Mobile Industrial SolutionsFlink Library
• Modify the application to copy all data files one by one to PC instead of appending all data to only file on PC
• Hint: You will have to make your changes in SyncJobStandard(…) in CFLCEWedge class
~ 30 Minutes
Mobile Industrial SolutionsHomework
• Modify the data layer (CData class) to use a database of your choice instead of MFC collection classes
• Modify the communication part to use Bluetooth or WLAN instead of LMWin
• Add more thread functions to the CFLCEWedge class, e.g. to receive new program versions from PC
• Add your own functions to the settings menu, e.g. to configure the trigger keys
• Add your own submenus to collect data for different departments