Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
Create Remote Views for MM
Message
From
18/05/2000 08:00:31
 
 
To
All
General information
Forum:
Visual FoxPro
Category:
The Mere Mortals Framework
Title:
Create Remote Views for MM
Miscellaneous
Thread ID:
00370622
Message ID:
00370622
Views:
55
All of us are familiar with the utility kevin has given us to create local views for a new MM project. But what if you intend to develop the project against SQL Server? What I do is simply upsize the database. The problem is the upsize wizard redirects the views and renames them incorrectly. To make matters worse some of the views don't function.

I don't use the redirect views option. Instead, I created a remote version of Kevin's program: remote_views.prg. To use it, create a connection to your SQL source in the database, replace all instances of "connect1" with the name of the connection you defined, issue SET PROC TO remote_views, and then DO createviews. Lickety split your remote views are created and ready to rock and roll.

PROCEDURE CreateViews

DisplayStatus([Creating view RV_CLIENTS...])
MakeView_RV_USERGROUPS()
DisplayStatus([Creating view RV_CONTROLSECURITY...])
MakeView_RV_CONTROLSECURITY()
DisplayStatus([Creating view RV_CONTROLSECURITYGROUPS...])
MakeView_RV_CONTROLSECURITYGROUPS()
DisplayStatus([Creating view RV_CONTROLSECURITYUSERS...])
MakeView_RV_CONTROLSECURITYUSERS()
DisplayStatus([Creating view RV_GROUPLIST...])
MakeView_RV_GROUPLIST()
DisplayStatus([Creating view RV_GROUPMEMBERS...])
MakeView_RV_GROUPMEMBERS()
DisplayStatus([Creating view RV_GROUPS...])
MakeView_RV_GROUPS()
DisplayStatus([Creating view RV_GROUPSECURE...])
MakeView_RV_GROUPSECURE()
DisplayStatus([Creating view RV_MMCNTRLS...])
MakeView_RV_MMCNTRLS()
DisplayStatus([Creating view RV_REPOLIST...])
DisplayStatus([Creating view RV_MMCNTRLSLIST...])
MakeView_RV_MMCNTRLSLIST()
MakeView_RV_REPOLIST()
DisplayStatus([Creating view RV_STATES...])
MakeView_RV_STATES()
DisplayStatus([Creating view RV_USERGROUPSECURE...])
MakeView_RV_USERGROUPSECURE()
DisplayStatus([Creating view RV_USERIDSEARCH...])
MakeView_RV_USERIDSEARCH()
DisplayStatus([Creating view RV_USERLOGIN...])
DisplayStatus([Creating view RV_USERLIST...])
MakeView_RV_USERLIST()
MakeView_RV_USERLOGIN()
DisplayStatus([Creating view RV_USERS...])
MakeView_RV_USERS()
DisplayStatus([Creating view RV_USGRLINK...])
MakeView_RV_USGRLINK()

DisplayStatus([Finished.])
ENDPROC

FUNCTION MakeView_RV_GROUPMEMBERS
***************** View setup for RV_GROUPMEMBERS ***************
CREATE SQL VIEW "RV_GROUPMEMBERS" ;
REMOTE CONNECT "CONNECT1" ;
AS SELECT Usgrlink.*, Users.cfullname FROM ;
dbo.usgrlink, ;
dbo.users ;
WHERE Users.iid = Usgrlink.iuserid AND Usgrlink.igroupid = ?v_Groups.iID

DBSetProp('RV_GROUPMEMBERS', 'View', 'UpdateType', 1)
DBSetProp('RV_GROUPMEMBERS', 'View', 'WhereType', 3)
DBSetProp('RV_GROUPMEMBERS', 'View', 'FetchMemo', .T.)
DBSetProp('RV_GROUPMEMBERS', 'View', 'SendUpdates', .T.)
DBSetProp('RV_GROUPMEMBERS', 'View', 'UseMemoSize', 255)
DBSetProp('RV_GROUPMEMBERS', 'View', 'FetchSize', 100)
DBSetProp('RV_GROUPMEMBERS', 'View', 'MaxRecords', -1)
DBSetProp('RV_GROUPMEMBERS', 'View', 'Tables', 'dbo.usgrlink')
DBSetProp('RV_GROUPMEMBERS', 'View', 'Prepared', .F.)
DBSetProp('RV_GROUPMEMBERS', 'View', 'CompareMemo', .T.)
DBSetProp('RV_GROUPMEMBERS', 'View', 'FetchAsNeeded', .F.)
DBSetProp('RV_GROUPMEMBERS', 'View', 'FetchSize', 100)
DBSetProp('RV_GROUPMEMBERS', 'View', 'Comment', "")
DBSetProp('RV_GROUPMEMBERS', 'View', 'BatchUpdateCount', 1)
DBSetProp('RV_GROUPMEMBERS', 'View', 'ShareConnection', .F.)

*!* Field Level Properties for RV_GROUPMEMBERS
* Props for the RV_GROUPMEMBERS.iID field.
DBSetProp('RV_GROUPMEMBERS.iID', 'Field', 'KeyField', .T.)
DBSetProp('RV_GROUPMEMBERS.iID', 'Field', 'Updatable', .T.)
DBSetProp('RV_GROUPMEMBERS.iID', 'Field', 'UpdateName', 'dbo.usgrlink.iID')
DBSetProp('RV_GROUPMEMBERS.iID', 'Field', 'DataType', "I")
* Props for the RV_GROUPMEMBERS.igroupid field.
DBSetProp('RV_GROUPMEMBERS.igroupid', 'Field', 'KeyField', .F.)
DBSetProp('RV_GROUPMEMBERS.igroupid', 'Field', 'Updatable', .T.)
DBSetProp('RV_GROUPMEMBERS.igroupid', 'Field', 'UpdateName', 'dbo.usgrlink.igroupid')
DBSetProp('RV_GROUPMEMBERS.igroupid', 'Field', 'DataType', "I")
* Props for the RV_GROUPMEMBERS.iuserid field.
DBSetProp('RV_GROUPMEMBERS.iuserid', 'Field', 'KeyField', .F.)
DBSetProp('RV_GROUPMEMBERS.iuserid', 'Field', 'Updatable', .T.)
DBSetProp('RV_GROUPMEMBERS.iuserid', 'Field', 'UpdateName', 'dbo.usgrlink.iuserid')
DBSetProp('RV_GROUPMEMBERS.iuserid', 'Field', 'DataType', "I")
* Props for the RV_GROUPMEMBERS.iorder field.
DBSetProp('RV_GROUPMEMBERS.iorder', 'Field', 'KeyField', .F.)
DBSetProp('RV_GROUPMEMBERS.iorder', 'Field', 'Updatable', .T.)
DBSetProp('RV_GROUPMEMBERS.iorder', 'Field', 'UpdateName', 'dbo.usgrlink.iorder')
DBSetProp('RV_GROUPMEMBERS.iorder', 'Field', 'DataType', "I")
* Props for the RV_GROUPMEMBERS.tlastupd field.
DBSetProp('RV_GROUPMEMBERS.tlastupd', 'Field', 'KeyField', .F.)
DBSetProp('RV_GROUPMEMBERS.tlastupd', 'Field', 'Updatable', .T.)
DBSetProp('RV_GROUPMEMBERS.tlastupd', 'Field', 'UpdateName', 'dbo.usgrlink.tlastupd')
DBSetProp('RV_GROUPMEMBERS.tlastupd', 'Field', 'DataType', "T")
* Props for the RV_GROUPMEMBERS.ilastupdid field.
DBSetProp('RV_GROUPMEMBERS.ilastupdid', 'Field', 'KeyField', .F.)
DBSetProp('RV_GROUPMEMBERS.ilastupdid', 'Field', 'Updatable', .T.)
DBSetProp('RV_GROUPMEMBERS.ilastupdid', 'Field', 'UpdateName', 'dbo.usgrlink.ilastupdid')
DBSetProp('RV_GROUPMEMBERS.ilastupdid', 'Field', 'DataType', "I")
* Props for the RV_GROUPMEMBERS.cfullname field.
DBSetProp('RV_GROUPMEMBERS.cfullname', 'Field', 'KeyField', .F.)
DBSetProp('RV_GROUPMEMBERS.cfullname', 'Field', 'Updatable', .F.)
DBSetProp('RV_GROUPMEMBERS.cfullname', 'Field', 'UpdateName', 'dbo.users.cfullname')
DBSetProp('RV_GROUPMEMBERS.cfullname', 'Field', 'DataType', "C(25)")
ENDFUNC

FUNCTION MakeView_RV_GROUPS
***************** View setup for RV_GROUPS ***************
CREATE SQL VIEW "RV_GROUPS" ;
REMOTE CONNECT "CONNECT1" ;
AS SELECT * FROM ;
dbo.groups ORDER BY Groups.cgrpdesc

DBSetProp('RV_GROUPS', 'View', 'UpdateType', 1)
DBSetProp('RV_GROUPS', 'View', 'WhereType', 1)
DBSetProp('RV_GROUPS', 'View', 'FetchMemo', .T.)
DBSetProp('RV_GROUPS', 'View', 'SendUpdates', .T.)
DBSetProp('RV_GROUPS', 'View', 'UseMemoSize', 255)
DBSetProp('RV_GROUPS', 'View', 'FetchSize', 100)
DBSetProp('RV_GROUPS', 'View', 'MaxRecords', -1)
DBSetProp('RV_GROUPS', 'View', 'Tables', 'Groups')
DBSetProp('RV_GROUPS', 'View', 'Prepared', .F.)
DBSetProp('RV_GROUPS', 'View', 'CompareMemo', .T.)
DBSetProp('RV_GROUPS', 'View', 'FetchAsNeeded', .F.)
DBSetProp('RV_GROUPS', 'View', 'FetchSize', 100)
DBSetProp('RV_GROUPS', 'View', 'Comment', "")
DBSetProp('RV_GROUPS', 'View', 'BatchUpdateCount', 1)
DBSetProp('RV_GROUPS', 'View', 'ShareConnection', .F.)

