home *** CD-ROM | disk | FTP | other *** search
/ Tools en Utilities / CDASS_5.ISO / shell / util / parse260.arj / EXAMPLE4.POM < prev    next >
Encoding:
Text File  |  1995-01-01  |  4.3 KB  |  104 lines

  1. ;  The following comment lines are for quick-reference.
  2. ;  Copy them into your own POM files to make programming easier.
  3. ;
  4. ;  In the table below:
  5. ;
  6. ;  "var"   means a variable that is being set.
  7. ;  "value" means a variable whose value is being read.
  8. ;  Square brackets [like this] indicate optional items.
  9. ;
  10. ;  -------------------------------------------  ------------------------------
  11. ;  COMMAND FORMATS                              EXAMPLE
  12. ;  ===========================================  ==============================
  13. ;  SET      var1 value1                         SET     NAME $FLINE[20 26]
  14. ;  IF       value1 value2 var1 value3 [value4]  IF      X = "Y" THEN Z = "N"
  15. ;  -------------------------------------------  ------------------------------
  16. ;  BEGIN    value1 value2                       BEGIN   LINECNTR = "3"
  17. ;  END                                          END
  18. ;  -------------------------------------------  ------------------------------
  19. ;  OUT      [value1 value2] |output-picture     OUT     "X" "X" |{PRICE}
  20. ;  OUTEND   [value1 value2] |output-picture     OUTEND  "X" "X" |{$FLINE}
  21. ;  -------------------------------------------  ------------------------------
  22. ;  MINLEN   number                              MINLEN  "15"
  23. ;  IGNORE   value1 value2                       IGNORE  PRICE "0.00"
  24. ;  ACCEPT   value1 value2                       ACCEPT  $FLINE[1 3] "YES"
  25. ;  -------------------------------------------  ------------------------------
  26. ;  TRIM     var1 spec1 character                TRIM    PRICE "R" "$"
  27. ;  PAD      var1 spec1 character len            PAD     SERIALNUM "L" "0" "10"
  28. ;  INSERT   var1 spec1 value1                   INSERT  PRICE "L" "$"
  29. ;  CHANGE   var1 value1 value2                  CHANGE  DATE "/" "-"
  30. ;  -------------------------------------------  ------------------------------
  31. ;  SPLIT    from to [,from to] [...]            SPLIT   1 250, 251 300
  32. ;  CHOP     from to [,from to] [...]            CHOP    1 250, 251 300
  33. ;  -------------------------------------------  ------------------------------
  34. ;  LOOKUP   var1 value1                         LOOKUP   PHONENUM "FRED JONES"
  35. ;  LOOKFILE value1                              LOOKFILE "C:\TABLES\DATA.TBL"
  36. ;  LOOKCOLS value1 value2 value3 value4         LOOKCOLS "1" "3" "8" "255"
  37. ;  LOOKSPEC value1 value2 value3                LOOKSPEC "Y" "N" "N"
  38. ;  -------------------------------------------  ------------------------------
  39. ;
  40. ;  DEFAULT VALUES
  41. ;  --------------
  42. ;
  43. ;  MINLEN:    1
  44. ;  LOOKCOLS:  Keyfield Start = 1, End = 10; Datafield Start = 12, End = 255
  45. ;  LOOKSPEC:  Trim = Yes; Sorted = No; Case-sensitive = No
  46. ;  LOOKFILE:  No default, but you can set the file name via the /L parameter
  47. ;
  48. ;  ---------------------------------------------------------------------------
  49. ;
  50. ;
  51. ;  PADDING FOR CLARITY
  52. ;  -------------------
  53. ;
  54. ;  Before:   IF PRICE "0.00" BONUS "1.00" "0.00
  55. ;  After:    IF PRICE = "0.00" THEN BONUS = "1.00" ELSE "0.00
  56. ;
  57. ;
  58. ;******************************************************************************
  59. ;
  60. ;  Restrict the lines we'll accept
  61. ;
  62. ACCEPT $FLINE[58 60] = "IBM"
  63. ACCEPT $FLINE[58 60] = "MAC"
  64. ;
  65. ;  Pad out description, with spaces, to 40 characters
  66. ;  We'll also modify the string -PC to read -IBMPC
  67. ;    Note the trailing space after PC to ensure it's at the end of the string
  68. ;
  69. SET    descrip       = $FLINE[19 49]
  70. INSERT descrip         "@PC " "IBM"
  71. PAD    descrip         "R"   " "   "40"
  72. ;
  73. ;  Make quantity only 2 characters wide (maximum would therefore be 99)
  74. ;
  75. SET    qty           = $FLINE[63 66]
  76. TRIM   qty             "A"   " "
  77. PAD    qty             "L"   " "  "2"
  78. ;
  79. ;  Take only the last three digits of the invoice number
  80. ;
  81. SET    inv           = $FLINE[14 16]
  82. ;
  83. ;  Detect minus sign and set price accordingly
  84. ;
  85. SET    price         = $FLINE[70 76]
  86. TRIM   price           "A" " "
  87. IF     $FLINE[77]    = "-" THEN minus = "-" ELSE ""
  88. INSERT price           "L" minus
  89. PAD    price           "L" " " "7"
  90. INSERT price           "L" "$"
  91. ;
  92. ;  Set other fields; note use of uppercase for type
  93. ;
  94. SET    itemnum       = $FLINE[01 07]
  95. SET    type          = $FLUPC[51 55]
  96. SET    cat           = $FLINE[58 60]
  97. ;
  98. ;  Set output as follows:
  99. ;  Invoice, Item, Type (in uppercase), Category
  100. ;  Description, Quantity, Unit price
  101. ;
  102. OUT    "" "" |{inv} {itemnum} {type} {cat}
  103. OUTEND "" "" | {descrip} {qty}    {price}
  104.