SODATACELL
Contains
information about the data to be placed in a cell of a spreadsheet.
typedef struct SODATACELLtag { 
    WORD
wStructSize;   //see below
    WORD
wStorage;      //see below
    WORD
wDisplay;      //see below
    DWORD
dwSubDisplay; //see below
    WORD
wPrecision;    //see below
    WORD
wAlignment;    //see below
    WORD
wAttribute;    //see below
    union { 
       
SOINT32S Int32S; //see below
       
SOINT32U Int32U; //see below
        BYTE
IEEE4[4];   //see below
        BYTE
IEEE8[8];   //see below
        BYTE
IEEE10[10]; //see below
        BYTE
BCD8[8];    //see below
    }
uStorage;
} SODATACELL, VWPTR * PSODATACELL;
 
Members
wStructSize
Size, in
bytes, of the structure.
wStorage
Storage type.
This member can be one of these values:
| SO_CELLBCD8I | Packed BCD
  excess-63. | 
| SO_CELLEMPTY | The cell is
  empty. | 
| SO_CELLERROR | The cell
  has an error condition. | 
| SO_CELLIEEE4I | IEEE 4-byte
  in Intel  (PC) ordering. | 
| SO_CELLIEEE8I | IEEE 8-byte
  in Intel (PC) ordering. | 
| SO_CELLIEEE10I | IEEE
  10-byte in Intel (PC) ordering. | 
| SO_CELLINT32S | 32-bit
  signed integer. | 
| SO_CELLINT32U | 32-bit
  unsigned integer. | 
wDisplay
Display type.
This member can be one of these values:
| SO_CELLBOOL | Boolean (0
  = FALSE and 1 = TRUE). | 
| SO_CELLDATE | Julian Days
  since the base date. wStorage may be either an IEEE or integer value. | 
| SO_CELLDATETIME | Julian Days
  since the base date. wStorage may be either an IEEE or integer value. | 
| SO_CELLDECIMAL | Decimal
  notation. | 
| SO_CELLDOLLARS | Dollar
  sign. | 
| SO_CELLEXPONENT | Exponential
  notation. | 
| SO_CELLNUMBER | General
  number format. | 
| SO_CELLPERCENT | Percent
  (not constrained to 0 - 100). | 
| SO_CELLTIME | Decimal
  part of a day if wStorage is an IEEE value or seconds since 00:00 if wStorage
  is an integer value.  | 
dwSubDisplay
Display
subtype. The values depend on wDisplay value.
For SO_CELLNUMBER and SO_CELLDOLLARS, this member can be a combination
of one negative-number format, thousands separator, and cell multiplier.
| Negative
  Number Format |  | 
| SO_CELLNEG_MINUS | Negative
  numbers have a minus sign. | 
| SO_CELLNEG_MINUSRED | Negative
  numbers have a minus sign and are red. | 
| SO_CELLNEG_PAREN | Negative
  numbers have parentheses. | 
| SO_CELLNEG_PARENRED | Negative
  numbers have parentheses and are red. | 
| Thousands
  Separator |  | 
| SO_CELL1000SEP_COMMA | Commas as
  1,000s separator. | 
| SO_CELL1000SEP_NONE | No 1000s
  separator. | 
| Cell
  Multiplier |  | 
| SO_CELLMULT_1 | Used for
  all file parsers. | 
| SO_CELLMULT_01 | Used only
  for Microsoft  Excel viewer. | 
| SO_CELLMULT_05 | Used only
  for Lotus viewer. | 
| SO_CELLMULT_005 | Used only
  for Lotus viewer. | 
| SO_CELLMULT_0005 | Used only
  for Lotus viewer. | 
| SO_CELLMULT_00005 | Used only
  for Lotus viewer. | 
| SO_CELLMULT_500 | Used only
  for Lotus viewer. | 
| SO_CELLMULT_5000 | Used only
  for Lotus viewer. | 
| SO_CELLMULT_0625 | Used only
  for Lotus viewer. | 
| SO_CELLMULT_015625 | Used only
  for Lotus viewer. | 
For
SO_CELLDATETIME, SO_CELLDATE, and SO_CELLTIME, this member can be a combination
of one date separator, day format, month format, year format, day of week
format, and time format.
| Date
  Separator |  | 