*!* Field Level Properties for RV_GROUPS
* Props for the RV_GROUPS.iID field.
DBSetProp('RV_GROUPS.iID', 'Field', 'KeyField', .T.)
DBSetProp('RV_GROUPS.iID', 'Field', 'Updatable', .T.)
DBSetProp('RV_GROUPS.iID', 'Field', 'UpdateName', 'Groups.iID')
DBSetProp('RV_GROUPS.iID', 'Field', 'DataType', "I")
* Props for the RV_GROUPS.cgrpdesc field.
DBSetProp('RV_GROUPS.cgrpdesc', 'Field', 'KeyField', .F.)
DBSetProp('RV_GROUPS.cgrpdesc', 'Field', 'Updatable', .T.)
DBSetProp('RV_GROUPS.cgrpdesc', 'Field', 'UpdateName', 'Groups.cGrpDesc')
DBSetProp('RV_GROUPS.cgrpdesc', 'Field', 'DataType', "C(30)")
* Props for the RV_GROUPS.tlastupd field.
DBSetProp('RV_GROUPS.tlastupd', 'Field', 'KeyField', .F.)
DBSetProp('RV_GROUPS.tlastupd', 'Field', 'Updatable', .T.)
DBSetProp('RV_GROUPS.tlastupd', 'Field', 'UpdateName', 'Groups.tLastUpd')
DBSetProp('RV_GROUPS.tlastupd', 'Field', 'DataType', "T")
* Props for the RV_GROUPS.Ilastupdid field.
DBSetProp('RV_GROUPS.ilastupdid', 'Field', 'KeyField', .F.)
DBSetProp('RV_GROUPS.ilastupdid', 'Field', 'Updatable', .T.)
DBSetProp('RV_GROUPS.ilastupdid', 'Field', 'UpdateName', 'dbo.groups.ilastupdid')
DBSetProp('RV_GROUPS.ilastupdid', 'Field', 'DataType', "I")
ENDFUNC

FUNCTION MakeView_RV_USERGROUPS
***************** View setup for RV_USERGROUPS ***************
CREATE SQL VIEW "RV_USERGROUPS" ;
REMOTE CONNECT "CONNECT1" ;
AS SELECT Usgrlink.*, Groups.cgrpdesc FROM ;
dbo.usgrlink, dbo.groups ;
WHERE Groups.iID = Usgrlink.igroupid ;
AND Usgrlink.iuserid = ?vp_iUserID

DBSetProp('RV_USERGROUPS', 'View', 'UpdateType', 1)
DBSetProp('RV_USERGROUPS', 'View', 'WhereType', 3)
DBSetProp('RV_USERGROUPS', 'View', 'FetchMemo', .T.)
DBSetProp('RV_USERGROUPS', 'View', 'SendUpdates', .T.)
DBSetProp('RV_USERGROUPS', 'View', 'UseMemoSize', 255)
DBSetProp('RV_USERGROUPS', 'View', 'FetchSize', 100)
DBSetProp('RV_USERGROUPS', 'View', 'MaxRecords', -1)
DBSetProp('RV_USERGROUPS', 'View', 'Tables', 'dbo.usgrlink')
DBSetProp('RV_USERGROUPS', 'View', 'Prepared', .F.)
DBSetProp('RV_USERGROUPS', 'View', 'CompareMemo', .T.)
DBSetProp('RV_USERGROUPS', 'View', 'FetchAsNeeded', .F.)
DBSetProp('RV_USERGROUPS', 'View', 'FetchSize', 100)
DBSetProp('RV_USERGROUPS', 'View', 'Comment', "")
DBSetProp('RV_USERGROUPS', 'View', 'BatchUpdateCount', 1)
DBSetProp('RV_USERGROUPS', 'View', 'ShareConnection', .F.)

*!* Field Level Properties for RV_USERGROUPS
* Props for the RV_USERGROUPS.iID field.
DBSetProp('RV_USERGROUPS.iID', 'Field', 'KeyField', .T.)
DBSetProp('RV_USERGROUPS.iID', 'Field', 'Updatable', .T.)
DBSetProp('RV_USERGROUPS.iID', 'Field', 'UpdateName', 'dbo.usgrlink.iID')
DBSetProp('RV_USERGROUPS.iID', 'Field', 'DataType', "I")
* Props for the RV_USERGROUPS.igroupid field.
DBSetProp('RV_USERGROUPS.igroupid', 'Field', 'KeyField', .F.)
DBSetProp('RV_USERGROUPS.igroupid', 'Field', 'Updatable', .T.)
DBSetProp('RV_USERGROUPS.igroupid', 'Field', 'UpdateName', 'dbo.usgrlink.igroupid')
DBSetProp('RV_USERGROUPS.igroupid', 'Field', 'DataType', "I")
* Props for the RV_USERGROUPS.iuserid field.
DBSetProp('RV_USERGROUPS.iuserid', 'Field', 'KeyField', .F.)
DBSetProp('RV_USERGROUPS.iuserid', 'Field', 'Updatable', .T.)
DBSetProp('RV_USERGROUPS.iuserid', 'Field', 'UpdateName', 'dbo.usgrlink.iuserid')
DBSetProp('RV_USERGROUPS.iuserid', 'Field', 'DataType', "I")
* Props for the RV_USERGROUPS.iorder field.
DBSetProp('RV_USERGROUPS.iorder', 'Field', 'KeyField', .F.)
DBSetProp('RV_USERGROUPS.iorder', 'Field', 'Updatable', .T.)
DBSetProp('RV_USERGROUPS.iorder', 'Field', 'UpdateName', 'dbo.usgrlink.iorder')
DBSetProp('RV_USERGROUPS.iorder', 'Field', 'DataType', "I")
* Props for the RV_USERGROUPS.tlastupd field.
DBSetProp('RV_USERGROUPS.tlastupd', 'Field', 'KeyField', .F.)
DBSetProp('RV_USERGROUPS.tlastupd', 'Field', 'Updatable', .T.)
DBSetProp('RV_USERGROUPS.tlastupd', 'Field', 'UpdateName', 'dbo.usgrlink.tlastupd')
DBSetProp('RV_USERGROUPS.tlastupd', 'Field', 'DataType', "T")
* Props for the RV_USERGROUPS.ilastupdid field.
DBSetProp('RV_USERGROUPS.ilastupdid', 'Field', 'KeyField', .F.)
DBSetProp('RV_USERGROUPS.ilastupdid', 'Field', 'Updatable', .T.)
DBSetProp('RV_USERGROUPS.ilastupdid', 'Field', 'UpdateName', 'dbo.usgrlink.ilastupdid')
DBSetProp('RV_USERGROUPS.ilastupdid', 'Field', 'DataType', "I")
* Props for the RV_USERGROUPS.cgrpdesc field.
DBSetProp('RV_USERGROUPS.cgrpdesc', 'Field', 'KeyField', .F.)
DBSetProp('RV_USERGROUPS.cgrpdesc', 'Field', 'Updatable', .F.)
DBSetProp('RV_USERGROUPS.cgrpdesc', 'Field', 'UpdateName', 'dbo.groups.cgrpdesc')
DBSetProp('RV_USERGROUPS.cgrpdesc', 'Field', 'DataType', "C(30)")
ENDFUNC

FUNCTION MakeView_RV_USERIDSEARCH
***************** View setup for RV_USERIDSEARCH ***************

CREATE SQL VIEW "RV_USERIDSEARCH" ;
REMOTE CONNECT "CONNECT1" ;
AS SELECT Users.cuserid ;
FROM dbo.users ;
WHERE Users.cuserid = ?vp_cuserid

DBSetProp('RV_USERIDSEARCH', 'View', 'UpdateType', 1)
DBSetProp('RV_USERIDSEARCH', 'View', 'WhereType', 3)
DBSetProp('RV_USERIDSEARCH', 'View', 'FetchMemo', .T.)
DBSetProp('RV_USERIDSEARCH', 'View', 'SendUpdates', .F.)
DBSetProp('RV_USERIDSEARCH', 'View', 'UseMemoSize', 255)
DBSetProp('RV_USERIDSEARCH', 'View', 'FetchSize', 100)
DBSetProp('RV_USERIDSEARCH', 'View', 'MaxRecords', -1)
DBSetProp('RV_USERIDSEARCH', 'View', 'Tables', 'dbo.users')
DBSetProp('RV_USERIDSEARCH', 'View', 'Prepared', .F.)
DBSetProp('RV_USERIDSEARCH', 'View', 'CompareMemo', .T.)
DBSetProp('RV_USERIDSEARCH', 'View', 'FetchAsNeeded', .F.)
DBSetProp('RV_USERIDSEARCH', 'View', 'FetchSize', 100)
DBSetProp('RV_USERIDSEARCH', 'View', 'ParameterList', "vp_cuserid,'C'")
DBSetProp('RV_USERIDSEARCH', 'View', 'Comment', "")
DBSetProp('RV_USERIDSEARCH', 'View', 'BatchUpdateCount', 1)
DBSetProp('RV_USERIDSEARCH', 'View', 'ShareConnection', .F.)

*!* Field Level Properties for RV_USERIDSEARCH
* Props for the RV_USERIDSEARCH.cuserid field.
DBSetProp('RV_USERIDSEARCH.cuserid', 'Field', 'KeyField', .F.)
DBSetProp('RV_USERIDSEARCH.cuserid', 'Field', 'Updatable', .T.)
DBSetProp('RV_USERIDSEARCH.cuserid', 'Field', 'UpdateName', 'dbo.users.cuserid')
DBSetProp('RV_USERIDSEARCH.cuserid', 'Field', 'DataType', "C(10)")
ENDFUNC

FUNCTION MakeView_RV_USERLOGIN
***************** View setup for RV_USERLOGIN ***************

CREATE SQL VIEW "RV_USERLOGIN" ;
REMOTE CONNECT "CONNECT1" ;
AS SELECT * FROM dbo.users ;
WHERE Users.cuserid = ?vp_cuserid ;
AND Users.cpassword = ?vp_cpassword ;
ORDER BY Users.cuserid

DBSetProp('RV_USERLOGIN', 'View', 'UpdateType', 1)
DBSetProp('RV_USERLOGIN', 'View', 'WhereType', 3)
DBSetProp('RV_USERLOGIN', 'View', 'FetchMemo', .T.)
DBSetProp('RV_USERLOGIN', 'View', 'SendUpdates', .F.)
DBSetProp('RV_USERLOGIN', 'View', 'UseMemoSize', 255)
DBSetProp('RV_USERLOGIN', 'View', 'FetchSize', 100)
DBSetProp('RV_USERLOGIN', 'View', 'MaxRecords', -1)
DBSetProp('RV_USERLOGIN', 'View', 'Tables', 'dbo.users')
DBSetProp('RV_USERLOGIN', 'View', 'Prepared', .F.)
DBSetProp('RV_USERLOGIN', 'View', 'CompareMemo', .T.)
DBSetProp('RV_USERLOGIN', 'View', 'FetchAsNeeded', .F.)
DBSetProp('RV_USERLOGIN', 'View', 'FetchSize', 100)
DBSetProp('RV_USERLOGIN', 'View', 'Comment', "")
DBSetProp('RV_USERLOGIN', 'View', 'BatchUpdateCount', 1)
DBSetProp('RV_USERLOGIN', 'View', 'ShareConnection', .F.)

