Today I report that I've completed a Master Table Dataentry with source-progs attached below. In general what I need to say are... (let me copy from Menu:Help-About) as follows:
This sample (and simple) program is built with HMG.3.3.1, intended to do exercises with & implement the followings:-"
0] Getting accustomed to behavior of & handling with the Controls, Properties, Methods, Events: Characteristic of GUI codes."
"1] Presenting Data entry for 3 Master Tables: Company, Unit, Department."
"2] Arranged 3 grids within one window, organized in splitbox manner."
"3] The grids are positioned at half below, look similiar to the way the MS-Exel Sheets work."
"4] Above them are living panel windows, showing full data within a grid-cells where pointers sitting in."
" Each Window Template belonging to each table is loaded twice as twin form: "
" one form for Dataentry[read-write], the other for Display [readonly]."
" User choice to Accept or Cancel entry is placed at buttons within template-entry, not outside."
" When entry-time on stage, Form-Entry shows."
" When user press GO-button, Form-Entry releases itsself, Form-Display takes over the job."
" Form-Entry only do its job when entry time on stage, the rest belongs to Form-Display's showtime."
"6] Users are able to edit only one table at a time, or enable all the 3 to edit at the same time."
"7] The dataentry implements classic [but half strict] rules to maintain data integrity, which are:"
" - Once a record is added/appended, it is prohibited to modify Keyfields (Company-code, unit-code, deptcode)"
" - This rule to guarantee that database is under control, users has no opportunity to play with codes"
" - If something wrong happends to the codes, users should delete it, then append new one"
" - This rule will enable historycal records to be added, to examine how dataentry is treated by users."
" - This rule to prevent any accidental[unpredictable] edit to codes, especially in network environment."
"8] Keyfield of Company ->[compcode], protected in Company-Update operation."
" Keyfield of Unit ->[compcode+unitcode], Unitcode is protected in Unit-Update Operation."
" Keyfield of Department->[compcode+unitcode]+[deptcode], Deptcode is protected in Dept-Update Operation."
"9] Grids contain of records from Databases which are sent by way of RecordSet as recommended by Roberto Lopez."
" This is in preparation to implement NETIO Client-Server: no live data directly in grid, use RecordSet instead."
"10] This sample is part of Project Free HRD & Payroll, scheduled to be ready to install in full in January 2015."
" Free to copy/share/modify, etc."
"Many thanks to help & support from HMGforum friends: Rathinagiri, Roberto Lopez, Serge Girard, BPD2000, Mustafa, Esgici."
"Agil Abdullah Albatati, Jakarta Indonesia, email: firstname.lastname@example.org
" + CRLF + ;
"(beginner to HMG)
>>>> Attachment see next page---->
Note: you may place the sample/demo in any folder. Have a try and give your comments/advise/revision & whatever, if you wish.