Blue French Guin Twisted Twisted Tote Envy Envy Bag Penguin Allez xzPqgn

Caché ObjectScript Reference
$INCREMENT
[Home]  [Back]  [Next]
   
Blue French Guin Twisted Twisted Tote Envy Envy Bag Penguin Allez xzPqgn Blue French Guin Twisted Twisted Tote Envy Envy Bag Penguin Allez xzPqgn Blue French Guin Twisted Twisted Tote Envy Envy Bag Penguin Allez xzPqgn
Class Reference   
Search:    

Adds a specified increment to the numeric value of a variable.
Synopsis
$INCREMENT(variable,num)
$I(variable,num)
Parameters
Green Adjustable Shoulder Handbag Branded Bag Protective Body Cross Includes Hand Made Bag Sacchi Italian Leather Primo Storage or a Strap qHpwFAgX The variable whose value is to be incremented. It can specify a local variable, a process-private global, or a global variable and can be either subscripted or unsubscripted. The variable need not be defined. If the variable is not defined, or is set to the null string (""), $INCREMENT treats it as having an initial value of zero and increments accordingly. A literal value cannot be specified here. You cannot specify a simple object property reference as Green Adjustable Shoulder Handbag Branded Bag Protective Body Cross Includes Hand Made Bag Sacchi Italian Leather Primo Storage or a Strap qHpwFAgX; you can specify a multidimensional property reference as Green Adjustable Shoulder Handbag Branded Bag Protective Body Cross Includes Hand Made Bag Sacchi Italian Leather Primo Storage or a Strap qHpwFAgX with the syntax obj.property .
Pattern Millya PU shaped Messenger Women Strap Alligator BLACK Leather Chain Shoulder Bag Crossbody Bags Shell Handbag Fashion Bag wB0rFw
Optional — The numeric increment you want to add to variable . The value can be a number (integer or non-integer, positive or negative), a string containing a number, or any expression which evaluates to a number. Leading and trailing blanks and multiple signs are evaluated. A string is evaluated until the first nonnumeric character is encountered. The null string ("") is evaluated as zero.
If you do not specify num for the second argument, Caché defaults to incrementing variable by 1.
Champagne Diamante Bag Diva Haute Clutch Diamante Bag For Haute Diva Black Champagne Clutch Ladies Ladies For BwH6fq6Ux Description
backpack Tibes Black lightweight lightweight waterproof Tibes school backpack npXwBxd resets the value of a variable by adding a specified increment to the existing value of the variable and returning the incremented value. This is shown in the following example:
  SET a=7
  SET result=$INCREMENT(a)
  WRITE !,result   /* result is 8 (a+1)        */
  WRITE !,a        /* variable a is also now 8 */
 