*!* Field Level Properties for RV_USERLOGIN
* Props for the RV_USERLOGIN.cid field.
DBSetProp('RV_USERLOGIN.Iid', 'Field', 'KeyField', .T.)
DBSetProp('RV_USERLOGIN.Iid', 'Field', 'Updatable', .F.)
DBSetProp('RV_USERLOGIN.Iid', 'Field', 'UpdateName', 'dbo.users.Iid')
DBSetProp('RV_USERLOGIN.Iid', 'Field', 'DataType', "I")
* Props for the RV_USERLOGIN.cuserid field.
DBSetProp('RV_USERLOGIN.cuserid', 'Field', 'KeyField', .F.)
DBSetProp('RV_USERLOGIN.cuserid', 'Field', 'Updatable', .T.)
DBSetProp('RV_USERLOGIN.cuserid', 'Field', 'UpdateName', 'dbo.users.cuserid')
DBSetProp('RV_USERLOGIN.cuserid', 'Field', 'DataType', "C(10)")
* Props for the RV_USERLOGIN.cpassword field.
DBSetProp('RV_USERLOGIN.cpassword', 'Field', 'KeyField', .F.)
DBSetProp('RV_USERLOGIN.cpassword', 'Field', 'Updatable', .T.)
DBSetProp('RV_USERLOGIN.cpassword', 'Field', 'UpdateName', 'dbo.users.cpassword')
DBSetProp('RV_USERLOGIN.cpassword', 'Field', 'DataType', "C(15)")
* Props for the RV_USERLOGIN.cfullname field.
DBSetProp('RV_USERLOGIN.cfullname', 'Field', 'KeyField', .F.)
DBSetProp('RV_USERLOGIN.cfullname', 'Field', 'Updatable', .T.)
DBSetProp('RV_USERLOGIN.cfullname', 'Field', 'UpdateName', 'dbo.users.cfullname')
DBSetProp('RV_USERLOGIN.cfullname', 'Field', 'DataType', "C(25)")
* Props for the RV_USERLOGIN.idatabaseutilities field.
DBSetProp('RV_USERLOGIN.idatabaseutilities', 'Field', 'KeyField', .F.)
DBSetProp('RV_USERLOGIN.idatabaseutilities', 'Field', 'Updatable', .T.)
DBSetProp('RV_USERLOGIN.idatabaseutilities', 'Field', 'UpdateName', 'dbo.users.idatabaseutilities')
DBSetProp('RV_USERLOGIN.idatabaseutilities', 'Field', 'DataType', "I")
* Props for the RV_USERLOGIN.iprintreports field.
DBSetProp('RV_USERLOGIN.iprintreports', 'Field', 'KeyField', .F.)
DBSetProp('RV_USERLOGIN.iprintreports', 'Field', 'Updatable', .T.)
DBSetProp('RV_USERLOGIN.iprintreports', 'Field', 'UpdateName', 'dbo.users.iprintreports')
DBSetProp('RV_USERLOGIN.iprintreports', 'Field', 'DataType', "I")
* Props for the RV_USERLOGIN.isystemsettings field.
DBSetProp('RV_USERLOGIN.isystemsettings', 'Field', 'KeyField', .F.)
DBSetProp('RV_USERLOGIN.isystemsettings', 'Field', 'Updatable', .T.)
DBSetProp('RV_USERLOGIN.isystemsettings', 'Field', 'UpdateName', 'dbo.users.isystemsettings')
DBSetProp('RV_USERLOGIN.isystemsettings', 'Field', 'DataType', "I")
* Props for the RV_USERLOGIN.iusergroups field.
DBSetProp('RV_USERLOGIN.iusergroups', 'Field', 'KeyField', .F.)
DBSetProp('RV_USERLOGIN.iusergroups', 'Field', 'Updatable', .T.)
DBSetProp('RV_USERLOGIN.iusergroups', 'Field', 'UpdateName', 'dbo.users.iusergroups')
DBSetProp('RV_USERLOGIN.iusergroups', 'Field', 'DataType', "I")
* Props for the RV_USERLOGIN.iuserpreferences field.
DBSetProp('RV_USERLOGIN.iuserpreferences', 'Field', 'KeyField', .F.)
DBSetProp('RV_USERLOGIN.iuserpreferences', 'Field', 'Updatable', .T.)
DBSetProp('RV_USERLOGIN.iuserpreferences', 'Field', 'UpdateName', 'dbo.users.iuserpreferences')
DBSetProp('RV_USERLOGIN.iuserpreferences', 'Field', 'DataType', "I")
* Props for the RV_USERLOGIN.iusers field.
DBSetProp('RV_USERLOGIN.iusers', 'Field', 'KeyField', .F.)
DBSetProp('RV_USERLOGIN.iusers', 'Field', 'Updatable', .T.)
DBSetProp('RV_USERLOGIN.iusers', 'Field', 'UpdateName', 'dbo.users.iusers')
DBSetProp('RV_USERLOGIN.iusers', 'Field', 'DataType', "I")
* Props for the RV_USERLOGIN.tlastupd field.
DBSetProp('RV_USERLOGIN.tlastupd', 'Field', 'KeyField', .F.)
DBSetProp('RV_USERLOGIN.tlastupd', 'Field', 'Updatable', .T.)
DBSetProp('RV_USERLOGIN.tlastupd', 'Field', 'UpdateName', 'dbo.users.tlastupd')
DBSetProp('RV_USERLOGIN.tlastupd', 'Field', 'DataType', "T")
* Props for the RV_USERLOGIN.clastupdid field.
DBSetProp('RV_USERLOGIN.clastupdid', 'Field', 'KeyField', .F.)
DBSetProp('RV_USERLOGIN.clastupdid', 'Field', 'Updatable', .T.)
DBSetProp('RV_USERLOGIN.clastupdid', 'Field', 'UpdateName', 'dbo.users.clastupdid')
DBSetProp('RV_USERLOGIN.clastupdid', 'Field', 'DataType', "C(10)")
ENDFUNC

FUNCTION MakeView_RV_USERS
***************** View setup for RV_USERS ***************

CREATE SQL VIEW "RV_USERS" ;
REMOTE CONNECT "CONNECT1" ;
AS SELECT * FROM dbo.users ;
ORDER BY Users.cuserid

DBSetProp('RV_USERS', 'View', 'UpdateType', 1)
DBSetProp('RV_USERS', 'View', 'WhereType', 1)
DBSetProp('RV_USERS', 'View', 'FetchMemo', .T.)
DBSetProp('RV_USERS', 'View', 'SendUpdates', .T.)
DBSetProp('RV_USERS', 'View', 'UseMemoSize', 255)
DBSetProp('RV_USERS', 'View', 'FetchSize', 100)
DBSetProp('RV_USERS', 'View', 'MaxRecords', -1)
DBSetProp('RV_USERS', 'View', 'Tables', 'Users')
DBSetProp('RV_USERS', 'View', 'Prepared', .F.)
DBSetProp('RV_USERS', 'View', 'CompareMemo', .T.)
DBSetProp('RV_USERS', 'View', 'FetchAsNeeded', .F.)
DBSetProp('RV_USERS', 'View', 'FetchSize', 100)
DBSetProp('RV_USERS', 'View', 'Comment', "")
DBSetProp('RV_USERS', 'View', 'BatchUpdateCount', 1)
DBSetProp('RV_USERS', 'View', 'ShareConnection', .F.)

*!* Field Level Properties for RV_USERS
* Props for the RV_USERS.iid field.
DBSetProp('RV_USERS.iid', 'Field', 'KeyField', .T.)
DBSetProp('RV_USERS.iid', 'Field', 'Updatable', .T.)
DBSetProp('RV_USERS.iid', 'Field', 'UpdateName', 'Users.iID')
DBSetProp('RV_USERS.iid', 'Field', 'DataType', "I")
* Props for the RV_USERS.cuserid field.
DBSetProp('RV_USERS.cuserid', 'Field', 'KeyField', .F.)
DBSetProp('RV_USERS.cuserid', 'Field', 'Updatable', .T.)
DBSetProp('RV_USERS.cuserid', 'Field', 'UpdateName', 'Users.cUserID')
DBSetProp('RV_USERS.cuserid', 'Field', 'DataType', "C(10)")
* Props for the RV_USERS.cpassword field.
DBSetProp('RV_USERS.cpassword', 'Field', 'KeyField', .F.)
DBSetProp('RV_USERS.cpassword', 'Field', 'Updatable', .T.)
DBSetProp('RV_USERS.cpassword', 'Field', 'UpdateName', 'Users.cPassword')
DBSetProp('RV_USERS.cpassword', 'Field', 'DataType', "C(15)")
* Props for the RV_USERS.cfullname field.
DBSetProp('RV_USERS.cfullname', 'Field', 'KeyField', .F.)
DBSetProp('RV_USERS.cfullname', 'Field', 'Updatable', .T.)
DBSetProp('RV_USERS.cfullname', 'Field', 'UpdateName', 'Users.cFullName')
DBSetProp('RV_USERS.cfullname', 'Field', 'DataType', "C(25)")
* Props for the RV_USERS.idatabaseutilities field.
DBSetProp('RV_USERS.idatabaseutilities', 'Field', 'KeyField', .F.)
DBSetProp('RV_USERS.idatabaseutilities', 'Field', 'Updatable', .T.)
DBSetProp('RV_USERS.idatabaseutilities', 'Field', 'UpdateName', 'Users.iDatabaseUtilities')
DBSetProp('RV_USERS.idatabaseutilities', 'Field', 'DataType', "I")
* Props for the RV_USERS.iprintreports field.
DBSetProp('RV_USERS.iprintreports', 'Field', 'KeyField', .F.)
DBSetProp('RV_USERS.iprintreports', 'Field', 'Updatable', .T.)
DBSetProp('RV_USERS.iprintreports', 'Field', 'UpdateName', 'Users.iPrintReports')
DBSetProp('RV_USERS.iprintreports', 'Field', 'DataType', "I")
* Props for the RV_USERS.isystemsettings field.
DBSetProp('RV_USERS.isystemsettings', 'Field', 'KeyField', .F.)
DBSetProp('RV_USERS.isystemsettings', 'Field', 'Updatable', .T.)
DBSetProp('RV_USERS.isystemsettings', 'Field', 'UpdateName', 'Users.iSystemSettings')
DBSetProp('RV_USERS.isystemsettings', 'Field', 'DataType', "I")
* Props for the RV_USERS.iusergroups field.
DBSetProp('RV_USERS.iusergroups', 'Field', 'KeyField', .F.)
DBSetProp('RV_USERS.iusergroups', 'Field', 'Updatable', .T.)
DBSetProp('RV_USERS.iusergroups', 'Field', 'UpdateName', 'Users.iUserGroups')
DBSetProp('RV_USERS.iusergroups', 'Field', 'DataType', "I")
* Props for the RV_USERS.iuserpreferences field.
DBSetProp('RV_USERS.iuserpreferences', 'Field', 'KeyField', .F.)
DBSetProp('RV_USERS.iuserpreferences', 'Field', 'Updatable', .T.)
DBSetProp('RV_USERS.iuserpreferences', 'Field', 'UpdateName', 'Users.iUserPreferences')
DBSetProp('RV_USERS.iuserpreferences', 'Field', 'DataType', "I")
* Props for the RV_USERS.iusers field.
DBSetProp('RV_USERS.iusers', 'Field', 'KeyField', .F.)
DBSetProp('RV_USERS.iusers', 'Field', 'Updatable', .T.)
DBSetProp('RV_USERS.iusers', 'Field', 'UpdateName', 'Users.iUsers')
DBSetProp('RV_USERS.iusers', 'Field', 'DataType', "I")
* Props for the RV_USERS.tlastupd field.
DBSetProp('RV_USERS.tlastupd', 'Field', 'KeyField', .F.)
DBSetProp('RV_USERS.tlastupd', 'Field', 'Updatable', .T.)
DBSetProp('RV_USERS.tlastupd', 'Field', 'UpdateName', 'Users.tLastUpd')
DBSetProp('RV_USERS.tlastupd', 'Field', 'DataType', "T")
* Props for the RV_USERS.clastupdid field.
DBSetProp('RV_USERS.clastupdid', 'Field', 'KeyField', .F.)
DBSetProp('RV_USERS.clastupdid', 'Field', 'Updatable', .T.)
DBSetProp('RV_USERS.clastupdid', 'Field', 'UpdateName', 'dbo.users.clastupdid')
DBSetProp('RV_USERS.clastupdid', 'Field', 'DataType', "C(10)")
ENDFUNC

