Ricoh InfoPrint Pro C900AFP InfoPrint Manager - Page 102

Input record exit, asciinpe, apka2e, INPCCSID, OUTCCSID, line2afp, inpexit

Page 102 highlights

The asciinpe input-record exit program combines both of the user input-record exits described above. To execute, specify inpexit=install_path\bin\asciinpe.dll as the exit program in the keyword file and follow the directions specified for both apka2e and asciinp. The asciinpe.c input-record exit program translates data that is encoded in one code character set (CCSID) to another. You should use this exit when your job uses fonts such as GT12, which has code points that are different from your data file. The default translation is from ASCII (code set 00850) to EBCDIC (code set 00037) if the INPCCSID and OUTCCSID parameters are not specified on the line2afp command. INPCCSID specifies the input code page, and OUTCCSID specifies the output code page. While the asciinp and asciinpe input-record exits do not recognize other ASCII printer commands, you can modify these exits to account for these: v backspacing (X'08') v horizontal tabs (X'09') v vertical tabs (X'0B') In addition to the information above, see the prolog of the asciinp.c source file that is provided with InfoPrint Manager in the install_path\exits\acif directory for more information about using and modifying these programs. The C language header file for all ACIF exit programs is provided in install_path\exits\acif\apkexits.h along with the build rules for the ACIF user exits in install_path\exits\acif\Makefile. To build the executable program, you must use the Microsoft Visual Studio 2005 Program, pull-down menu. Input record exit The line-data transform provides an exit that enables you to add, delete, or modify records in the line-data input file. The program invoked at this exit is defined by the value of the inpexit keyword of the line2afp command. This exit is called after each record is read from the input file. The exit can request that the record be discarded, processed, or processed with control returned to the exit for the next input record. The largest record that InfoPrint Manager can process is 32756 bytes. This exit is not called when the line-data transform is processing resources from directories. This example provides a sample C language header that describes the control block that is passed to the exit program: /* INPEXIT STRUCTURE */ typedef struct _INPEXIT_PARMS /* Parameters for input record exit */ { char *work; /* Address of 16-byte static work area */ PFATTR *pfattr; /* Address of print file attribute info*/ char *record; /* Address of the input record */ unsigned short in_CCSID; /* input CCSID for translating @06a*/ unsigned short out_CCSID; /* output CCSID for translating @06a*/ unsigned short recordln; /* Length of the input record */ 84 InfoPrint Manager for Windows: Procedures

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55
  • 56
  • 57
  • 58
  • 59
  • 60
  • 61
  • 62
  • 63
  • 64
  • 65
  • 66
  • 67
  • 68
  • 69
  • 70
  • 71
  • 72
  • 73
  • 74
  • 75
  • 76
  • 77
  • 78
  • 79
  • 80
  • 81
  • 82
  • 83
  • 84
  • 85
  • 86
  • 87
  • 88
  • 89
  • 90
  • 91
  • 92
  • 93
  • 94
  • 95
  • 96
  • 97
  • 98
  • 99
  • 100
  • 101
  • 102
  • 103
  • 104
  • 105
  • 106
  • 107
  • 108
  • 109
  • 110
  • 111
  • 112
  • 113
  • 114
  • 115
  • 116
  • 117
  • 118
  • 119
  • 120
  • 121
  • 122
  • 123
  • 124
  • 125
  • 126
  • 127
  • 128
  • 129
  • 130
  • 131
  • 132
  • 133
  • 134
  • 135
  • 136
  • 137
  • 138
  • 139
  • 140
  • 141
  • 142
  • 143
  • 144
  • 145
  • 146
  • 147
  • 148
  • 149
  • 150
  • 151
  • 152
  • 153
  • 154
  • 155
  • 156
  • 157
  • 158
  • 159
  • 160
  • 161
  • 162
  • 163
  • 164
  • 165
  • 166
  • 167
  • 168
  • 169
  • 170
  • 171
  • 172
  • 173
  • 174
  • 175
  • 176
  • 177
  • 178
  • 179
  • 180
  • 181
  • 182
  • 183
  • 184
  • 185
  • 186
  • 187
  • 188
  • 189
  • 190
  • 191
  • 192
  • 193
  • 194
  • 195
  • 196
  • 197
  • 198
  • 199
  • 200
  • 201
  • 202
  • 203
  • 204
  • 205
  • 206
  • 207
  • 208
  • 209
  • 210
  • 211
  • 212
  • 213
  • 214
  • 215
  • 216
  • 217
  • 218
  • 219
  • 220
  • 221
  • 222
  • 223
  • 224
  • 225
  • 226
  • 227
  • 228
  • 229
  • 230
  • 231
  • 232
  • 233
  • 234
  • 235
  • 236
  • 237
  • 238
  • 239
  • 240
  • 241
  • 242
  • 243
  • 244
  • 245
  • 246
  • 247
  • 248
  • 249
  • 250
  • 251
  • 252
  • 253
  • 254
  • 255
  • 256
  • 257
  • 258
  • 259
  • 260
  • 261
  • 262
  • 263
  • 264
  • 265
  • 266
  • 267
  • 268
  • 269
  • 270
  • 271
  • 272
  • 273
  • 274
  • 275
  • 276
  • 277
  • 278
  • 279
  • 280
  • 281
  • 282
  • 283
  • 284
  • 285
  • 286
  • 287
  • 288
  • 289
  • 290
  • 291
  • 292
  • 293
  • 294
  • 295
  • 296
  • 297
  • 298
  • 299
  • 300
  • 301
  • 302
  • 303
  • 304
  • 305
  • 306
  • 307
  • 308
  • 309
  • 310
  • 311
  • 312
  • 313
  • 314
  • 315
  • 316
  • 317
  • 318
  • 319
  • 320
  • 321
  • 322
  • 323
  • 324
  • 325
  • 326
  • 327
  • 328
  • 329
  • 330
  • 331
  • 332
  • 333
  • 334
  • 335
  • 336
  • 337
  • 338
  • 339
  • 340
  • 341
  • 342
  • 343
  • 344
  • 345
  • 346
  • 347
  • 348
  • 349
  • 350
  • 351
  • 352
  • 353
  • 354
  • 355
  • 356
  • 357
  • 358
  • 359
  • 360
  • 361
  • 362
  • 363
  • 364
  • 365
  • 366
  • 367
  • 368
  • 369
  • 370
  • 371
  • 372
  • 373
  • 374
  • 375
  • 376
  • 377
  • 378
  • 379
  • 380
  • 381
  • 382
  • 383
  • 384
  • 385
  • 386
  • 387
  • 388
  • 389
  • 390
  • 391
  • 392
  • 393
  • 394
  • 395
  • 396
  • 397
  • 398
  • 399
  • 400
  • 401
  • 402
  • 403
  • 404
  • 405
  • 406
  • 407
  • 408
  • 409
  • 410
  • 411
  • 412
  • 413
  • 414
  • 415
  • 416
  • 417
  • 418
  • 419
  • 420
  • 421
  • 422
  • 423
  • 424
  • 425
  • 426

The
asciinpe
input-record exit program combines both of the user input-record
exits described above. To execute, specify
inpexit=
install_path
\bin\asciinpe.dll
as the exit program in the keyword file and follow the directions specified for both
apka2e
and
asciinp
.
The
asciinpe.c
input-record exit program translates data that is encoded in one
code character set (CCSID) to another. You should use this exit when your job uses
fonts such as GT12, which has code points that are different from your data file.
The default translation is from ASCII (code set 00850) to EBCDIC (code set 00037)
if the
INPCCSID
and
OUTCCSID
parameters are not specified on the
line2afp
command.
INPCCSID
specifies the input code page, and
OUTCCSID
specifies the
output code page.
While the
asciinp
and
asciinpe
input-record exits do not recognize other ASCII
printer commands, you can modify these exits to account for these:
v
backspacing (X'08')
v
horizontal tabs (X'09')
v
vertical tabs (X'0B')
In addition to the information above, see the prolog of the
asciinp.c
source file that
is provided with InfoPrint Manager in the
install_path
\exits\acif
directory for
more information about using and modifying these programs.
The C language header file for all ACIF exit programs is provided in
install_path
\exits\acif\apkexits.h
along with the build rules for the ACIF user
exits in
install_path
\exits\acif\Makefile
.
To build the executable program, you must use the Microsoft Visual Studio 2005
Program, pull-down menu.
Input record exit
The line-data transform provides an exit that enables you to add, delete, or modify
records in the line-data input file. The program invoked at this exit is defined by
the value of the
inpexit
keyword of the
line2afp
command.
This exit is called after each record is read from the input file. The exit can request
that the record be discarded, processed, or processed with control returned to the
exit for the next input record. The largest record that InfoPrint Manager can
process is 32756 bytes. This exit is not called when the line-data transform is
processing resources from directories.
This example provides a sample C language header that describes the control block
that is passed to the exit program:
/*********************************************************************/
/* INPEXIT STRUCTURE
*/
/*********************************************************************/
typedef struct _INPEXIT_PARMS /* Parameters for input record exit
*/
{
char
*work;
/* Address of 16-byte static work area */
PFATTR
*pfattr;
/* Address of print file attribute info*/
char
*record;
/* Address of the input record
*/
unsigned short in_CCSID;
/* input CCSID for translating
@06a*/
unsigned short out_CCSID;
/* output CCSID for translating
@06a*/
unsigned short recordln;
/* Length of the input record
*/
84
InfoPrint Manager for Windows: Procedures