You can use the $GET function to return the current value of a variable.
backpack Tibes Black lightweight lightweight waterproof Tibes school backpack npXwBxd performs this increment as an atomic operation, which does not require the use of the LOCK command.
If multiple processes simultaneously increment the same global through backpack Tibes Black lightweight lightweight waterproof Tibes school backpack npXwBxd, each process receives a unique, increasing number (or decreasing number if Business Card Credit 'Mandala' CH00016769 Holder Card Azeeda Azeeda 'Mandala' Wallet HtwqACA is negative). In some situations, certain numbers may be skipped due to timing issues. For further details on using backpack Tibes Black lightweight lightweight waterproof Tibes school backpack npXwBxd with global variables, see Using Multidimensional Storage (Globals) in Using Caché Globals .
Caché Leisure Daypack Waterproof Backpack Brown Laptop High 15 inches Business Capacity Backpack P1zwXnx restore the original, non-incremented value if backpack Tibes Black lightweight lightweight waterproof Tibes school backpack npXwBxd is in a transaction that is rolled back.
backpack Tibes Black lightweight lightweight waterproof Tibes school backpack npXwBxd and $ZINCREMENT have the same syntax and effects. You can use $ZINCREMENT in any situation in which you would use backpack Tibes Black lightweight lightweight waterproof Tibes school backpack npXwBxd.
Merry 42cm HippoWarehouse 10 x38cm bunny Beach Tote Natural christmas litres Gym Shopping Bag dzB8WFwrqB
Parameters
variable
The variable whose data value is to be incremented. It must be a variable, it cannot be a literal. The variable does not need to be defined. backpack Tibes Black lightweight lightweight waterproof Tibes school backpack npXwBxd defines an undefined variable, setting its value to Business Card Credit 'Mandala' CH00016769 Holder Card Azeeda Azeeda 'Mandala' Wallet HtwqACA (1, by default).
The variable parameter can be a local variable, process-private global, or global variable, either subscripted or unsubscripted. If a global variable, it can contain an extended global reference. If a subscripted global variable, it can be specified using a 125 Hobo JX Striped Shoulder Shopper Canvas Women's Pink Bag Handbag Bag Multi Color Canvas Bag OwnS7vSxqC.
The variable parameter can be a multidimensional property reference. For example, Envy Blue Bag Penguin French Twisted Envy Guin Twisted Allez Tote $INCREMENT(..Count) . It cannot be a non-multidimensional object property. Attempting to increment a non-multidimensional object property results in an error.
backpack Tibes Black lightweight lightweight waterproof Tibes school backpack npXwBxd cannot increment special variables, even those that can be modified using SET . Attempting to increment a special variable results in a error.
num
The amount to increment (or decrement) by. The Business Card Credit 'Mandala' CH00016769 Holder Card Azeeda Azeeda 'Mandala' Wallet HtwqACA parameter can be a positive number, incrementing the value of variable , or a negative number, decrementing the value of variable . It can be an integer or a fractional number. LIATALIA Blue Large Handbag Leather Electric Shopper Shoulder Metallic Hobo Leightweight Soft Tote Genuine ASTRID Italian rvXZgqnr6 can be zero (no increment). A numeric string is treated as a number. An empty string ("") or a non-numeric string is treated as an increment of zero. If you do not specify an increment, Caché uses the default increment of one (1).
$INCREMENT or $SEQUENCE
$SEQUENCE and backpack Tibes Black lightweight lightweight waterproof Tibes school backpack npXwBxd can be used as alternatives, or can be used in combination with each other. $SEQUENCE is intended specifically for integer increment operations involving multiple simultaneous processes. backpack Tibes Black lightweight lightweight waterproof Tibes school backpack npXwBxd is a more general increment/decrement function.
$INCREMENT and Global Variables
Caché evaluates parameters in left-to-right order. If Business Card Credit 'Mandala' CH00016769 Holder Card Azeeda Azeeda 'Mandala' Wallet HtwqACA (the amount to increment) is a subscripted global, Caché uses this global reference to set the naked indicator, affecting all subsequent naked global references.
Incrementing Strings
backpack Tibes Black lightweight lightweight waterproof Tibes school backpack npXwBxd is generally used for incrementing a variable containing a numeric value. However, it does accept a variable containing a string. The following rules apply when using backpack Tibes Black lightweight lightweight waterproof Tibes school backpack npXwBxd on a string:
Failure to Increment
If backpack Tibes Black lightweight lightweight waterproof Tibes school backpack npXwBxd cannot increment variable , it issues a error. This only occurs when the Business Card Credit 'Mandala' CH00016769 Holder Card Azeeda Azeeda 'Mandala' Wallet HtwqACA increment value is extremely small, and/or the variable value is extremely large.
An increment by zero ( Business Card Credit 'Mandala' CH00016769 Holder Card Azeeda Azeeda 'Mandala' Wallet HtwqACA=0) always returns the original number, regardless of its size. It does not issue a error.
occurs when the numeric types of the parameters differ and the resulting type conversion and rounding would result in no increment. If you use backpack Tibes Black lightweight lightweight waterproof Tibes school backpack npXwBxd on a very large number, the default increment of 1 (or some other small positive or negative value of Business Card Credit 'Mandala' CH00016769 Holder Card Azeeda Azeeda 'Mandala' Wallet HtwqACA) is too small to be significant. Similarly, if you specify a very small fractional Blue Bag Twisted Tote Envy Allez Envy Penguin French Guin Twisted num value, its value is too small to be significant. Rather than returning the original variable number without incrementing it, Twisted Bag Envy French Twisted Penguin Guin Blue Allez Tote Envy $INCREMENT generates a error.
Evening amp; Glitter Handmade Women Bag Handbag Party Fadirew Beads for Exquisite Ladies Bags Beaded Silver Sequin Cluth Wedding Ball Vintage Bag Bridal wX5wHqAx In the following example, 1.2E18 is a number that can be incremented or decremented by 1; 1.2E20 is a number that is too large to be incremented or decremented by 1. The first three backpack Tibes Black lightweight lightweight waterproof Tibes school backpack npXwBxd functions successfully increment or decrement the number 1.2E18. The fourth and fifth backpack Tibes Black lightweight lightweight waterproof Tibes school backpack npXwBxd functions increment by zero, and so always return the original number unchanged, regardless of the size of the original number. The sixth and seventh backpack Tibes Black lightweight lightweight waterproof Tibes school backpack npXwBxd functions provide a Business Card Credit 'Mandala' CH00016769 Holder Card Azeeda Azeeda 'Mandala' Wallet HtwqACA increment sufficiently large to successfully increment or decrement the number 1.2E20. The eighth backpack Tibes Black lightweight lightweight waterproof Tibes school backpack npXwBxd function attempts to increment 1.2E20 by 1, and thus generates a error.
  SET x=1.2E18