FUNCTION MakeView_RV_USGRLINK
***************** View setup for RV_USGRLINK ***************
CREATE SQL VIEW "RV_USGRLINK" ;
REMOTE CONNECT "CONNECT1" ;
AS SELECT * ;
FROM dbo.usgrlink ;
WHERE ;
Usgrlink.iuserid = ?vp_iuserid ;
AND Usgrlink.igroupid = ?vp_igroupid

DBSetProp('RV_USGRLINK', 'View', 'UpdateType', 1)
DBSetProp('RV_USGRLINK', 'View', 'WhereType', 3)
DBSetProp('RV_USGRLINK', 'View', 'FetchMemo', .T.)
DBSetProp('RV_USGRLINK', 'View', 'SendUpdates', .T.)
DBSetProp('RV_USGRLINK', 'View', 'UseMemoSize', 255)
DBSetProp('RV_USGRLINK', 'View', 'FetchSize', 100)
DBSetProp('RV_USGRLINK', 'View', 'MaxRecords', -1)
DBSetProp('RV_USGRLINK', 'View', 'Tables', 'dbo.usgrlink')
DBSetProp('RV_USGRLINK', 'View', 'Prepared', .F.)
DBSetProp('RV_USGRLINK', 'View', 'CompareMemo', .T.)
DBSetProp('RV_USGRLINK', 'View', 'FetchAsNeeded', .F.)
DBSetProp('RV_USGRLINK', 'View', 'FetchSize', 100)
DBSetProp('RV_USGRLINK', 'View', 'Comment', "")
DBSetProp('RV_USGRLINK', 'View', 'BatchUpdateCount', 1)
DBSetProp('RV_USGRLINK', 'View', 'ShareConnection', .F.)

*!* Field Level Properties for RV_USGRLINK
* Props for the RV_USGRLINK.iID field.
DBSetProp('RV_USGRLINK.iID', 'Field', 'KeyField', .T.)
DBSetProp('RV_USGRLINK.iID', 'Field', 'Updatable', .T.)
DBSetProp('RV_USGRLINK.iID', 'Field', 'UpdateName', 'dbo.usgrlink.iID')
DBSetProp('RV_USGRLINK.iID', 'Field', 'DataType', "I")
* Props for the RV_USGRLINK.igroupid field.
DBSetProp('RV_USGRLINK.igroupid', 'Field', 'KeyField', .F.)
DBSetProp('RV_USGRLINK.igroupid', 'Field', 'Updatable', .T.)
DBSetProp('RV_USGRLINK.igroupid', 'Field', 'UpdateName', 'dbo.usgrlink.igroupid')
DBSetProp('RV_USGRLINK.igroupid', 'Field', 'DataType', "I")
* Props for the RV_USGRLINK.iuserid field.
DBSetProp('RV_USGRLINK.iuserid', 'Field', 'KeyField', .F.)
DBSetProp('RV_USGRLINK.iuserid', 'Field', 'Updatable', .T.)
DBSetProp('RV_USGRLINK.iuserid', 'Field', 'UpdateName', 'dbo.usgrlink.iuserid')
DBSetProp('RV_USGRLINK.iuserid', 'Field', 'DataType', "I")
* Props for the RV_USGRLINK.iorder field.
DBSetProp('RV_USGRLINK.iorder', 'Field', 'KeyField', .F.)
DBSetProp('RV_USGRLINK.iorder', 'Field', 'Updatable', .T.)
DBSetProp('RV_USGRLINK.iorder', 'Field', 'UpdateName', 'dbo.usgrlink.iorder')
DBSetProp('RV_USGRLINK.iorder', 'Field', 'DataType', "I")
* Props for the RV_USGRLINK.tlastupd field.
DBSetProp('RV_USGRLINK.tlastupd', 'Field', 'KeyField', .F.)
DBSetProp('RV_USGRLINK.tlastupd', 'Field', 'Updatable', .T.)
DBSetProp('RV_USGRLINK.tlastupd', 'Field', 'UpdateName', 'dbo.usgrlink.tlastupd')
DBSetProp('RV_USGRLINK.tlastupd', 'Field', 'DataType', "T")
* Props for the RV_USGRLINK.ilastupdid field.
DBSetProp('RV_USGRLINK.ilastupdid', 'Field', 'KeyField', .F.)
DBSetProp('RV_USGRLINK.ilastupdid', 'Field', 'Updatable', .T.)
DBSetProp('RV_USGRLINK.ilastupdid', 'Field', 'UpdateName', 'dbo.usgrlink.ilastupdid')
DBSetProp('RV_USGRLINK.ilastupdid', 'Field', 'DataType', "I")
ENDFUNC

FUNCTION MakeView_RV_REPOLIST
***************** View setup for RV_REPOLIST ***************

CREATE SQL VIEW "RV_REPOLIST" ;
REMOTE CONNECT "CONNECT1" ;
AS SELECT * FROM dbo.repolist

DBSetProp('RV_REPOLIST', 'View', 'UpdateType', 1)
DBSetProp('RV_REPOLIST', 'View', 'WhereType', 3)
DBSetProp('RV_REPOLIST', 'View', 'FetchMemo', .T.)
DBSetProp('RV_REPOLIST', 'View', 'SendUpdates', .F.)
DBSetProp('RV_REPOLIST', 'View', 'UseMemoSize', 255)
DBSetProp('RV_REPOLIST', 'View', 'FetchSize', 100)
DBSetProp('RV_REPOLIST', 'View', 'MaxRecords', -1)
DBSetProp('RV_REPOLIST', 'View', 'Tables', 'dbo.repolist')
DBSetProp('RV_REPOLIST', 'View', 'Prepared', .F.)
DBSetProp('RV_REPOLIST', 'View', 'CompareMemo', .T.)
DBSetProp('RV_REPOLIST', 'View', 'FetchAsNeeded', .F.)
DBSetProp('RV_REPOLIST', 'View', 'FetchSize', 100)
DBSetProp('RV_REPOLIST', 'View', 'Comment', "")
DBSetProp('RV_REPOLIST', 'View', 'BatchUpdateCount', 1)
DBSetProp('RV_REPOLIST', 'View', 'ShareConnection', .F.)

*!* Field Level Properties for RV_REPOLIST
* Props for the RV_REPOLIST.cdosname field.
DBSetProp('RV_REPOLIST.cdosname', 'Field', 'KeyField', .F.)
DBSetProp('RV_REPOLIST.cdosname', 'Field', 'Updatable', .T.)
DBSetProp('RV_REPOLIST.cdosname', 'Field', 'UpdateName', 'dbo.repolist.cdosname')
DBSetProp('RV_REPOLIST.cdosname', 'Field', 'DataType', "C(8)")
* Props for the RV_REPOLIST.cfullname field.
DBSetProp('RV_REPOLIST.cfullname', 'Field', 'KeyField', .F.)
DBSetProp('RV_REPOLIST.cfullname', 'Field', 'Updatable', .T.)
DBSetProp('RV_REPOLIST.cfullname', 'Field', 'UpdateName', 'dbo.repolist.cfullname')
DBSetProp('RV_REPOLIST.cfullname', 'Field', 'DataType', "C(30)")
* Props for the RV_REPOLIST.ctype field.
DBSetProp('RV_REPOLIST.ctype', 'Field', 'KeyField', .F.)
DBSetProp('RV_REPOLIST.ctype', 'Field', 'Updatable', .T.)
DBSetProp('RV_REPOLIST.ctype', 'Field', 'UpdateName', 'dbo.repolist.ctype')
DBSetProp('RV_REPOLIST.ctype', 'Field', 'DataType', "C(4)")
* Props for the RV_REPOLIST.ldaterange field.
DBSetProp('RV_REPOLIST.ldaterange', 'Field', 'KeyField', .F.)
DBSetProp('RV_REPOLIST.ldaterange', 'Field', 'Updatable', .T.)
DBSetProp('RV_REPOLIST.ldaterange', 'Field', 'UpdateName', 'dbo.repolist.ldaterange')
DBSetProp('RV_REPOLIST.ldaterange', 'Field', 'DataType', "L")
ENDFUNC

FUNCTION MakeView_RV_STATES
***************** View setup for RV_STATES ***************

CREATE SQL VIEW "RV_STATES" ;
REMOTE CONNECT "CONNECT1" ;
AS SELECT * FROM dbo.states ;
WHERE ;
UPPER(States.ccountry) = UPPER(?vp_cCountry) ;
ORDER BY States.cstate

DBSetProp('RV_STATES', 'View', 'UpdateType', 1)
DBSetProp('RV_STATES', 'View', 'WhereType', 3)
DBSetProp('RV_STATES', 'View', 'FetchMemo', .T.)
DBSetProp('RV_STATES', 'View', 'SendUpdates', .F.)
DBSetProp('RV_STATES', 'View', 'UseMemoSize', 255)
DBSetProp('RV_STATES', 'View', 'FetchSize', 100)
DBSetProp('RV_STATES', 'View', 'MaxRecords', -1)
DBSetProp('RV_STATES', 'View', 'Tables', 'dbo.states')
DBSetProp('RV_STATES', 'View', 'Prepared', .F.)
DBSetProp('RV_STATES', 'View', 'CompareMemo', .T.)
DBSetProp('RV_STATES', 'View', 'FetchAsNeeded', .F.)
DBSetProp('RV_STATES', 'View', 'FetchSize', 100)
DBSetProp('RV_STATES', 'View', 'Comment', "")
DBSetProp('RV_STATES', 'View', 'BatchUpdateCount', 1)
DBSetProp('RV_STATES', 'View', 'ShareConnection', .F.)