| SO_CELLDATESEP_MINUS |  | 
| SO_CELLDATESEP_NONE |  | 
| SO_CELLDATESEP_PERIOD |  | 
| SO_CELLDATESEP_SPACE |  | 
| Day
  Format |  | 
| SO_CELLDAY_NONE |  | 
| SO_CELLDAY_NUMBER |  | 
| Month
  Format |  | 
| SO_CELLMONTH_ABBREV |  | 
| SO_CELLMONTH_FULL |  | 
| SO_CELLMONTH_NONE |  | 
| SO_CELLMONTH_NUMBER |  | 
| Year
  Format |  | 
| SO_CELLYEAR_ABBREV |  | 
| SO_CELLYEAR_FULL |  | 
| SO_CELLYEAR_NONE |  | 
| Day of
  Week Format |  | 
| SO_CELLDAYOFWEEK_ABBREV |  | 
| SO_CELLDAYOFWEEK_FULL |  | 
| SO_CELLDAYOFWEEK_NONE |  | 
| Time
  Format |  | 
| SO_CELLTIME_HHMM24 |  | 
| SO_CELLTIME_HHMMAM |  | 
| SO_CELLTIME_HHMMHMS | For
  example, 14h45m | 
| SO_CELLTIME_HHMMSS24 |  | 
| SO_CELLTIME_HHMMSSAM |  | 
| SO_CELLTIME_HHMMSSHMS | For
  example, 14h45m34s | 
| SO_CELLTIME_NONE |  | 
wPrecision
Precision or
positioning value, depending on the wDisplay value.
For SO_CELLNUMBER and SO_CELLDOLLARS, this member specifies the number
of places to the right of the decimal point. 
For SO_CELLDATETIME, SO_CELLDATE, and SO_CELLTIME, this member
specifies the position in the date time string of each element. It must be a
combination of one value for each of the day of week position, month position,
day position, year position, and time position.
| Day of
  Week Position |  | 
| SO_CELLDAYOFWEEK_1 |  | 
| SO_CELLDAYOFWEEK_2 |  | 
| SO_CELLDAYOFWEEK_3 |  | 
| SO_CELLDAYOFWEEK_4 |  | 
| SO_CELLDAYOFWEEK_5 |  | 
| Month
  Position |  | 
| SO_CELLMONTH_1 |  | 
| SO_CELLMONTH_2 |  | 
| SO_CELLMONTH_3 |  | 
| SO_CELLMONTH_4 |  | 
| SO_CELLMONTH_5 |  | 
| Day
  Position |  | 
| SO_CELLDAY_1 |  | 
| SO_CELLDAY_2 |  | 
| SO_CELLDAY_3 |  | 
| SO_CELLDAY_4 |  | 
| SO_CELLDAY_5 |  | 
| Year
  Position |  | 
| SO_CELLYEAR_1 |  | 
| SO_CELLYEAR_2 |  | 
| SO_CELLYEAR_3 |  | 
| SO_CELLYEAR_4 |  | 
| SO_CELLYEAR_5 |  | 
| Time
  Position |  | 
| SO_CELLTIME_1 |  | 
| SO_CELLTIME_2 |  | 
| SO_CELLTIME_3 |  | 
| SO_CELLTIME_4 |  | 
| SO_CELLTIME_5 |  | 
wAlignment
Alignment of
data in the cell. This member can be the SO_CELLLEFT, SO_CELLRIGHT, or
SO_CELLCENTER value.
wAttribute
Attribute of
data in the cell. This member can be a combination of the SO_CELLBOLD,
SO_CELLITALIC, SO_CELLUNDERLINE, and SO_CELLSTRIKEOUT values.
Int32S
Signed 32-bit
integer.
Int32U
Unsigned
32-bit integer.
IEEE4
Four-byte
array representing an IEEE 4-byte floating-point number.
IEEE8
Eight-byte
array representing an IEEE 8-byte floating-point number.
IEEE10
Ten-byte
array representing an IEEE 10-byte floating-point number.
BCD8
Eight-byte
array representing an excess-63 floating-point packed BCD.