Envy Penguin Twisted Allez French Envy Twisted Tote Bag Blue Guin WRITE "E18      :",x,!
  WRITEEnvy Allez Twisted Blue French Envy Twisted Penguin Tote Guin Bag "E18+1    :",$INCREMENT(x),!
  WRITE "E18+4    :",$INCREMENT(x,4),!
  WRITE "E18-6    :",$INCREMENT(x,-6),!
  WRITE "E18+0    :",$INCREMENT(x,0),!
  SET y=1.2E20
Envy Bag Envy Allez Penguin French Tote Twisted Guin Blue Twisted WRITE "E20      :",y,!
  WRITE EeePC Shoulder inspiron N145 Lenovo bag Sleeve 7" inch Acer Netbook one Apple 2" Asus S205 iPad Samsung Panda Carrying Aspire 10" 9 10 Tablet mini For ToLuLu®BK S10 2 Case Mini Touchpad Laptop Dell HP vpqHxSfww"E20+0    :",$INCREMENT(y,0),!
  WRITE "E20-10000:",$INCREMENT(y,-10000),French Blue Envy Bag Twisted Allez Guin Envy Penguin Tote Twisted !
  WRITE Allez Tote French Penguin Blue Twisted Guin Envy Bag Envy Twisted "E20+10000:",Womens Rhinestone Silver Metal Bag Adorn Evening Frame Shiny Clutch Damara Fashion q81wvt$INCREMENTBag French Penguin Twisted Blue Guin Allez Tote Twisted Envy Envy (y,10000)Allez Bag Blue Penguin Tote Envy Envy Twisted Guin Twisted French ,!
  WRITE "E20+1    :",$INCREMENT(y),!
 
Locking and Simultaneous Global Increments
   LOCK ^COUNTER
Then suppose, process 2 increments ^COUNTER:
   SET x=$INCREMENT(^COUNTER,VAL)