*!* Field Level Properties for RV_STATES
* Props for the RV_STATES.cstate field.
DBSetProp('RV_STATES.cstate', 'Field', 'KeyField', .T.)
DBSetProp('RV_STATES.cstate', 'Field', 'Updatable', .F.)
DBSetProp('RV_STATES.cstate', 'Field', 'UpdateName', 'dbo.states.cstate')
DBSetProp('RV_STATES.cstate', 'Field', 'DataType', "C(2)")
* Props for the RV_STATES.cfullname field.
DBSetProp('RV_STATES.cfullname', 'Field', 'KeyField', .F.)
DBSetProp('RV_STATES.cfullname', 'Field', 'Updatable', .T.)
DBSetProp('RV_STATES.cfullname', 'Field', 'UpdateName', 'dbo.states.cfullname')
DBSetProp('RV_STATES.cfullname', 'Field', 'DataType', "C(21)")
* Props for the RV_STATES.ccountry field.
DBSetProp('RV_STATES.ccountry', 'Field', 'KeyField', .F.)
DBSetProp('RV_STATES.ccountry', 'Field', 'Updatable', .T.)
DBSetProp('RV_STATES.ccountry', 'Field', 'UpdateName', 'dbo.states.ccountry')
DBSetProp('RV_STATES.ccountry', 'Field', 'DataType', "C(20)")
ENDFUNC

FUNCTION MakeView_RV_USERGROUPSECURE
***************** View setup for RV_USERGROUPSECURE ***************

CREATE SQL VIEW "RV_USERGROUPSECURE" ;
REMOTE CONNECT "CONNECT1" ;
AS SELECT * from dbo.MMSecure ;
WHERE ;
(MMSecure.cType = 'U' ;
AND MMSecure.iUsrGroupID = ?vp_iUsrGroupID) ;
OR (MMSecure.cType = 'G' ;
AND MMSecure.iUsrGroupID IN ;
(SELECT UsGrLink.iGroupID ;
FROM dbo.usgrlink WHERE Usgrlink.iUserID = ?vp_iUsrGroupID)) ;
ORDER BY iControlID, cType DESC, iAccess DESC

DBSetProp('RV_USERGROUPSECURE', 'View', 'UpdateType', 1)
DBSetProp('RV_USERGROUPSECURE', 'View', 'WhereType', 3)
DBSetProp('RV_USERGROUPSECURE', 'View', 'FetchMemo', .T.)
DBSetProp('RV_USERGROUPSECURE', 'View', 'SendUpdates', .T.)
DBSetProp('RV_USERGROUPSECURE', 'View', 'UseMemoSize', 255)
DBSetProp('RV_USERGROUPSECURE', 'View', 'FetchSize', 100)
DBSetProp('RV_USERGROUPSECURE', 'View', 'MaxRecords', -1)
DBSetProp('RV_USERGROUPSECURE', 'View', 'Tables', 'dbo.MMSecure')
DBSetProp('RV_USERGROUPSECURE', 'View', 'Prepared', .F.)
DBSetProp('RV_USERGROUPSECURE', 'View', 'CompareMemo', .T.)
DBSetProp('RV_USERGROUPSECURE', 'View', 'FetchAsNeeded', .F.)
DBSetProp('RV_USERGROUPSECURE', 'View', 'FetchSize', 100)
DBSetProp('RV_USERGROUPSECURE', 'View', 'Comment', "")
DBSetProp('RV_USERGROUPSECURE', 'View', 'BatchUpdateCount', 1)
DBSetProp('RV_USERGROUPSECURE', 'View', 'ShareConnection', .F.)

*!* Field Level Properties for RV_USERGROUPSECURE
* Props for the RV_USERGROUPSECURE.iid field.
DBSetProp('RV_USERGROUPSECURE.iid', 'Field', 'KeyField', .T.)
DBSetProp('RV_USERGROUPSECURE.iid', 'Field', 'Updatable', .T.)
DBSetProp('RV_USERGROUPSECURE.iid', 'Field', 'UpdateName', 'dbo.MMSecure.iid')
DBSetProp('RV_USERGROUPSECURE.iid', 'Field', 'DataType', "I")
* Props for the RV_USERGROUPSECURE.icontrolid field.
DBSetProp('RV_USERGROUPSECURE.icontrolid', 'Field', 'KeyField', .F.)
DBSetProp('RV_USERGROUPSECURE.icontrolid', 'Field', 'Updatable', .T.)
DBSetProp('RV_USERGROUPSECURE.icontrolid', 'Field', 'UpdateName', 'dbo.MMSecure.icontrolid')
DBSetProp('RV_USERGROUPSECURE.icontrolid', 'Field', 'DataType', "I")
* Props for the RV_USERGROUPSECURE.iusrgroupid field.
DBSetProp('RV_USERGROUPSECURE.iusrgroupid', 'Field', 'KeyField', .F.)
DBSetProp('RV_USERGROUPSECURE.iusrgroupid', 'Field', 'Updatable', .T.)
DBSetProp('RV_USERGROUPSECURE.iusrgroupid', 'Field', 'UpdateName', 'dbo.MMSecure.iusrgroupid')
DBSetProp('RV_USERGROUPSECURE.iusrgroupid', 'Field', 'DataType', "I")
* Props for the RV_USERGROUPSECURE.ctype field.
DBSetProp('RV_USERGROUPSECURE.ctype', 'Field', 'KeyField', .F.)
DBSetProp('RV_USERGROUPSECURE.ctype', 'Field', 'Updatable', .T.)
DBSetProp('RV_USERGROUPSECURE.ctype', 'Field', 'UpdateName', 'dbo.MMSecure.ctype')
DBSetProp('RV_USERGROUPSECURE.ctype', 'Field', 'DataType', "C(1)")
* Props for the RV_USERGROUPSECURE.iaccess field.
DBSetProp('RV_USERGROUPSECURE.iaccess', 'Field', 'KeyField', .F.)
DBSetProp('RV_USERGROUPSECURE.iaccess', 'Field', 'Updatable', .T.)
DBSetProp('RV_USERGROUPSECURE.iaccess', 'Field', 'UpdateName', 'dbo.MMSecure.iaccess')
DBSetProp('RV_USERGROUPSECURE.iaccess', 'Field', 'DataType', "I")
ENDFUNC

FUNCTION MakeView_RV_CONTROLSECURITY
***************** View setup for RV_CONTROLSECURITY ***************

CREATE SQL VIEW "RV_CONTROLSECURITY" ;
REMOTE CONNECT "CONNECT1" ;
AS SELECT * FROM dbo.mmsecure ;
WHERE Mmsecure.icontrolid = ?vp_icontrolID

DBSetProp('RV_CONTROLSECURITY', 'View', 'UpdateType', 1)
DBSetProp('RV_CONTROLSECURITY', 'View', 'WhereType', 3)
DBSetProp('RV_CONTROLSECURITY', 'View', 'FetchMemo', .T.)
DBSetProp('RV_CONTROLSECURITY', 'View', 'SendUpdates', .T.)
DBSetProp('RV_CONTROLSECURITY', 'View', 'UseMemoSize', 255)
DBSetProp('RV_CONTROLSECURITY', 'View', 'FetchSize', 100)
DBSetProp('RV_CONTROLSECURITY', 'View', 'MaxRecords', -1)
DBSetProp('RV_CONTROLSECURITY', 'View', 'Tables', 'dbo.mmsecure')
DBSetProp('RV_CONTROLSECURITY', 'View', 'Prepared', .F.)
DBSetProp('RV_CONTROLSECURITY', 'View', 'CompareMemo', .T.)
DBSetProp('RV_CONTROLSECURITY', 'View', 'FetchAsNeeded', .F.)
DBSetProp('RV_CONTROLSECURITY', 'View', 'FetchSize', 100)
DBSetProp('RV_CONTROLSECURITY', 'View', 'Comment', "")
DBSetProp('RV_CONTROLSECURITY', 'View', 'BatchUpdateCount', 1)
DBSetProp('RV_CONTROLSECURITY', 'View', 'ShareConnection', .F.)

*!* Field Level Properties for RV_CONTROLSECURITY
* Props for the RV_CONTROLSECURITY.iid field.
DBSetProp('RV_CONTROLSECURITY.iid', 'Field', 'KeyField', .T.)
DBSetProp('RV_CONTROLSECURITY.iid', 'Field', 'Updatable', .T.)
DBSetProp('RV_CONTROLSECURITY.iid', 'Field', 'UpdateName', 'dbo.mmsecure.iid')
DBSetProp('RV_CONTROLSECURITY.iid', 'Field', 'DataType', "I")
* Props for the RV_CONTROLSECURITY.icontrolid field.
DBSetProp('RV_CONTROLSECURITY.icontrolid', 'Field', 'KeyField', .F.)
DBSetProp('RV_CONTROLSECURITY.icontrolid', 'Field', 'Updatable', .T.)
DBSetProp('RV_CONTROLSECURITY.icontrolid', 'Field', 'UpdateName', 'dbo.mmsecure.icontrolid')
DBSetProp('RV_CONTROLSECURITY.icontrolid', 'Field', 'DataType', "I")
* Props for the RV_CONTROLSECURITY.iusrgroupid field.
DBSetProp('RV_CONTROLSECURITY.iusrgroupid', 'Field', 'KeyField', .F.)
DBSetProp('RV_CONTROLSECURITY.iusrgroupid', 'Field', 'Updatable', .T.)
DBSetProp('RV_CONTROLSECURITY.iusrgroupid', 'Field', 'UpdateName', 'dbo.mmsecure.iusrgroupid')
DBSetProp('RV_CONTROLSECURITY.iusrgroupid', 'Field', 'DataType', "I")
* Props for the RV_CONTROLSECURITY.ctype field.
DBSetProp('RV_CONTROLSECURITY.ctype', 'Field', 'KeyField', .F.)
DBSetProp('RV_CONTROLSECURITY.ctype', 'Field', 'Updatable', .T.)
DBSetProp('RV_CONTROLSECURITY.ctype', 'Field', 'UpdateName', 'dbo.mmsecure.ctype')
DBSetProp('RV_CONTROLSECURITY.ctype', 'Field', 'DataType', "C(1)")
* Props for the RV_CONTROLSECURITY.iaccess field.
DBSetProp('RV_CONTROLSECURITY.iaccess', 'Field', 'KeyField', .F.)
DBSetProp('RV_CONTROLSECURITY.iaccess', 'Field', 'Updatable', .T.)
DBSetProp('RV_CONTROLSECURITY.iaccess', 'Field', 'UpdateName', 'dbo.mmsecure.iaccess')
DBSetProp('RV_CONTROLSECURITY.iaccess', 'Field', 'DataType', "I")
ENDFUNC

