Sodium: Türkiye'nin Programlama Dili
  • Sodium Home Page
  • Getting Started
    • Examples
      • Hello World Example
      • Datalist & Select Element Usage
  • Installation & Configuration
  • Frequently Asked Questions
  • How to
    • How to: use Recordset variable and to_json function for populating a tree node
    • How to: get selected tree node id
    • How to: create master detail relationship between data blocks
    • How to: use data list element for populating select elements
    • How to: define a lookup element for a select element
    • How to: use database sequence in data block element
  • Contributers
  • Roadmap
  • About Me
  • Version History
    • Change Log
    • Things To Do
    • Known Issues
  • LANGUAGE REFERENCE
    • Program Structure
      • Form File
      • Code Behind File
      • Controller File
    • Built-in Functions
      • Sodium Built-in Functions
        • Database Related Functions
          • commit
          • rollback
          • delete
          • create_postgresql_connection
          • create_oracle_connection
          • create_mysql_connection
          • get_database_type
          • get_database_name
          • run_sql_file
          • set_active_database_connection
        • REDIS Functions
          • create_redis_connection
          • close_redis_connection
          • (redis-variable-name).set
          • (redis-variable-name).get
          • (redis-variable-name).del
          • (redis-variable-name).ping
          • (redis-variable-name).incr
          • (redis-variable-name).incrBy
          • (redis-variable-name).decr
          • (redis-variable-name).decrBy
          • (redis-variable-name).strlen
          • (redis-variable-name).append
        • Other Functions
          • disable_column
          • enable_column
          • hide_block
          • hide_column
          • message
          • populate_datalist
          • prompt
          • refresh_block
          • show_block
          • show_column
          • show_page
          • populate_tree
          • to_json
          • refresh_tree_node
          • set_datablock_property
      • Built-in String Functions & Operands
        • instr
        • strlen
        • Concatanation Operator
        • replace
        • substr
        • The "sizeof" Operator
        • Like & Not Like Operators
      • File IO functions
      • Date/time Functions
    • Built-in Triggers
      • "item_modified" trigger
      • "connection_not_found" trigger
      • "page.access" trigger
      • "page_load" trigger
      • "post_query" trigger
      • "row_selected" trigger
      • "button_item_clicked" trigger
      • "pre_insert" Trigger
      • "pre_delete" Trigger
      • "pre_update" Trigger
      • "post_insert" Trigger
      • "post_delete" Trigger
      • "post_update" Trigger
      • "tree_node_expanded" Trigger
      • "tree_node_selected" Trigger
      • "user_session_end" trigger
    • TAGs
      • Data Block
        • Data Block: Form View Mode
        • Data Block: Grid View Mode
        • Data Block: Mix View Mode
      • Control Block
      • Data List
      • Tree Element
      • Table TAG
      • Inputs
        • Text Item
        • Radio Item
        • Select Item
        • Checkbox Item
        • Button Item
        • Image Item
        • Textarea Item
        • Magic Buttons
    • Native SQL support
    • Lexical Elements
      • Identifiers
      • Keywords
      • Constants
        • The Null Statement
        • String Constant
      • Operators
      • Separators
      • White Space
      • Variables
        • Variable Type: int
        • Variable Type: char
        • Variable Type: bool
        • Local variables
        • Page variables
        • Session variables
        • Predefined Variables
          • :Session.authenticated
          • :Session.user
          • :Session.Id
          • :Session.user
          • :Row.Id
      • Functions
        • Function Declarations
        • Calling Functions
        • Function Parameters
        • Recursive Functions
      • Statements
        • The "if" Statement
        • The while Statement
        • The do Statement
        • Code Blocks
        • The break Statement
        • The return Statement
      • Expressions And Operators
        • Expressions
        • Assignment Operators
        • Arithmetic Operators
        • Comparison Operators
        • Logical Operators
        • Function Calls as Expressions
        • Operator Precedence
        • Order of Evaluation
      • Escape Character
    • CSS Themes
    • Scopes
    • Connection
      • Active Database Connection
      • Connection Types
        • Database Connections
        • REDIS Connection
  • Development
    • IDE
    • Debugging
  • SODIUM DEVELOPMENT
    • Sodium Development Home Page
    • Getting Started
      • Sodium Architecture
      • Development Environment
        • Source Code
        • Applications Required
        • Compiling C Projects
        • Compiling NodeJs Project
        • Troubleshooting
Powered by GitBook
On this page

Was this helpful?

  1. LANGUAGE REFERENCE
  2. TAGs
  3. Inputs

Magic Buttons

PreviousTextarea ItemNextNative SQL support

Last updated 5 years ago

Was this helpful?

Sodium has some built-in features for common operations. Magic buttons are one of them. For the operations below, just declaring a button with specific name is enough to execute desired action. Writing a function is not required for Magic Buttons. Therefore, If a trigger function is defined in or for any one of the Magic Buttons, it will not be executed.

Sodium developer may be in need of conditionally execute commands (commit, rollback, etc). If that is the case, different button name must be used and its custom trigger function must be defined in .

Like other buttons, magic buttons also must be defined in a control or data block.

For commit: Execute "commit" command for all active database connections.

<input name="commit" type="button" value="Commit"/>

For rollback: Execute "rollback" command for all active database connections.

<input name="rollback" type="button" value="Rollback"/>

For creation a new record:

<input name="create-record" type="button" value="Create"/>

For deleting a record:

<input name="delete-record" type="button" value="Delete"/>

In order to show first page:

<input name="first-page" type="button" value="<<"/>

In order to show previous page:

<input name="prev-page" type="button" value=" < "/>

In order to show next page:

<input name="next-page" type="button" value=" > "/>

In order to show last page:

<input name="last-page" type="button" value=" >> "/>

In order to change block status to "enter query" mode:

<input name="enter-query" type="button" value="Enter Query"/>

In order to execute filtered query on a block:

<input name="execute-query" type="button" value="Execute Query"/>

In order to cancel "enter query" mode:

<input name="cancel-query" type="button" value="Cancel Query"/>

In order to kill session

<input name="kill-session" type="button" value="Log Out" redirect-url="/site/pages/logon.frmx"/>

In order to change current theme

<select name="theme-selector">
    <option value="default">Sodium Default</option>
    <option value="ocean_blue">Sodium Blue</option>
    <option value="red">Sodium Red</option>
</select>
"button_item_clicked" trigger
Code Behind File
Controller File
Code Behind File