TablesReadOnly Property (ActiveX)

Determines whether to open database tables in read-only mode.

Supported platforms: Windows only

Signature

VBA:

object.TablesReadOnly
object

Type: PreferencesSystem

The object this property applies to.

Property Value

Read-only: No

Type: Boolean

Remarks

The initial value for this property is False.

Examples

VBA:

Sub Example_TablesReadOnly()
    ' This example reads and modifies the preference value that controls
    ' whether to open database tables in read-only mode.
    ' When finished, this example resets the preference value back to
    ' its original value.
    
    Dim ACADPref As AcadPreferencesSystem
    Dim originalValue As Variant, newValue As Variant
    
    ' Get the system preferences object
    Set ACADPref = ThisDrawing.Application.Preferences.System
    
    ' Read and display the original value
    originalValue = ACADPref.TablesReadOnly
    MsgBox "The TablesReadOnly preference is set to: " & originalValue

    ' Modify the TablesReadOnly preference by toggling the value
    ACADPref.TablesReadOnly = Not (ACADPref.TablesReadOnly)
    newValue = ACADPref.TablesReadOnly
    MsgBox "The TablesReadOnly preference has been set to: " & newValue

    ' Reset the preference back to its original value
    '
    ' * Note: Comment out this last section to leave the change to
    '         this preference in effect
    ACADPref.TablesReadOnly = originalValue
    MsgBox "The TablesReadOnly preference was reset back to: " & originalValue
End Sub

Visual LISP:

(vl-load-com)
(defun c:Example_TablesReadOnly()
    ;; This example reads and modifies the preference value that controls
    ;; whether to open database tables in read-only mode.
    ;; When finished, this example resets the preference value back to
    ;; its original value.
    (setq acadObj (vlax-get-acad-object))
    (setq preferences (vla-get-Preferences acadObj))
    
    ;; Read and display the original value
    (setq originalValue (vla-get-TablesReadOnly (vla-get-System preferences)))
    (alert (strcat "The TablesReadOnly preference is set to: " (if (= originalValue :vlax-true) "True" "False")))

    ;; Modify the TablesReadOnly preference by toggling the value
    (vla-put-TablesReadOnly (vla-get-System preferences) (if (= originalValue :vlax-true) :vlax-false :vlax-true))
    (alert (strcat "The TablesReadOnly preference has been set to: " (if (= (vla-get-TablesReadOnly (vla-get-System preferences)) :vlax-true) "True" "False")))

    ;; Reset the preference back to its original value
    ;;
    ;; * Note: Comment out this last section to leave the change to
    ;;         this preference in effect
    (vla-put-TablesReadOnly (vla-get-System preferences) originalValue)
    (alert (strcat "The TablesReadOnly preference was reset back to: " (if (= (vla-get-TablesReadOnly (vla-get-System preferences)) :vlax-true) "True" "False")))
)