FUNCTION MakeView_RV_CONTROLSECURITYUSERS
***************** View setup for RV_CONTROLSECURITYUSERS ***************

CREATE SQL VIEW "RV_CONTROLSECURITYUSERS" ;
REMOTE CONNECT "CONNECT1" ;
AS SELECT Mmsecure.*, Users.cfullname ;
FROM dbo.mmsecure ;
INNER JOIN dbo.users ;
ON Mmsecure.iusrgroupid = Users.iid ;
WHERE Mmsecure.icontrolid = ?vp_icontrolid ;
AND Mmsecure.ctype = "U"

DBSetProp('RV_CONTROLSECURITYUSERS', 'View', 'UpdateType', 1)
DBSetProp('RV_CONTROLSECURITYUSERS', 'View', 'WhereType', 3)
DBSetProp('RV_CONTROLSECURITYUSERS', 'View', 'FetchMemo', .T.)
DBSetProp('RV_CONTROLSECURITYUSERS', 'View', 'SendUpdates', .T.)
DBSetProp('RV_CONTROLSECURITYUSERS', 'View', 'UseMemoSize', 255)
DBSetProp('RV_CONTROLSECURITYUSERS', 'View', 'FetchSize', 100)
DBSetProp('RV_CONTROLSECURITYUSERS', 'View', 'MaxRecords', -1)
DBSetProp('RV_CONTROLSECURITYUSERS', 'View', 'Tables', 'dbo.mmsecure')
DBSetProp('RV_CONTROLSECURITYUSERS', 'View', 'Prepared', .F.)
DBSetProp('RV_CONTROLSECURITYUSERS', 'View', 'CompareMemo', .T.)
DBSetProp('RV_CONTROLSECURITYUSERS', 'View', 'FetchAsNeeded', .F.)
DBSetProp('RV_CONTROLSECURITYUSERS', 'View', 'FetchSize', 100)
DBSetProp('RV_CONTROLSECURITYUSERS', 'View', 'Comment', "")
DBSetProp('RV_CONTROLSECURITYUSERS', 'View', 'BatchUpdateCount', 1)
DBSetProp('RV_CONTROLSECURITYUSERS', 'View', 'ShareConnection', .F.)

*!* Field Level Properties for RV_CONTROLSECURITYUSERS
* Props for the RV_CONTROLSECURITYUSERS.iid field.
DBSetProp('RV_CONTROLSECURITYUSERS.iid', 'Field', 'KeyField', .T.)
DBSetProp('RV_CONTROLSECURITYUSERS.iid', 'Field', 'Updatable', .T.)
DBSetProp('RV_CONTROLSECURITYUSERS.iid', 'Field', 'UpdateName', 'dbo.mmsecure.iid')
DBSetProp('RV_CONTROLSECURITYUSERS.iid', 'Field', 'DataType', "I")
* Props for the RV_CONTROLSECURITYUSERS.icontrolid field.
DBSetProp('RV_CONTROLSECURITYUSERS.icontrolid', 'Field', 'KeyField', .F.)
DBSetProp('RV_CONTROLSECURITYUSERS.icontrolid', 'Field', 'Updatable', .T.)
DBSetProp('RV_CONTROLSECURITYUSERS.icontrolid', 'Field', 'UpdateName', 'dbo.mmsecure.icontrolid')
DBSetProp('RV_CONTROLSECURITYUSERS.icontrolid', 'Field', 'DataType', "I")
* Props for the RV_CONTROLSECURITYUSERS.iusrgroupid field.
DBSetProp('RV_CONTROLSECURITYUSERS.iusrgroupid', 'Field', 'KeyField', .F.)
DBSetProp('RV_CONTROLSECURITYUSERS.iusrgroupid', 'Field', 'Updatable', .T.)
DBSetProp('RV_CONTROLSECURITYUSERS.iusrgroupid', 'Field', 'UpdateName', 'dbo.mmsecure.iusrgroupid')
DBSetProp('RV_CONTROLSECURITYUSERS.iusrgroupid', 'Field', 'DataType', "I")
* Props for the RV_CONTROLSECURITYUSERS.ctype field.
DBSetProp('RV_CONTROLSECURITYUSERS.ctype', 'Field', 'KeyField', .F.)
DBSetProp('RV_CONTROLSECURITYUSERS.ctype', 'Field', 'Updatable', .T.)
DBSetProp('RV_CONTROLSECURITYUSERS.ctype', 'Field', 'UpdateName', 'dbo.mmsecure.ctype')
DBSetProp('RV_CONTROLSECURITYUSERS.ctype', 'Field', 'DataType', "C(1)")
* Props for the RV_CONTROLSECURITYUSERS.iaccess field.
DBSetProp('RV_CONTROLSECURITYUSERS.iaccess', 'Field', 'KeyField', .F.)
DBSetProp('RV_CONTROLSECURITYUSERS.iaccess', 'Field', 'Updatable', .T.)
DBSetProp('RV_CONTROLSECURITYUSERS.iaccess', 'Field', 'UpdateName', 'dbo.mmsecure.iaccess')
DBSetProp('RV_CONTROLSECURITYUSERS.iaccess', 'Field', 'DataType', "I")
* Props for the RV_CONTROLSECURITYUSERS.cfullname field.
DBSetProp('RV_CONTROLSECURITYUSERS.cfullname', 'Field', 'KeyField', .F.)
DBSetProp('RV_CONTROLSECURITYUSERS.cfullname', 'Field', 'Updatable', .F.)
DBSetProp('RV_CONTROLSECURITYUSERS.cfullname', 'Field', 'UpdateName', 'dbo.users.cfullname')
DBSetProp('RV_CONTROLSECURITYUSERS.cfullname', 'Field', 'DataType', "C(25)")
ENDFUNC

FUNCTION MakeView_RV_CONTROLSECURITYGROUPS
***************** View setup for RV_CONTROLSECURITYGROUPS ***************

CREATE SQL VIEW "RV_CONTROLSECURITYGROUPS" ;
REMOTE CONNECT "CONNECT1" ;
AS SELECT Mmsecure.*, Groups.cgrpdesc ;
FROM dbo.mmsecure INNER JOIN dbo.groups ;
ON Mmsecure.iusrgroupid = Groups.iid ;
WHERE Mmsecure.icontrolid = ?vp_icontrolid ;
AND Mmsecure.ctype = 'G'

DBSetProp('RV_CONTROLSECURITYGROUPS', 'View', 'UpdateType', 1)
DBSetProp('RV_CONTROLSECURITYGROUPS', 'View', 'WhereType', 3)
DBSetProp('RV_CONTROLSECURITYGROUPS', 'View', 'FetchMemo', .T.)
DBSetProp('RV_CONTROLSECURITYGROUPS', 'View', 'SendUpdates', .T.)
DBSetProp('RV_CONTROLSECURITYGROUPS', 'View', 'UseMemoSize', 255)
DBSetProp('RV_CONTROLSECURITYGROUPS', 'View', 'FetchSize', 100)
DBSetProp('RV_CONTROLSECURITYGROUPS', 'View', 'MaxRecords', -1)
DBSetProp('RV_CONTROLSECURITYGROUPS', 'View', 'Tables', 'dbo.mmsecure')
DBSetProp('RV_CONTROLSECURITYGROUPS', 'View', 'Prepared', .F.)
DBSetProp('RV_CONTROLSECURITYGROUPS', 'View', 'CompareMemo', .T.)
DBSetProp('RV_CONTROLSECURITYGROUPS', 'View', 'FetchAsNeeded', .F.)
DBSetProp('RV_CONTROLSECURITYGROUPS', 'View', 'FetchSize', 100)
DBSetProp('RV_CONTROLSECURITYGROUPS', 'View', 'Comment', "")
DBSetProp('RV_CONTROLSECURITYGROUPS', 'View', 'BatchUpdateCount', 1)
DBSetProp('RV_CONTROLSECURITYGROUPS', 'View', 'ShareConnection', .F.)

*!* Field Level Properties for RV_CONTROLSECURITYGROUPS
* Props for the RV_CONTROLSECURITYGROUPS.iid field.
DBSetProp('RV_CONTROLSECURITYGROUPS.iid', 'Field', 'KeyField', .T.)
DBSetProp('RV_CONTROLSECURITYGROUPS.iid', 'Field', 'Updatable', .T.)
DBSetProp('RV_CONTROLSECURITYGROUPS.iid', 'Field', 'UpdateName', 'dbo.mmsecure.iid')
DBSetProp('RV_CONTROLSECURITYGROUPS.iid', 'Field', 'DataType', "I")
* Props for the RV_CONTROLSECURITYGROUPS.icontrolid field.
DBSetProp('RV_CONTROLSECURITYGROUPS.icontrolid', 'Field', 'KeyField', .F.)
DBSetProp('RV_CONTROLSECURITYGROUPS.icontrolid', 'Field', 'Updatable', .T.)
DBSetProp('RV_CONTROLSECURITYGROUPS.icontrolid', 'Field', 'UpdateName', 'dbo.mmsecure.icontrolid')
DBSetProp('RV_CONTROLSECURITYGROUPS.icontrolid', 'Field', 'DataType', "I")
* Props for the RV_CONTROLSECURITYGROUPS.iusrgroupid field.
DBSetProp('RV_CONTROLSECURITYGROUPS.iusrgroupid', 'Field', 'KeyField', .F.)
DBSetProp('RV_CONTROLSECURITYGROUPS.iusrgroupid', 'Field', 'Updatable', .T.)
DBSetProp('RV_CONTROLSECURITYGROUPS.iusrgroupid', 'Field', 'UpdateName', 'dbo.mmsecure.iusrgroupid')
DBSetProp('RV_CONTROLSECURITYGROUPS.iusrgroupid', 'Field', 'DataType', "I")
* Props for the RV_CONTROLSECURITYGROUPS.ctype field.
DBSetProp('RV_CONTROLSECURITYGROUPS.ctype', 'Field', 'KeyField', .F.)
DBSetProp('RV_CONTROLSECURITYGROUPS.ctype', 'Field', 'Updatable', .T.)
DBSetProp('RV_CONTROLSECURITYGROUPS.ctype', 'Field', 'UpdateName', 'dbo.mmsecure.ctype')
DBSetProp('RV_CONTROLSECURITYGROUPS.ctype', 'Field', 'DataType', "C(1)")
* Props for the RV_CONTROLSECURITYGROUPS.iaccess field.
DBSetProp('RV_CONTROLSECURITYGROUPS.iaccess', 'Field', 'KeyField', .F.)
DBSetProp('RV_CONTROLSECURITYGROUPS.iaccess', 'Field', 'Updatable', .T.)
DBSetProp('RV_CONTROLSECURITYGROUPS.iaccess', 'Field', 'UpdateName', 'dbo.mmsecure.iaccess')
DBSetProp('RV_CONTROLSECURITYGROUPS.iaccess', 'Field', 'DataType', "I")
* Props for the RV_CONTROLSECURITYGROUPS.cgrpdesc field.
DBSetProp('RV_CONTROLSECURITYGROUPS.cgrpdesc', 'Field', 'KeyField', .F.)
DBSetProp('RV_CONTROLSECURITYGROUPS.cgrpdesc', 'Field', 'Updatable', .F.)
DBSetProp('RV_CONTROLSECURITYGROUPS.cgrpdesc', 'Field', 'UpdateName', 'dbo.groups.cgrpdesc')
DBSetProp('RV_CONTROLSECURITYGROUPS.cgrpdesc', 'Field', 'DataType', "C(30)")
ENDFUNC

