Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
View Problem
Message
General information
Forum:
Visual FoxPro
Category:
Visual FoxExpress
Title:
Environment versions
Visual FoxPro:
VFP 8 SP1
OS:
Windows 7
Network:
Windows 2008 Server
Database:
MS SQL Server
Application:
Desktop
Miscellaneous
Thread ID:
01521476
Message ID:
01521686
Views:
48
okay, here's my latest best guess :

You pk is cid. You have it set as c(36) ( probably should be c(36) nocptrans since it is character binary and you don't want a code page issue screwing it up, but I don't thing that's the problem. ) If you don't specify GUID(36) in your default value, VFE will generate a GUID(16) by default, so check the Default Value Generation in the DBCX properties.



>Hi Charles,
>
>Here is the error:
>
>"No key columns are specified for the update table 'appusers'. Use the keyFieldList property of the cursor."
>
>Here is the VFP View:
>
>***************** Begin View Definition RV_USERS ***************
>
>
>LOCAL LAOPENEDDBCS[1,1], lcSet_Exact
>PRIVATE lWriteDBCXProps
>
>lWriteDBCXProps=.T.
>
>lcSet_Exact=SET('EXACT')
>IF lcSet_Exact='OFF'
> SET EXACT ON
>ENDIF
>
>
>***Make sure the current database is correct
>IF ADATABASES(LAOPENEDDBCS)=0 or ASCAN(LAOPENEDDBCS,"FESYS")=0
> OPEN DATABASE "C:\VFE75\DEV\AMSQL\DATA\FESYS"
>ELSE
> SET DATABASE TO "FESYS"
>ENDIF
>
>
>IF lcSet_Exact='OFF'
> SET EXACT OFF
>ENDIF
>
>
>
>CREATE SQL VIEW "RV_USERS" ;
> REMOTE CONNECT "amdata" ;
> AS SELECT Appusers.cuserid,;
> Appusers.cfirst_name,;
> Appusers.clast_name,;
> Appusers.cpassword,;
> Appusers.dlastchanged,;
> Appusers.ladministrator,;
> Appusers.cgroup_id,;
> Appusers.moldpasswords,;
> Appusers.linactive,;
> Appusers.cid,;
> Appusers.cjuris,;
> Appusers.cPolice_Records;
> FROM appusers Appusers
>
>DBSetProp('RV_USERS', 'View', 'UpdateType', 1)
>DBSetProp('RV_USERS', 'View', 'WhereType', 3)
>DBSetProp('RV_USERS', 'View', 'FetchMemo', .T.)
>DBSetProp('RV_USERS', 'View', 'SendUpdates', .T.)
>DBSetProp('RV_USERS', 'View', 'UseMemoSize', 255)
>DBSetProp('RV_USERS', 'View', 'MaxRecords', -1)
>DBSetProp('RV_USERS', 'View', 'Tables', 'appusers')
>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', .T.)
>IF lWriteDBCXProps
>
> *** DBCX View Properties for RV_USERS
> GoExplorer.odbcx.Validate("RV_USERS","View")
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS","VIEW",;
> "VFECDESCRIPT","Rv Users Remote View") &&Description
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS","VIEW",;
> "VFECCLASS","iCursor") &&Default Cursor Class
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS","VIEW",;
> "VFEMCLASSLIB","ILIBS\IDATA.VCX") &&Default Cursor Class Library
>
> *** DBCX Index Properties for fesys!rv_users.cid
> GoExplorer.odbcx.AddViewIndex("fesys!rv_users","cid","CID","")
> GoExplorer.odbcx.DBCXSetProp("fesys!rv_users.cid","INDEX",;
> "VFECDESCRIPT","Cid Index") &&Description
> GoExplorer.odbcx.DBCXSetProp("fesys!rv_users.cid","INDEX",;
> "VFELDISPLAY",.T.) &&Display
> GoExplorer.odbcx.DBCXSetProp("fesys!rv_users.cid","INDEX",;
> "VFECTAGCAPTN","Cid") &&Tag Caption
> GoExplorer.odbcx.DBCXSetProp("fesys!rv_users.cid","INDEX",;
> "VFENDISPORDER",1) &&Display Order
>ENDIF
>
>*!* Field Level Properties for RV_USERS
>*** 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', 'appusers.cuserid')
>DBSetProp('RV_USERS.cuserid', 'Field', 'DataType', "C(30)")
>*** DBCX Field Properties for RV_USERS.cuserid
>IF lWriteDBCXProps
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cuserid","FIELD",;
> "VFECDESCRIPT","Cuserid Field") &&Description
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cuserid","FIELD",;
> "VFECFRMCAPTN","Userid") &&Form Caption
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cuserid","FIELD",;
> "VFECDLGCAPTN","Userid") &&Dialog Caption
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cuserid","FIELD",;
> "VFECGRDCAPTN","Userid") &&Grid Caption
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cuserid","FIELD",;
> "VFECRPTCAPTN","Userid") &&Report Caption
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cuserid","FIELD",;
> "VFEMTOOLTIP","Userid") &&Tooltip Text
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cuserid","FIELD",;
> "VFEMSTATUSTXT","Userid") &&Status Bar Text
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cuserid","FIELD",;
> "VFELSEARCH",.T.) &&Searchable
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cuserid","FIELD",;
> "VFELFILTER",.T.) &&Filterable
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cuserid","FIELD",;
> "VFECLOOKUPFRM","[DEFAULT]") &&Look Up Display Form
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cuserid","FIELD",;
> "VFECCLASS","iField") &&Behavior Class
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cuserid","FIELD",;
> "VFEMCLASSLIB","ILIBS\IDATA.VCX") &&Behavior Class Library
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cuserid","FIELD",;
> "VFECOBJTYPE","itextbox") &&User Interface Class
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cuserid","FIELD",;
> "VFEMOBJINFO","ILIBS\ICONTRLS.VCX") &&User Interface Class Library
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cuserid","FIELD",;
> "VFELQUICKFIND",.T.) &&Allow Quick Find
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cuserid","FIELD",;
> "VFENDFLTTYPE",1) &&Default Type
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cuserid","FIELD",;
> "VFENDISPORDER",1) &&Display Order
>ENDIF
>
>*** Props for the RV_USERS.cfirst_name field.
>DBSetProp('RV_USERS.cfirst_name', 'Field', 'KeyField', .F.)
>DBSetProp('RV_USERS.cfirst_name', 'Field', 'Updatable', .T.)
>DBSetProp('RV_USERS.cfirst_name', 'Field', 'UpdateName', 'appusers.cfirst_name')
>DBSetProp('RV_USERS.cfirst_name', 'Field', 'DataType', "C(30)")
>*** DBCX Field Properties for RV_USERS.cfirst_name
>IF lWriteDBCXProps
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cfirst_name","FIELD",;
> "VFECDESCRIPT","Cfirst Name Field") &&Description
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cfirst_name","FIELD",;
> "VFECFRMCAPTN","First Name") &&Form Caption
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cfirst_name","FIELD",;
> "VFECDLGCAPTN","First Name") &&Dialog Caption
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cfirst_name","FIELD",;
> "VFECGRDCAPTN","First Name") &&Grid Caption
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cfirst_name","FIELD",;
> "VFECRPTCAPTN","First Name") &&Report Caption
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cfirst_name","FIELD",;
> "VFEMTOOLTIP","First Name") &&Tooltip Text
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cfirst_name","FIELD",;
> "VFEMSTATUSTXT","First Name") &&Status Bar Text
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cfirst_name","FIELD",;
> "VFELSEARCH",.T.) &&Searchable
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cfirst_name","FIELD",;
> "VFELFILTER",.T.) &&Filterable
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cfirst_name","FIELD",;
> "VFECLOOKUPFRM","[DEFAULT]") &&Look Up Display Form
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cfirst_name","FIELD",;
> "VFECCLASS","iField") &&Behavior Class
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cfirst_name","FIELD",;
> "VFEMCLASSLIB","ILIBS\IDATA.VCX") &&Behavior Class Library
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cfirst_name","FIELD",;
> "VFECOBJTYPE","itextbox") &&User Interface Class
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cfirst_name","FIELD",;
> "VFEMOBJINFO","ILIBS\ICONTRLS.VCX") &&User Interface Class Library
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cfirst_name","FIELD",;
> "VFELQUICKFIND",.T.) &&Allow Quick Find
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cfirst_name","FIELD",;
> "VFENDFLTTYPE",1) &&Default Type
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cfirst_name","FIELD",;
> "VFENDISPORDER",2) &&Display Order
>ENDIF
>
>*** Props for the RV_USERS.clast_name field.
>DBSetProp('RV_USERS.clast_name', 'Field', 'KeyField', .F.)
>DBSetProp('RV_USERS.clast_name', 'Field', 'Updatable', .T.)
>DBSetProp('RV_USERS.clast_name', 'Field', 'UpdateName', 'appusers.clast_name')
>DBSetProp('RV_USERS.clast_name', 'Field', 'DataType', "C(30)")
>*** DBCX Field Properties for RV_USERS.clast_name
>IF lWriteDBCXProps
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.clast_name","FIELD",;
> "VFECDESCRIPT","Clast Name Field") &&Description
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.clast_name","FIELD",;
> "VFECFRMCAPTN","Last Name") &&Form Caption
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.clast_name","FIELD",;
> "VFECDLGCAPTN","Last Name") &&Dialog Caption
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.clast_name","FIELD",;
> "VFECGRDCAPTN","Last Name") &&Grid Caption
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.clast_name","FIELD",;
> "VFECRPTCAPTN","Last Name") &&Report Caption
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.clast_name","FIELD",;
> "VFEMTOOLTIP","Last Name") &&Tooltip Text
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.clast_name","FIELD",;
> "VFEMSTATUSTXT","Last Name") &&Status Bar Text
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.clast_name","FIELD",;
> "VFELSEARCH",.T.) &&Searchable
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.clast_name","FIELD",;
> "VFELFILTER",.T.) &&Filterable
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.clast_name","FIELD",;
> "VFECLOOKUPFRM","[DEFAULT]") &&Look Up Display Form
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.clast_name","FIELD",;
> "VFECCLASS","iField") &&Behavior Class
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.clast_name","FIELD",;
> "VFEMCLASSLIB","ILIBS\IDATA.VCX") &&Behavior Class Library
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.clast_name","FIELD",;
> "VFECOBJTYPE","itextbox") &&User Interface Class
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.clast_name","FIELD",;
> "VFEMOBJINFO","ILIBS\ICONTRLS.VCX") &&User Interface Class Library
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.clast_name","FIELD",;
> "VFELQUICKFIND",.T.) &&Allow Quick Find
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.clast_name","FIELD",;
> "VFENDFLTTYPE",1) &&Default Type
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.clast_name","FIELD",;
> "VFENDISPORDER",3) &&Display Order
>ENDIF
>
>*** 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', 'appusers.cpassword')
>DBSetProp('RV_USERS.cpassword', 'Field', 'DataType', "C(30)")
>*** DBCX Field Properties for RV_USERS.cpassword
>IF lWriteDBCXProps
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cpassword","FIELD",;
> "VFECDESCRIPT","Cpassword Field") &&Description
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cpassword","FIELD",;
> "VFECFRMCAPTN","Password") &&Form Caption
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cpassword","FIELD",;
> "VFECDLGCAPTN","Password") &&Dialog Caption
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cpassword","FIELD",;
> "VFECGRDCAPTN","Password") &&Grid Caption
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cpassword","FIELD",;
> "VFECRPTCAPTN","Password") &&Report Caption
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cpassword","FIELD",;
> "VFEMTOOLTIP","Password") &&Tooltip Text
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cpassword","FIELD",;
> "VFEMSTATUSTXT","Password") &&Status Bar Text
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cpassword","FIELD",;
> "VFELSEARCH",.T.) &&Searchable
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cpassword","FIELD",;
> "VFELFILTER",.T.) &&Filterable
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cpassword","FIELD",;
> "VFECLOOKUPFRM","[DEFAULT]") &&Look Up Display Form
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cpassword","FIELD",;
> "VFECCLASS","iField") &&Behavior Class
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cpassword","FIELD",;
> "VFEMCLASSLIB","ILIBS\IDATA.VCX") &&Behavior Class Library
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cpassword","FIELD",;
> "VFECOBJTYPE","itextbox") &&User Interface Class
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cpassword","FIELD",;
> "VFEMOBJINFO","ILIBS\ICONTRLS.VCX") &&User Interface Class Library
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cpassword","FIELD",;
> "VFELQUICKFIND",.T.) &&Allow Quick Find
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cpassword","FIELD",;
> "VFENDFLTTYPE",1) &&Default Type
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cpassword","FIELD",;
> "VFENDISPORDER",4) &&Display Order
>ENDIF
>
>*** Props for the RV_USERS.dlastchanged field.
>DBSetProp('RV_USERS.dlastchanged', 'Field', 'KeyField', .F.)
>DBSetProp('RV_USERS.dlastchanged', 'Field', 'Updatable', .T.)
>DBSetProp('RV_USERS.dlastchanged', 'Field', 'UpdateName', 'appusers.dlastchanged')
>DBSetProp('RV_USERS.dlastchanged', 'Field', 'DataType', "T")
>*** DBCX Field Properties for RV_USERS.dlastchanged
>IF lWriteDBCXProps
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.dlastchanged","FIELD",;
> "VFECDESCRIPT","Dlastchanged Field") &&Description
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.dlastchanged","FIELD",;
> "VFECFRMCAPTN","Lastchanged") &&Form Caption
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.dlastchanged","FIELD",;
> "VFECDLGCAPTN","Lastchanged") &&Dialog Caption
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.dlastchanged","FIELD",;
> "VFECGRDCAPTN","Lastchanged") &&Grid Caption
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.dlastchanged","FIELD",;
> "VFECRPTCAPTN","Lastchanged") &&Report Caption
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.dlastchanged","FIELD",;
> "VFEMTOOLTIP","Lastchanged") &&Tooltip Text
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.dlastchanged","FIELD",;
> "VFEMSTATUSTXT","Lastchanged") &&Status Bar Text
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.dlastchanged","FIELD",;
> "VFELSEARCH",.T.) &&Searchable
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.dlastchanged","FIELD",;
> "VFELFILTER",.T.) &&Filterable
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.dlastchanged","FIELD",;
> "VFECLOOKUPFRM","[DEFAULT]") &&Look Up Display Form
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.dlastchanged","FIELD",;
> "VFECCLASS","iField") &&Behavior Class
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.dlastchanged","FIELD",;
> "VFEMCLASSLIB","ILIBS\IDATA.VCX") &&Behavior Class Library
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.dlastchanged","FIELD",;
> "VFECOBJTYPE","itextbox") &&User Interface Class
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.dlastchanged","FIELD",;
> "VFEMOBJINFO","ILIBS\ICONTRLS.VCX") &&User Interface Class Library
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.dlastchanged","FIELD",;
> "VFELQUICKFIND",.T.) &&Allow Quick Find
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.dlastchanged","FIELD",;
> "VFENDFLTTYPE",1) &&Default Type
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.dlastchanged","FIELD",;
> "VFENDISPORDER",5) &&Display Order
>ENDIF
>
>*** Props for the RV_USERS.ladministrator field.
>DBSetProp('RV_USERS.ladministrator', 'Field', 'KeyField', .F.)
>DBSetProp('RV_USERS.ladministrator', 'Field', 'Updatable', .T.)
>DBSetProp('RV_USERS.ladministrator', 'Field', 'UpdateName', 'appusers.ladministrator')
>DBSetProp('RV_USERS.ladministrator', 'Field', 'DataType', "L")
>*** DBCX Field Properties for RV_USERS.ladministrator
>IF lWriteDBCXProps
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.ladministrator","FIELD",;
> "VFECDESCRIPT","Ladministrator Field") &&Description
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.ladministrator","FIELD",;
> "VFECFRMCAPTN","Administrator") &&Form Caption
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.ladministrator","FIELD",;
> "VFECDLGCAPTN","Administrator") &&Dialog Caption
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.ladministrator","FIELD",;
> "VFECGRDCAPTN","Administrator") &&Grid Caption
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.ladministrator","FIELD",;
> "VFECRPTCAPTN","Administrator") &&Report Caption
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.ladministrator","FIELD",;
> "VFEMTOOLTIP","Administrator") &&Tooltip Text
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.ladministrator","FIELD",;
> "VFEMSTATUSTXT","Administrator") &&Status Bar Text
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.ladministrator","FIELD",;
> "VFELSEARCH",.T.) &&Searchable
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.ladministrator","FIELD",;
> "VFELFILTER",.T.) &&Filterable
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.ladministrator","FIELD",;
> "VFECLOOKUPFRM","[DEFAULT]") &&Look Up Display Form
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.ladministrator","FIELD",;
> "VFECCLASS","iField") &&Behavior Class
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.ladministrator","FIELD",;
> "VFEMCLASSLIB","ILIBS\IDATA.VCX") &&Behavior Class Library
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.ladministrator","FIELD",;
> "VFECOBJTYPE","icheckbox") &&User Interface Class
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.ladministrator","FIELD",;
> "VFEMOBJINFO","ILIBS\ICONTRLS.VCX") &&User Interface Class Library
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.ladministrator","FIELD",;
> "VFELQUICKFIND",.T.) &&Allow Quick Find
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.ladministrator","FIELD",;
> "VFENDFLTTYPE",1) &&Default Type
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.ladministrator","FIELD",;
> "VFENDISPORDER",6) &&Display Order
>ENDIF
>
>*** Props for the RV_USERS.cgroup_id field.
>DBSetProp('RV_USERS.cgroup_id', 'Field', 'KeyField', .F.)
>DBSetProp('RV_USERS.cgroup_id', 'Field', 'Updatable', .T.)
>DBSetProp('RV_USERS.cgroup_id', 'Field', 'UpdateName', 'appusers.cgroup_id')
>DBSetProp('RV_USERS.cgroup_id', 'Field', 'DataType', "C(16)")
>*** DBCX Field Properties for RV_USERS.cgroup_id
>IF lWriteDBCXProps
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cgroup_id","FIELD",;
> "VFECDESCRIPT","Cgroup Id Field") &&Description
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cgroup_id","FIELD",;
> "VFECFRMCAPTN","Group Id") &&Form Caption
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cgroup_id","FIELD",;
> "VFECDLGCAPTN","Group Id") &&Dialog Caption
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cgroup_id","FIELD",;
> "VFECGRDCAPTN","Group Id") &&Grid Caption
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cgroup_id","FIELD",;
> "VFECRPTCAPTN","Group Id") &&Report Caption
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cgroup_id","FIELD",;
> "VFEMTOOLTIP","Group Id") &&Tooltip Text
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cgroup_id","FIELD",;
> "VFEMSTATUSTXT","Group Id") &&Status Bar Text
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cgroup_id","FIELD",;
> "VFELSEARCH",.T.) &&Searchable
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cgroup_id","FIELD",;
> "VFELFILTER",.T.) &&Filterable
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cgroup_id","FIELD",;
> "VFECLOOKUPFRM","[DEFAULT]") &&Look Up Display Form
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cgroup_id","FIELD",;
> "VFECCLASS","iField") &&Behavior Class
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cgroup_id","FIELD",;
> "VFEMCLASSLIB","ILIBS\IDATA.VCX") &&Behavior Class Library
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cgroup_id","FIELD",;
> "VFECOBJTYPE","itextbox") &&User Interface Class
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cgroup_id","FIELD",;
> "VFEMOBJINFO","ILIBS\ICONTRLS.VCX") &&User Interface Class Library
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cgroup_id","FIELD",;
> "VFELQUICKFIND",.T.) &&Allow Quick Find
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cgroup_id","FIELD",;
> "VFENDFLTTYPE",1) &&Default Type
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cgroup_id","FIELD",;
> "VFENDISPORDER",7) &&Display Order
>ENDIF
>
>*** Props for the RV_USERS.moldpasswords field.
>DBSetProp('RV_USERS.moldpasswords', 'Field', 'KeyField', .F.)
>DBSetProp('RV_USERS.moldpasswords', 'Field', 'Updatable', .T.)
>DBSetProp('RV_USERS.moldpasswords', 'Field', 'UpdateName', 'appusers.moldpasswords')
>DBSetProp('RV_USERS.moldpasswords', 'Field', 'DataType', "M")
>*** DBCX Field Properties for RV_USERS.moldpasswords
>IF lWriteDBCXProps
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.moldpasswords","FIELD",;
> "VFECDESCRIPT","Moldpasswords Field") &&Description
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.moldpasswords","FIELD",;
> "VFECFRMCAPTN","Oldpasswords") &&Form Caption
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.moldpasswords","FIELD",;
> "VFECDLGCAPTN","Oldpasswords") &&Dialog Caption
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.moldpasswords","FIELD",;
> "VFECGRDCAPTN","Oldpasswords") &&Grid Caption
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.moldpasswords","FIELD",;
> "VFECRPTCAPTN","Oldpasswords") &&Report Caption
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.moldpasswords","FIELD",;
> "VFEMTOOLTIP","Oldpasswords") &&Tooltip Text
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.moldpasswords","FIELD",;
> "VFEMSTATUSTXT","Oldpasswords") &&Status Bar Text
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.moldpasswords","FIELD",;
> "VFECLOOKUPFRM","[DEFAULT]") &&Look Up Display Form
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.moldpasswords","FIELD",;
> "VFECCLASS","iField") &&Behavior Class
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.moldpasswords","FIELD",;
> "VFEMCLASSLIB","ILIBS\IDATA.VCX") &&Behavior Class Library
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.moldpasswords","FIELD",;
> "VFECOBJTYPE","ieditbox") &&User Interface Class
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.moldpasswords","FIELD",;
> "VFEMOBJINFO","ILIBS\ICONTRLS.VCX") &&User Interface Class Library
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.moldpasswords","FIELD",;
> "VFENDFLTTYPE",1) &&Default Type
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.moldpasswords","FIELD",;
> "VFENDISPORDER",8) &&Display Order
>ENDIF
>
>*** Props for the RV_USERS.linactive field.
>DBSetProp('RV_USERS.linactive', 'Field', 'KeyField', .F.)
>DBSetProp('RV_USERS.linactive', 'Field', 'Updatable', .T.)
>DBSetProp('RV_USERS.linactive', 'Field', 'UpdateName', 'appusers.linactive')
>DBSetProp('RV_USERS.linactive', 'Field', 'DataType', "L")
>*** DBCX Field Properties for RV_USERS.linactive
>IF lWriteDBCXProps
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.linactive","FIELD",;
> "VFECDESCRIPT","Linactive Field") &&Description
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.linactive","FIELD",;
> "VFECFRMCAPTN","Inactive") &&Form Caption
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.linactive","FIELD",;
> "VFECDLGCAPTN","Inactive") &&Dialog Caption
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.linactive","FIELD",;
> "VFECGRDCAPTN","Inactive") &&Grid Caption
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.linactive","FIELD",;
> "VFECRPTCAPTN","Inactive") &&Report Caption
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.linactive","FIELD",;
> "VFEMTOOLTIP","Inactive") &&Tooltip Text
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.linactive","FIELD",;
> "VFEMSTATUSTXT","Inactive") &&Status Bar Text
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.linactive","FIELD",;
> "VFELSEARCH",.T.) &&Searchable
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.linactive","FIELD",;
> "VFELFILTER",.T.) &&Filterable
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.linactive","FIELD",;
> "VFECLOOKUPFRM","[DEFAULT]") &&Look Up Display Form
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.linactive","FIELD",;
> "VFECCLASS","iField") &&Behavior Class
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.linactive","FIELD",;
> "VFEMCLASSLIB","ILIBS\IDATA.VCX") &&Behavior Class Library
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.linactive","FIELD",;
> "VFECOBJTYPE","icheckbox") &&User Interface Class
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.linactive","FIELD",;
> "VFEMOBJINFO","ILIBS\ICONTRLS.VCX") &&User Interface Class Library
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.linactive","FIELD",;
> "VFELQUICKFIND",.T.) &&Allow Quick Find
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.linactive","FIELD",;
> "VFENDFLTTYPE",1) &&Default Type
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.linactive","FIELD",;
> "VFENDISPORDER",9) &&Display Order
>ENDIF
>
>*** Props for the RV_USERS.cid field.
>DBSetProp('RV_USERS.cid', 'Field', 'KeyField', .T.)
>DBSetProp('RV_USERS.cid', 'Field', 'Updatable', .T.)
>DBSetProp('RV_USERS.cid', 'Field', 'UpdateName', 'appusers.cid')
>DBSetProp('RV_USERS.cid', 'Field', 'DataType', "C(36)")
>*** DBCX Field Properties for RV_USERS.cid
>IF lWriteDBCXProps
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cid","FIELD",;
> "VFECDESCRIPT","Cid Field") &&Description
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cid","FIELD",;
> "VFECFRMCAPTN","Id") &&Form Caption
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cid","FIELD",;
> "VFECDLGCAPTN","Id") &&Dialog Caption
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cid","FIELD",;
> "VFECGRDCAPTN","Id") &&Grid Caption
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cid","FIELD",;
> "VFECRPTCAPTN","Id") &&Report Caption
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cid","FIELD",;
> "VFEMTOOLTIP","Id") &&Tooltip Text
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cid","FIELD",;
> "VFEMSTATUSTXT","Id") &&Status Bar Text
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cid","FIELD",;
> "VFELSEARCH",.T.) &&Searchable
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cid","FIELD",;
> "VFELFILTER",.T.) &&Filterable
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cid","FIELD",;
> "VFECLOOKUPFRM","[DEFAULT]") &&Look Up Display Form
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cid","FIELD",;
> "VFECCLASS","iField") &&Behavior Class
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cid","FIELD",;
> "VFEMCLASSLIB","ILIBS\IDATA.VCX") &&Behavior Class Library
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cid","FIELD",;
> "VFECOBJTYPE","itextbox") &&User Interface Class
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cid","FIELD",;
> "VFEMOBJINFO","ILIBS\ICONTRLS.VCX") &&User Interface Class Library
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cid","FIELD",;
> "VFELQUICKFIND",.T.) &&Allow Quick Find
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cid","FIELD",;
> "VFENDFLTTYPE",1) &&Default Type
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cid","FIELD",;
> "VFENDISPORDER",10) &&Display Order
>ENDIF
>
>*** Props for the RV_USERS.cjuris field.
>DBSetProp('RV_USERS.cjuris', 'Field', 'KeyField', .F.)
>DBSetProp('RV_USERS.cjuris', 'Field', 'Updatable', .T.)
>DBSetProp('RV_USERS.cjuris', 'Field', 'UpdateName', 'appusers.cjuris')
>DBSetProp('RV_USERS.cjuris', 'Field', 'DataType', "C(4)")
>*** DBCX Field Properties for RV_USERS.cjuris
>IF lWriteDBCXProps
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cjuris","FIELD",;
> "VFECDESCRIPT","Cjuris Field") &&Description
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cjuris","FIELD",;
> "VFECFRMCAPTN","Juris") &&Form Caption
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cjuris","FIELD",;
> "VFECDLGCAPTN","Juris") &&Dialog Caption
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cjuris","FIELD",;
> "VFECGRDCAPTN","Juris") &&Grid Caption
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cjuris","FIELD",;
> "VFECRPTCAPTN","Juris") &&Report Caption
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cjuris","FIELD",;
> "VFEMTOOLTIP","Juris") &&Tooltip Text
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cjuris","FIELD",;
> "VFEMSTATUSTXT","Juris") &&Status Bar Text
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cjuris","FIELD",;
> "VFELSEARCH",.T.) &&Searchable
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cjuris","FIELD",;
> "VFELFILTER",.T.) &&Filterable
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cjuris","FIELD",;
> "VFECLOOKUPFRM","[DEFAULT]") &&Look Up Display Form
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cjuris","FIELD",;
> "VFECCLASS","iField") &&Behavior Class
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cjuris","FIELD",;
> "VFEMCLASSLIB","ILIBS\IDATA.VCX") &&Behavior Class Library
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cjuris","FIELD",;
> "VFECOBJTYPE","itextbox") &&User Interface Class
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cjuris","FIELD",;
> "VFEMOBJINFO","ILIBS\ICONTRLS.VCX") &&User Interface Class Library
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cjuris","FIELD",;
> "VFELQUICKFIND",.T.) &&Allow Quick Find
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cjuris","FIELD",;
> "VFENDFLTTYPE",1) &&Default Type
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cjuris","FIELD",;
> "VFENDISPORDER",11) &&Display Order
>ENDIF
>
>*** Props for the RV_USERS.cpolice_records field.
>DBSetProp('RV_USERS.cpolice_records', 'Field', 'KeyField', .F.)
>DBSetProp('RV_USERS.cpolice_records', 'Field', 'Updatable', .T.)
>DBSetProp('RV_USERS.cpolice_records', 'Field', 'UpdateName', 'appusers.cPolice_Records')
>DBSetProp('RV_USERS.cpolice_records', 'Field', 'DataType', "C(25)")
>*** DBCX Field Properties for RV_USERS.cpolice_records
>IF lWriteDBCXProps
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cpolice_records","FIELD",;
> "VFECDESCRIPT","Cpolice Records Field") &&Description
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cpolice_records","FIELD",;
> "VFECFRMCAPTN","Police Records") &&Form Caption
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cpolice_records","FIELD",;
> "VFECDLGCAPTN","Police Records") &&Dialog Caption
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cpolice_records","FIELD",;
> "VFECGRDCAPTN","Police Records") &&Grid Caption
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cpolice_records","FIELD",;
> "VFECRPTCAPTN","Police Records") &&Report Caption
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cpolice_records","FIELD",;
> "VFEMTOOLTIP","Police Records") &&Tooltip Text
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cpolice_records","FIELD",;
> "VFEMSTATUSTXT","Police Records") &&Status Bar Text
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cpolice_records","FIELD",;
> "VFELSEARCH",.T.) &&Searchable
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cpolice_records","FIELD",;
> "VFELFILTER",.T.) &&Filterable
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cpolice_records","FIELD",;
> "VFECLOOKUPFRM","[DEFAULT]") &&Look Up Display Form
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cpolice_records","FIELD",;
> "VFECCLASS","iField") &&Behavior Class
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cpolice_records","FIELD",;
> "VFEMCLASSLIB","ILIBS\IDATA.VCX") &&Behavior Class Library
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cpolice_records","FIELD",;
> "VFECOBJTYPE","itextbox") &&User Interface Class
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cpolice_records","FIELD",;
> "VFEMOBJINFO","ILIBS\ICONTRLS.VCX") &&User Interface Class Library
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cpolice_records","FIELD",;
> "VFELQUICKFIND",.T.) &&Allow Quick Find
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cpolice_records","FIELD",;
> "VFENDFLTTYPE",1) &&Default Type
> GoExplorer.odbcx.DBCXSetProp("FESYS!RV_USERS.cpolice_records","FIELD",;
> "VFENDISPORDER",12) &&Display Order
>ENDIF
>
>
>
>
>
>>Can I see the vfegenview after your change?
>>
>>and the text of the error again
>>
>>>Hi Charles,
>>>
>>>Unfortunately, that is not the problem. I just made the change you suggested and still get the same error.
>>>
>>>Any other thoughts?
>>>
>>>Thanks,
>>>
>>>TFISHER
>>>
>>>>Looks like you have the wrong field marked as pk - I think you want cid to be keyfield and cuserid to be just another updateable field.
>>>>
>>>>Try changing this keyfield to .f.
>>>>
>>>>>*!* Field Level Properties for RV_USERS
>>>>>*** Props for the RV_USERS.cuserid field.
>>>>>DBSetProp('RV_USERS.cuserid', 'Field', 'KeyField', .T.)
>>>>>DBSetProp('RV_USERS.cuserid', 'Field', 'Updatable', .T.)
>>>>>DBSetProp('RV_USERS.cuserid', 'Field', 'UpdateName', 'appusers.cuserid')
>>>>
>>>>and this keyfield to .t. and see what happens
>>>>
>>>>>*** Props for the RV_USERS.cid field.
>>>>>DBSetProp('RV_USERS.cid', 'Field', 'KeyField', .F.)
>>>>>DBSetProp('RV_USERS.cid', 'Field', 'Updatable', .T.)
>>>>>Hi Charles,
>>>>>
>>>>>Thanks for taking a look.
>>>>>
>>>>>TFISHER
>>>>>
>>>>>



Charles Hankey

Though a good deal is too strange to be believed, nothing is too strange to have happened.
- Thomas Hardy

Half the harm that is done in this world is due to people who want to feel important. They don't mean to do harm-- but the harm does not interest them. Or they do not see it, or they justify it because they are absorbed in the endless struggle to think well of themselves.

-- T. S. Eliot
Democracy is two wolves and a sheep voting on what to have for lunch.
Liberty is a well-armed sheep contesting the vote.
- Ben Franklin

Pardon him, Theodotus. He is a barbarian, and thinks that the customs of his tribe and island are the laws of nature.
Previous
Next
Reply
Map
View

Click here to load this message in the networking platform