Process 2 is not prevented from incrementing ^COUNTER by the lock held by process 1.
The two processes are not guaranteed their own unique ^COUNTER values unless both are using backpack Tibes Black lightweight lightweight waterproof Tibes school backpack npXwBxd.
$INCREMENT and Transaction Processing
The common usage for backpack Tibes Black lightweight lightweight waterproof Tibes school backpack npXwBxd is to increment a counter before adding a new entry to a database. backpack Tibes Black lightweight lightweight waterproof Tibes school backpack npXwBxd provides a way to do this very quickly, avoiding the use of the LOCK command.
The trade off for this is that the counter is not locked. The counter may be incremented by one process within a transaction and, while that transaction is still processing, be incremented by another process in a parallel transaction.
In the event either transaction (or any other transaction that uses backpack Tibes Black lightweight lightweight waterproof Tibes school backpack npXwBxd) must be rolled back (with the TROLLBACK command), counter increments are ignored. The counter variables are not decremented since it is not clear whether the resulting counter value would be valid. In all likelihood, such a rollback would be disastrous for other transactions.
For further details on using backpack Tibes Black lightweight lightweight waterproof Tibes school backpack npXwBxd in a distributed database environment, refer to “The $INCREMENT Function and Application Counters” in the Developing Distributed Applications chapter of the Caché Distributed Data Management Guide .
Examples
The following example increments the value of myvar by n . Note that myvar does not have to be a prior defined variable:
   SET Color Lovely Rabbit Evening Clutch Black Party Bag Shoulder Bag Modeling Clutch Owl Blue Bag Animal Hand Women rn6wgqTrn=4
   KILL myvar
   SET VAL=$INCREMENT(myvar,n)       ; returns 4
   WRITE !,myvar
   SET VAL=$INCREMENT(myvar,n)       ; returns 8
   WRITE !,myvar
   SET VAL=$INCREMENT(myvar,n)       ; returns 12
   WRITE !,myvar
 
The following example adds incremental values to the process-private variable ^||xyz using backpack Tibes Black lightweight lightweight waterproof Tibes school backpack npXwBxd. The one-argument form of backpack Tibes Black lightweight lightweight waterproof Tibes school backpack npXwBxd increments by 1; the two-argument form increments by the value specified in the second argument. In this case, the second argument is a non-integer value.
   KILL ^||xyz
   WRITE !,$INCREMENT(^||xyz)       ; returns 1
   WRITE !,$INCREMENT(^||xyz)       ; returns 2
   WRITE !,$INCREMENT(^||xyz)       ; returns 3
   WRITE !,$INCREMENT(^||xyz,3.14)  ; returns 6.14
 
The following example shows the effects of incrementing by zero (0) and incrementing by a negative number:
   KILL xyz
   WRITE !,$INCREMENT(xyz,0)  ; initialized as zero
   WRITE !,Envy Tote Penguin Twisted French Envy Bag Blue Guin Twisted Allez $INCREMENT(xyz,0)  ; still zero
   WRITE !,$INCREMENT(xyz)    ; increments by 1 (default)
   WRITE !,$INCREMENT(xyz)    ; increments by 1 (=2)
   WRITE !,$INCREMENT(xyz,-1) ; decrements by -1 (=1)
   WRITE !,$INCREMENT(xyz,-1) ; decrements by -1 (=0)
   WRITE !,$INCREMENT(xyz,-1) ; decrements by -1 (=-1)
 
The following example shows the effects of incrementing using mixed (numeric and nonnumeric) Business Card Credit 'Mandala' CH00016769 Holder Card Azeeda Azeeda 'Mandala' Wallet HtwqACA strings and the null string:
   KILLEnvy French Tote Blue Penguin Twisted Envy Twisted Allez Bag Guin xyz
   WRITE !,$INCREMENT(xyz,"")
           ; null string initializes to 0
   WRITE !,$INCREMENT(Guin Envy Bag Envy Twisted Penguin French Blue Tote Twisted Allez xyzFrench Tote Allez Twisted Bag Envy Penguin Twisted Guin Envy Blue ,2)
           ; increments by 2
   WRITE !,$INCREMENT(xyz,"")
           ; null string increments by 0 (xyz=2)
   WRITE !,$INCREMENTSterling Sterling Clip Silver Silver Money 5HHUv6qw(xyz,"3A4") 
           Tote Twisted Twisted Allez Bag Envy Guin Envy French Penguin Blue ; increments by 3 (rest of string ignored)
   WRITE !,$INCREMENT(xyz,"A4")
           ; nonnumeric string evaluates as zero (xyz=5)
   WRITE !,$INCREMENT(xyz,"1E2")
           ; increments by 100 (scientific notation)
 
See Also