FUNCTION MakeView_RV_GROUPLIST
***************** View setup for RV_GROUPLIST ***************

CREATE SQL VIEW "RV_GROUPLIST" ;
REMOTE CONNECT "CONNECT1" ;
AS SELECT * FROM dbo.groups

DBSetProp('RV_GROUPLIST', 'View', 'UpdateType', 1)
DBSetProp('RV_GROUPLIST', 'View', 'WhereType', 3)
DBSetProp('RV_GROUPLIST', 'View', 'FetchMemo', .T.)
DBSetProp('RV_GROUPLIST', 'View', 'SendUpdates', .T.)
DBSetProp('RV_GROUPLIST', 'View', 'UseMemoSize', 255)
DBSetProp('RV_GROUPLIST', 'View', 'FetchSize', 100)
DBSetProp('RV_GROUPLIST', 'View', 'MaxRecords', -1)
DBSetProp('RV_GROUPLIST', 'View', 'Tables', 'dbo.groups')
DBSetProp('RV_GROUPLIST', 'View', 'Prepared', .F.)
DBSetProp('RV_GROUPLIST', 'View', 'CompareMemo', .T.)
DBSetProp('RV_GROUPLIST', 'View', 'FetchAsNeeded', .F.)
DBSetProp('RV_GROUPLIST', 'View', 'FetchSize', 100)
DBSetProp('RV_GROUPLIST', 'View', 'Comment', "")
DBSetProp('RV_GROUPLIST', 'View', 'BatchUpdateCount', 1)
DBSetProp('RV_GROUPLIST', 'View', 'ShareConnection', .F.)

*!* Field Level Properties for RV_GROUPLIST
* Props for the RV_GROUPLIST.iid field.
DBSetProp('RV_GROUPLIST.iid', 'Field', 'KeyField', .T.)
DBSetProp('RV_GROUPLIST.iid', 'Field', 'Updatable', .T.)
DBSetProp('RV_GROUPLIST.iid', 'Field', 'UpdateName', 'dbo.groups.iid')
DBSetProp('RV_GROUPLIST.iid', 'Field', 'DataType', "I")
* Props for the RV_GROUPLIST.cgrpdesc field.
DBSetProp('RV_GROUPLIST.cgrpdesc', 'Field', 'KeyField', .F.)
DBSetProp('RV_GROUPLIST.cgrpdesc', 'Field', 'Updatable', .T.)
DBSetProp('RV_GROUPLIST.cgrpdesc', 'Field', 'UpdateName', 'dbo.groups.cgrpdesc')
DBSetProp('RV_GROUPLIST.cgrpdesc', 'Field', 'DataType', "C(30)")
* Props for the RV_GROUPLIST.tlastupd field.
DBSetProp('RV_GROUPLIST.tlastupd', 'Field', 'KeyField', .F.)
DBSetProp('RV_GROUPLIST.tlastupd', 'Field', 'Updatable', .T.)
DBSetProp('RV_GROUPLIST.tlastupd', 'Field', 'UpdateName', 'dbo.groups.tlastupd')
DBSetProp('RV_GROUPLIST.tlastupd', 'Field', 'DataType', "T")
* Props for the RV_GROUPLIST.ilastupdid field.
DBSetProp('RV_GROUPLIST.ilastupdid', 'Field', 'KeyField', .F.)
DBSetProp('RV_GROUPLIST.ilastupdid', 'Field', 'Updatable', .T.)
DBSetProp('RV_GROUPLIST.ilastupdid', 'Field', 'UpdateName', 'dbo.groups.ilastupdid')
DBSetProp('RV_GROUPLIST.ilastupdid', 'Field', 'DataType', "I")
ENDFUNC

FUNCTION MakeView_RV_GROUPSECURE
***************** View setup for RV_GROUPSECURE ***************

CREATE SQL VIEW "RV_GROUPSECURE" ;
REMOTE CONNECT "CONNECT1" ;
AS SELECT * FROM dbo.mmsecure ;
WHERE Mmsecure.iusrgroupid = ?vp_iusrgroupID ;
AND Mmsecure.ctype = 'G'

DBSetProp('RV_GROUPSECURE', 'View', 'UpdateType', 1)
DBSetProp('RV_GROUPSECURE', 'View', 'WhereType', 3)
DBSetProp('RV_GROUPSECURE', 'View', 'FetchMemo', .T.)
DBSetProp('RV_GROUPSECURE', 'View', 'SendUpdates', .T.)
DBSetProp('RV_GROUPSECURE', 'View', 'UseMemoSize', 255)
DBSetProp('RV_GROUPSECURE', 'View', 'FetchSize', 100)
DBSetProp('RV_GROUPSECURE', 'View', 'MaxRecords', -1)
DBSetProp('RV_GROUPSECURE', 'View', 'Tables', 'dbo.mmsecure')
DBSetProp('RV_GROUPSECURE', 'View', 'Prepared', .F.)
DBSetProp('RV_GROUPSECURE', 'View', 'CompareMemo', .T.)
DBSetProp('RV_GROUPSECURE', 'View', 'FetchAsNeeded', .F.)
DBSetProp('RV_GROUPSECURE', 'View', 'FetchSize', 100)
DBSetProp('RV_GROUPSECURE', 'View', 'Comment', "")
DBSetProp('RV_GROUPSECURE', 'View', 'BatchUpdateCount', 1)
DBSetProp('RV_GROUPSECURE', 'View', 'ShareConnection', .F.)

*!* Field Level Properties for RV_GROUPSECURE
* Props for the RV_GROUPSECURE.iid field.
DBSetProp('RV_GROUPSECURE.iid', 'Field', 'KeyField', .T.)
DBSetProp('RV_GROUPSECURE.iid', 'Field', 'Updatable', .T.)
DBSetProp('RV_GROUPSECURE.iid', 'Field', 'UpdateName', 'dbo.mmsecure.iid')
DBSetProp('RV_GROUPSECURE.iid', 'Field', 'DataType', "I")
* Props for the RV_GROUPSECURE.icontrolid field.
DBSetProp('RV_GROUPSECURE.icontrolid', 'Field', 'KeyField', .F.)
DBSetProp('RV_GROUPSECURE.icontrolid', 'Field', 'Updatable', .T.)
DBSetProp('RV_GROUPSECURE.icontrolid', 'Field', 'UpdateName', 'dbo.mmsecure.icontrolid')
DBSetProp('RV_GROUPSECURE.icontrolid', 'Field', 'DataType', "I")
* Props for the RV_GROUPSECURE.iusrgroupid field.
DBSetProp('RV_GROUPSECURE.iusrgroupid', 'Field', 'KeyField', .F.)
DBSetProp('RV_GROUPSECURE.iusrgroupid', 'Field', 'Updatable', .T.)
DBSetProp('RV_GROUPSECURE.iusrgroupid', 'Field', 'UpdateName', 'dbo.mmsecure.iusrgroupid')
DBSetProp('RV_GROUPSECURE.iusrgroupid', 'Field', 'DataType', "I")
* Props for the RV_GROUPSECURE.ctype field.
DBSetProp('RV_GROUPSECURE.ctype', 'Field', 'KeyField', .F.)
DBSetProp('RV_GROUPSECURE.ctype', 'Field', 'Updatable', .T.)
DBSetProp('RV_GROUPSECURE.ctype', 'Field', 'UpdateName', 'dbo.mmsecure.ctype')
DBSetProp('RV_GROUPSECURE.ctype', 'Field', 'DataType', "C(1)")
* Props for the RV_GROUPSECURE.iaccess field.
DBSetProp('RV_GROUPSECURE.iaccess', 'Field', 'KeyField', .F.)
DBSetProp('RV_GROUPSECURE.iaccess', 'Field', 'Updatable', .T.)
DBSetProp('RV_GROUPSECURE.iaccess', 'Field', 'UpdateName', 'dbo.mmsecure.iaccess')
DBSetProp('RV_GROUPSECURE.iaccess', 'Field', 'DataType', "I")
ENDFUNC

FUNCTION MakeView_RV_USERGROUPSECURE
***************** View setup for RV_USERGROUPSECURE ***************

CREATE SQL VIEW "RV_USERGROUPSECURE" ;
REMOTE CONNECT "CONNECT1" ;
AS SELECT * from dbo.MMSecure ;
WHERE (MMSecure.cType = 'U' AND MMSecure.iUsrGroupID = ?vp_iUsrGroupID) ;
OR (MMSecure.cType = 'G' AND ;
MMSecure.iUsrGroupID IN ;
(SELECT UsGrLink.iGroupID ;
FROM dbo.usgrlink WHERE Usgrlink.iUserID = ?vp_iUsrGroupID)) ;
ORDER BY iControlID, cType DESC, iAccess DESC

DBSetProp('RV_USERGROUPSECURE', 'View', 'UpdateType', 1)
DBSetProp('RV_USERGROUPSECURE', 'View', 'WhereType', 3)
DBSetProp('RV_USERGROUPSECURE', 'View', 'FetchMemo', .T.)
DBSetProp('RV_USERGROUPSECURE', 'View', 'SendUpdates', .T.)
DBSetProp('RV_USERGROUPSECURE', 'View', 'UseMemoSize', 255)
DBSetProp('RV_USERGROUPSECURE', 'View', 'FetchSize', 100)
DBSetProp('RV_USERGROUPSECURE', 'View', 'MaxRecords', -1)
DBSetProp('RV_USERGROUPSECURE', 'View', 'Tables', 'dbo.MMSecure')
DBSetProp('RV_USERGROUPSECURE', 'View', 'Prepared', .F.)
DBSetProp('RV_USERGROUPSECURE', 'View', 'CompareMemo', .T.)
DBSetProp('RV_USERGROUPSECURE', 'View', 'FetchAsNeeded', .F.)
DBSetProp('RV_USERGROUPSECURE', 'View', 'FetchSize', 100)
DBSetProp('RV_USERGROUPSECURE', 'View', 'Comment', "")
DBSetProp('RV_USERGROUPSECURE', 'View', 'BatchUpdateCount', 1)
DBSetProp('RV_USERGROUPSECURE', 'View', 'ShareConnection', .F.)

*!* Field Level Properties for RV_USERGROUPSECURE
* Props for the RV_USERGROUPSECURE.iid field.
DBSetProp('RV_USERGROUPSECURE.iid', 'Field', 'KeyField', .T.)
DBSetProp('RV_USERGROUPSECURE.iid', 'Field', 'Updatable', .T.)
DBSetProp('RV_USERGROUPSECURE.iid', 'Field', 'UpdateName', 'dbo.MMSecure.iid')
DBSetProp('RV_USERGROUPSECURE.iid', 'Field', 'DataType', "I")
* Props for the RV_USERGROUPSECURE.icontrolid field.
DBSetProp('RV_USERGROUPSECURE.icontrolid', 'Field', 'KeyField', .F.)
DBSetProp('RV_USERGROUPSECURE.icontrolid', 'Field', 'Updatable', .T.)
DBSetProp('RV_USERGROUPSECURE.icontrolid', 'Field', 'UpdateName', 'dbo.MMSecure.icontrolid')
DBSetProp('RV_USERGROUPSECURE.icontrolid', 'Field', 'DataType', "I")
* Props for the RV_USERGROUPSECURE.iusrgroupid field.
DBSetProp('RV_USERGROUPSECURE.iusrgroupid', 'Field', 'KeyField', .F.)
DBSetProp('RV_USERGROUPSECURE.iusrgroupid', 'Field', 'Updatable', .T.)
DBSetProp('RV_USERGROUPSECURE.iusrgroupid', 'Field', 'UpdateName', 'dbo.MMSecure.iusrgroupid')
DBSetProp('RV_USERGROUPSECURE.iusrgroupid', 'Field', 'DataType', "I")
* Props for the RV_USERGROUPSECURE.ctype field.
DBSetProp('RV_USERGROUPSECURE.ctype', 'Field', 'KeyField', .F.)
DBSetProp('RV_USERGROUPSECURE.ctype', 'Field', 'Updatable', .T.)
DBSetProp('RV_USERGROUPSECURE.ctype', 'Field', 'UpdateName', 'dbo.MMSecure.ctype')
DBSetProp('RV_USERGROUPSECURE.ctype', 'Field', 'DataType', "C(1)")
* Props for the RV_USERGROUPSECURE.iaccess field.
DBSetProp('RV_USERGROUPSECURE.iaccess', 'Field', 'KeyField', .F.)
DBSetProp('RV_USERGROUPSECURE.iaccess', 'Field', 'Updatable', .T.)
DBSetProp('RV_USERGROUPSECURE.iaccess', 'Field', 'UpdateName', 'dbo.MMSecure.iaccess')
DBSetProp('RV_USERGROUPSECURE.iaccess', 'Field', 'DataType', "I")
ENDFUNC

FUNCTION MakeView_RV_MMCNTRLS
***************** View setup for RV_MMCNTRLS ***************

CREATE SQL VIEW "RV_MMCNTRLS" ;
REMOTE CONNECT "CONNECT1" ;
AS SELECT * FROM dbo.mmcntrls ;
WHERE Mmcntrls.iid = ?vp_iControlID

DBSetProp('RV_MMCNTRLS', 'View', 'UpdateType', 1)
DBSetProp('RV_MMCNTRLS', 'View', 'WhereType', 3)
DBSetProp('RV_MMCNTRLS', 'View', 'FetchMemo', .T.)
DBSetProp('RV_MMCNTRLS', 'View', 'SendUpdates', .T.)
DBSetProp('RV_MMCNTRLS', 'View', 'UseMemoSize', 255)
DBSetProp('RV_MMCNTRLS', 'View', 'FetchSize', 100)
DBSetProp('RV_MMCNTRLS', 'View', 'MaxRecords', -1)
DBSetProp('RV_MMCNTRLS', 'View', 'Tables', 'dbo.mmcntrls')
DBSetProp('RV_MMCNTRLS', 'View', 'Prepared', .F.)
DBSetProp('RV_MMCNTRLS', 'View', 'CompareMemo', .T.)
DBSetProp('RV_MMCNTRLS', 'View', 'FetchAsNeeded', .F.)
DBSetProp('RV_MMCNTRLS', 'View', 'FetchSize', 100)
DBSetProp('RV_MMCNTRLS', 'View', 'Comment', "")
DBSetProp('RV_MMCNTRLS', 'View', 'BatchUpdateCount', 1)
DBSetProp('RV_MMCNTRLS', 'View', 'ShareConnection', .F.)

*!* Field Level Properties for RV_MMCNTRLS
* Props for the RV_MMCNTRLS.iid field.
DBSetProp('RV_MMCNTRLS.iid', 'Field', 'KeyField', .T.)
DBSetProp('RV_MMCNTRLS.iid', 'Field', 'Updatable', .T.)
DBSetProp('RV_MMCNTRLS.iid', 'Field', 'UpdateName', 'dbo.mmcntrls.iid')
DBSetProp('RV_MMCNTRLS.iid', 'Field', 'DataType', "I")
* Props for the RV_MMCNTRLS.cdesc field.
DBSetProp('RV_MMCNTRLS.cdesc', 'Field', 'KeyField', .F.)
DBSetProp('RV_MMCNTRLS.cdesc', 'Field', 'Updatable', .T.)
DBSetProp('RV_MMCNTRLS.cdesc', 'Field', 'UpdateName', 'dbo.mmcntrls.cdesc')
DBSetProp('RV_MMCNTRLS.cdesc', 'Field', 'DataType', "C(100)")
ENDFUNC

FUNCTION MakeView_RV_MMCNTRLSLIST
***************** View setup for RV_MMCNTRLSLIST ***************

CREATE SQL VIEW "RV_MMCNTRLSLIST" ;
REMOTE CONNECT "CONNECT1" ;
AS SELECT * FROM dbo.mmcntrls

DBSetProp('RV_MMCNTRLSLIST', 'View', 'UpdateType', 1)
DBSetProp('RV_MMCNTRLSLIST', 'View', 'WhereType', 3)
DBSetProp('RV_MMCNTRLSLIST', 'View', 'FetchMemo', .T.)
DBSetProp('RV_MMCNTRLSLIST', 'View', 'SendUpdates', .F.)
DBSetProp('RV_MMCNTRLSLIST', 'View', 'UseMemoSize', 255)
DBSetProp('RV_MMCNTRLSLIST', 'View', 'FetchSize', 100)
DBSetProp('RV_MMCNTRLSLIST', 'View', 'MaxRecords', -1)
DBSetProp('RV_MMCNTRLSLIST', 'View', 'Tables', 'dbo.mmcntrls')
DBSetProp('RV_MMCNTRLSLIST', 'View', 'Prepared', .F.)
DBSetProp('RV_MMCNTRLSLIST', 'View', 'CompareMemo', .T.)
DBSetProp('RV_MMCNTRLSLIST', 'View', 'FetchAsNeeded', .F.)
DBSetProp('RV_MMCNTRLSLIST', 'View', 'FetchSize', 100)
DBSetProp('RV_MMCNTRLSLIST', 'View', 'Comment', "")
DBSetProp('RV_MMCNTRLSLIST', 'View', 'BatchUpdateCount', 1)
DBSetProp('RV_MMCNTRLSLIST', 'View', 'ShareConnection', .F.)

*!* Field Level Properties for RV_MMCNTRLSLIST
* Props for the RV_MMCNTRLSLIST.iid field.
DBSetProp('RV_MMCNTRLSLIST.iid', 'Field', 'KeyField', .T.)
DBSetProp('RV_MMCNTRLSLIST.iid', 'Field', 'Updatable', .F.)
DBSetProp('RV_MMCNTRLSLIST.iid', 'Field', 'UpdateName', 'dbo.mmcntrls.iid')
DBSetProp('RV_MMCNTRLSLIST.iid', 'Field', 'DataType', "I")
* Props for the RV_MMCNTRLSLIST.cdesc field.
DBSetProp('RV_MMCNTRLSLIST.cdesc', 'Field', 'KeyField', .F.)
DBSetProp('RV_MMCNTRLSLIST.cdesc', 'Field', 'Updatable', .T.)
DBSetProp('RV_MMCNTRLSLIST.cdesc', 'Field', 'UpdateName', 'dbo.mmcntrls.cdesc')
DBSetProp('RV_MMCNTRLSLIST.cdesc', 'Field', 'DataType', "C(100)")
ENDFUNC

FUNCTION MakeView_RV_USERLIST
***************** View setup for RV_USERLIST ***************

CREATE SQL VIEW "RV_USERLIST" ;
REMOTE CONNECT "CONNECT1" ;
AS SELECT Users.iid, Users.cfullname ;
FROM dbo.users

DBSetProp('RV_USERLIST', 'View', 'UpdateType', 1)
DBSetProp('RV_USERLIST', 'View', 'WhereType', 3)
DBSetProp('RV_USERLIST', 'View', 'FetchMemo', .T.)
DBSetProp('RV_USERLIST', 'View', 'SendUpdates', .F.)
DBSetProp('RV_USERLIST', 'View', 'UseMemoSize', 255)
DBSetProp('RV_USERLIST', 'View', 'FetchSize', 100)
DBSetProp('RV_USERLIST', 'View', 'MaxRecords', -1)
DBSetProp('RV_USERLIST', 'View', 'Tables', 'dbo.users')
DBSetProp('RV_USERLIST', 'View', 'Prepared', .F.)
DBSetProp('RV_USERLIST', 'View', 'CompareMemo', .T.)
DBSetProp('RV_USERLIST', 'View', 'FetchAsNeeded', .F.)
DBSetProp('RV_USERLIST', 'View', 'FetchSize', 100)
DBSetProp('RV_USERLIST', 'View', 'Comment', "")
DBSetProp('RV_USERLIST', 'View', 'BatchUpdateCount', 1)
DBSetProp('RV_USERLIST', 'View', 'ShareConnection', .F.)

*!* Field Level Properties for RV_USERLIST
* Props for the RV_USERLIST.iid field.
DBSetProp('RV_USERLIST.iid', 'Field', 'KeyField', .T.)
DBSetProp('RV_USERLIST.iid', 'Field', 'Updatable', .F.)
DBSetProp('RV_USERLIST.iid', 'Field', 'UpdateName', 'dbo.users.iid')
DBSetProp('RV_USERLIST.iid', 'Field', 'DataType', "I")
* Props for the RV_USERLIST.cfullname field.
DBSetProp('RV_USERLIST.cfullname', 'Field', 'KeyField', .F.)
DBSetProp('RV_USERLIST.cfullname', 'Field', 'Updatable', .T.)
DBSetProp('RV_USERLIST.cfullname', 'Field', 'UpdateName', 'dbo.users.cfullname')
DBSetProp('RV_USERLIST.cfullname', 'Field', 'DataType', "C(25)")
ENDFUNC

FUNCTION DisplayStatus(lcMessage)
WAIT WINDOW NOWAIT lcMessage
ENDFUNC
Next
Reply
Map
View

Click here to load this message in the networking platform