FLAM4SEPA-API
FLAM4 SEPA Archive Interface (z/OS only) Version: 5.2.0-37009
FL4SEPA.h
Go to the documentation of this file.
1
71
73#ifndef INC_FL4SEPA_H
74#define INC_FL4SEPA_H
75
76#ifdef __cplusplus
77 extern "C" {
78#endif
79
80/**********************************************************************/
81
82#ifdef __ZOS__
83# pragma linkage(CLM100NP, OS_NOSTACK)
84# pragma linkage(CLN100NP, OS_NOSTACK)
85# pragma linkage(CLM221NP, OS)
86# pragma linkage(CLN221NP, OS)
87# pragma linkage(CLM222NP, OS)
88# pragma linkage(CLN222NP, OS)
89# pragma linkage(CLM223NP, OS)
90# pragma linkage(CLN223NP, OS)
91# pragma linkage(CLU223NP, OS)
92# pragma linkage(CLX223NP, OS)
93# pragma linkage(CLG223NP, OS)
94# pragma linkage(CLM250NP, OS)
95# pragma linkage(CLN250NP, OS)
96# pragma linkage(CLU250NP, OS)
97# pragma linkage(CLX250NP, OS)
98# pragma linkage(CLG250NP, OS)
99# pragma linkage(TfCLM100NP, OS)
100# pragma linkage(TfCLN100NP, OS)
101# pragma linkage(TfCLU100NP, OS)
102# pragma linkage(TfCLX100NP, OS)
103# pragma linkage(TfCLG100NP, OS)
104#endif
105
107/**********************************************************************/
108
109#include "FL4REC.h"
110
111/**********************************************************************/
112
119#define F4S_MAXANZSF 128U
120#define F4S_MAXANZNF 50U
121
122#define F4S_TRAKEYLEN 50U
123#define F4S_XMLKEYLEN 33U
124#define F4S_XM1OFFSET 8055U
125#define F4S_XM2OFFSET 20090U
126#define F4S_MAXRECLEN 32125U
127#define F4S_CLTEMPLEN 32144U
128#define F4S_METAFIELD 30U
129#define F4S_LENFIELD 5U
130#define F4S_MAXSFLEN 64U
131#define F4S_BLOOMCNT 128U
132#define F4S_MAXSIGLEN 8192U
133#define F4S_DSNAMELEN 44U
134#define F4S_DDNAMELEN 8U
135#define F4S_RCLEN 2U
136#define F4S_ERRTXTLEN 80U
137
139/**********************************************************************/
140
146
212
232typedef struct F4sNfHeader
233{
234 C08 acIdBt[8];
235 C08 acIdNr[5];
238
240#define FL4SEPA_VSN21
242#include "FL4SEPAS.h"
244#undef FL4SEPA_VSN21
246
248#define FL4SEPA_VSN22
250#include "FL4SEPAS.h"
252#undef FL4SEPA_VSN22
254
256#define FL4SEPA_VSN23
258#include "FL4SEPAS.h"
260#undef FL4SEPA_VSN23
262
264#define FL4SEPA_VSN50
266#include "FL4SEPAS.h"
268#undef FL4SEPA_VSN50
270
285
317
354
383
408
472
474/******************************************************************************/
475
480
489typedef void (TfCLM100NP)(TsF4sLoad* psPar);
490
499typedef void (TfCLN100NP)(TsF4sSearchIn* psInPar,TsF4sOut* psOutPar);
500
510typedef void (TfCLU100NP)(const TsF4sUpdateIn* psInPar,TsF4sOut* psOutPar);
511
520typedef void (TfCLX100NP)(const TsF4sMigrateIn* psInPar,TsF4sOut* psOutPar);
521
530typedef void (TfCLG100NP)(const TsF4sGenerateIn* psInPar,TsF4sOut* psOutPar);
531
533/******************************************************************************/
534
536
537extern void CLM100NP(TsF4sLoad* psPar);//Old assembler Entry in Version 21
538extern void CLM221NP(TsF4sLoad* psPar);//New C entry in version 21 (same as old assembler)
539extern void CLM222NP(TsF4sLoad* psPar);//New C entry in version 22 (new search field REASRTRA)
540extern void CLM223NP(TsF4sLoad* psPar);//New C entry in version 23 (change SIGDSN from PS to KSDS for Update)
541extern void CLM250NP(TsF4sLoad* psPar);//New C entry in version 23 (change SIGDSN from PS to KSDS for Update)
542
543extern void CLN100NP(TsF4sSearchIn* psInPar,TsF4sOut* psOutPar);//Old assembler Entry in Version 21
544extern void CLN221NP(TsF4sSearchIn* psInPar,TsF4sOut* psOutPar);//New C entry in version 21 (same as old assembler)
545extern void CLN222NP(TsF4sSearchIn* psInPar,TsF4sOut* psOutPar);//New C entry in version 22 (new search field REASRTRA)
546extern void CLN223NP(TsF4sSearchIn* psInPar,TsF4sOut* psOutPar);//New C entry in version 23 (change SIGDSN from PS to KSDS for Update)
547extern void CLN250NP(TsF4sSearchIn* psInPar,TsF4sOut* psOutPar);//New C entry in version 23 (change SIGDSN from PS to KSDS for Update)
548
549extern void CLU223NP(TsF4sUpdateIn* psInPar,TsF4sOut* psOutPar);//New C entry in version 23 (new update function)
550extern void CLU250NP(TsF4sUpdateIn* psInPar,TsF4sOut* psOutPar);//New C entry in version 23 (new update function)
551
552extern void CLX223NP(TsF4sMigrateIn* psInPar,TsF4sOut* psOutPar);//New C entry in version 23 (new migrate function)
553extern void CLX250NP(TsF4sMigrateIn* psInPar,TsF4sOut* psOutPar);//New C entry in version 23 (new migrate function)
554
555extern void CLG223NP(TsF4sGenerateIn* psInPar,TsF4sOut* psOutPar);//New C entry in version 23 (new migrate function)
556extern void CLG250NP(TsF4sGenerateIn* psInPar,TsF4sOut* psOutPar);//New C entry in version 23 (new migrate function)
557
558/* Proposal for new search field independent interface ************************/
559
560#define F4S_SFMTD_VERSN "VERSN"
561#define F4S_SFMTD_RESRV "RESRV"
562#define F4S_SFMTD_PRDAY "PRDAY"
563#define F4S_SFMTD_SYSTM "SYSTM"
564#define F4S_SFMTD_SVCID "SVCID"
565#define F4S_SFMTD_BF32N "BF32N"
566#define F4S_SFMTD_BF48N "BF48N"
567#define F4S_SFMTD_BF32I "BF32I"
568#define F4S_SFMTD_BF48I "BF48I"
569#define F4S_SFMTD_NOSIG "NOSIG"
570
571#define F4S_SFTYP_BIN "B"
572#define F4S_SFTYP_NUM "N"
573#define F4S_SFTYP_STR "S"
574
575#define F4S_SFWC_YES "Y"
576#define F4S_SFWC_NO "N"
577
578typedef struct F4sSfTab {
579// C08 acName[16]; /**< @brief Logical name for the search filed*/
580 C08 acMethod[5];
581 C08 acDatTyp[1];
582 C08 acWldCrd[1];
583 C08 acResrvd[1];
584 U32 uiDatOfs;
585 U32 uiDatLen;
586 U32 uiSigLen;
587}TsF4sSfTab;
588
589typedef struct F4sLoadInp
590{
591 C08 acListDataSet[F4S_DSNAMELEN];
592 C08 acAnzDsNames[5];
593 C08 acDdnSig[F4S_DDNAMELEN];
594 C08 acDdnTra[F4S_DDNAMELEN];
595 C08 acDdnXmlI[F4S_DDNAMELEN];
596 C08 acDdnXmlO[F4S_DDNAMELEN];
597 C08 acAnzSf[4];
598} TsF4sLoadInp;
599
600typedef struct F4sSearchInp
601{
602 C08 acDsnSig[F4S_DSNAMELEN];
603 C08 acDsnTra[F4S_DSNAMELEN];
604 C08 acDsnXmlI[F4S_DSNAMELEN];
605 C08 acDsnXmlO[F4S_DSNAMELEN];
606 C08 acMaxResults[6];
607 C08 acAnzSf[4];
608 C08 acAnzNf[2];
609}TsF4sSearchInp;
610
611typedef struct F4sSearchIds
612{
613 C08 acIdBt[8];
614 C08 acIdNr[5];
615 C08 acAnzResults[6];
616 C08 acAnzSf[4];
617}TsF4sSearchIds;
618
619typedef struct F4sSearchFields
620{
621 U32 uiIndex;
622// C08 acName[16]; /**< @brief Name for the search field*/
623 C08 acValue[F4S_MAXSFLEN];
624}TsF4sSearchFields;
625
626typedef struct F4sUpdateInp
627{
628 C08 acDelete[1];
629 C08 acUpdTra[F4S_DSNAMELEN];
630 C08 acDsnSig[F4S_DSNAMELEN];
631 C08 acDsnTra[F4S_DSNAMELEN];
632 C08 acAnzSf[4];
633} TsF4sUpdateInp;
634
635typedef struct F4sMigrateInp
636{
637 C08 acDsnSig[F4S_DSNAMELEN];
638 C08 acDsnTra[F4S_DSNAMELEN];
639 C08 acAnzSf[4];
640} TsF4sMigrateInp;
641
642typedef struct F4sGenerateInp
643{
644 C08 acDdnSig[F4S_DDNAMELEN];
645 C08 acDsnTra[F4S_DSNAMELEN];
646 C08 acAnzSf[4];
647} TsF4sGenerateInp;
648
649//New C entry in version 24 for load
650extern void CLM224NP(
651 const TsF4sSfTab* psSfTab,
652 const TsF4sLoadInp* psInpPar,
653 TsF4sOut* psOutPar);
654
655//New C entry in version 24 for lookup
656extern void CLN224NP(
657 const TsF4sSfTab* psSfTab,
658 const TsF4sSearchInp* psInpPar,
659 TsF4sSearchIds* psIds,
660 const TsF4sSearchFields*psFields,
661 TsF4sOut* psOutPar);
662
663//New C entry in version 24 for update
664extern void CLU224NP(
665 const TsF4sSfTab* psSfTab,
666 const TsF4sUpdateInp* psInpPar,
667 TsF4sOut* psOutPar);
668
669//New C entry in version 24 for migrate
670extern void CLX224NP(
671 const TsF4sSfTab* psSfTab,
672 const TsF4sMigrateInp* psInpPar,
673 TsF4sOut* psOutPar);
674
675//New C entry in version 24 for generate
676extern void CLG224NP(
677 const TsF4sSfTab* psSfTab,
678 const TsF4sGenerateInp* psInpPar,
679 TsF4sOut* psOutPar);
680
681#ifdef __cplusplus
682 }
683#endif
684
685#endif /*INC_FL4SEPA_H*/
#define F4S_ERRTXTLEN
Space for the error text.
Definition FL4SEPA.h:136
#define F4S_RCLEN
Space for the return code.
Definition FL4SEPA.h:135
#define F4S_DSNAMELEN
Space for data set names.
Definition FL4SEPA.h:133
#define F4S_MAXSFLEN
Maximum length of a search field.
Definition FL4SEPA.h:130
#define F4S_DDNAMELEN
Space for DD names.
Definition FL4SEPA.h:134
#define F4S_MAXANZNF
Maximum number of lookups per call.
Definition FL4SEPA.h:120
void TfCLM100NP(TsF4sLoad *psPar)
Load function.
Definition FL4SEPA.h:489
void TfCLN100NP(TsF4sSearchIn *psInPar, TsF4sOut *psOutPar)
Lookup function.
Definition FL4SEPA.h:499
void TfCLX100NP(const TsF4sMigrateIn *psInPar, TsF4sOut *psOutPar)
Migrate function.
Definition FL4SEPA.h:520
void TfCLG100NP(const TsF4sGenerateIn *psInPar, TsF4sOut *psOutPar)
Generate function.
Definition FL4SEPA.h:530
void TfCLU100NP(const TsF4sUpdateIn *psInPar, TsF4sOut *psOutPar)
Update function.
Definition FL4SEPA.h:510
struct F4sLoad TsF4sLoad
Parameter structure to load an archive.
struct F4sNfEntry21 TsF4sNfEntry21
Parameter structure to define the search field for an research in an archive.
struct F4sNfHeader TsF4sNfHeader
Header structure for a lookup request.
struct F4sMigrateIn TsF4sMigrateIn
Input parameter structure to migrate the signature file of the SEPA archive.
struct F4sGenerateIn TsF4sGenerateIn
Input parameter structure to generate the signature file of the SEPA archive.
struct F4sUpdateIn TsF4sUpdateIn
Input parameter structure to update records in or delete from an archive.
struct F4sSearchIn TsF4sSearchIn
Input parameter structure for lookups in an archive.
union F4sNfTab TuF4sNfTab
Overlay/Union for the different request structure arrays.
struct F4sOut TsF4sOut
Output structure.
Input parameter structure to generate the signature file of the SEPA archive.
Definition FL4SEPA.h:404
C08 acDsnTra[F4S_DSNAMELEN]
DSN for transaction FLAMFILE of SEPA archive.
Definition FL4SEPA.h:406
C08 acDdnSig[F4S_DDNAMELEN]
DDN for signature FLAMFILE of SEPA archive.
Definition FL4SEPA.h:405
Parameter structure to load an archive.
Definition FL4SEPA.h:202
C08 acDdnSig[F4S_DDNAMELEN]
DDNAME for the signature file.
Definition FL4SEPA.h:205
C08 acDdnXmlI[F4S_DDNAMELEN]
DDNAME for the SEPA XML inbound file.
Definition FL4SEPA.h:207
C08 acRc[F4S_RCLEN]
Return code.
Definition FL4SEPA.h:209
C08 acErrorText[F4S_ERRTXTLEN]
Error text.
Definition FL4SEPA.h:210
C08 acDdnXmlO[F4S_DDNAMELEN]
DDNAME for the SEPA XML outbound file.
Definition FL4SEPA.h:208
C08 acAnzDsNames[5]
Number of FLAMFILES contained in / read from the list dataset.
Definition FL4SEPA.h:204
C08 acListDataSet[F4S_DSNAMELEN]
Name of the list dataset.
Definition FL4SEPA.h:203
C08 acDdnTra[F4S_DDNAMELEN]
DDNAME for the transaction file.
Definition FL4SEPA.h:206
Input parameter structure to migrate the signature file of the SEPA archive.
Definition FL4SEPA.h:379
C08 acDsnTra[F4S_DSNAMELEN]
DSN for transaction FLAMFILE of SEPA archive.
Definition FL4SEPA.h:381
C08 acDsnSig[F4S_DSNAMELEN]
DSN for signature FLAMFILE of SEPA archive.
Definition FL4SEPA.h:380
Header structure for a lookup request.
Definition FL4SEPA.h:233
C08 acIdNr[5]
ID sequence number.
Definition FL4SEPA.h:235
C08 acIdBt[8]
ID of the build day.
Definition FL4SEPA.h:234
C08 acAnzResults[6]
Number of results/matches.
Definition FL4SEPA.h:236
Output structure.
Definition FL4SEPA.h:468
C08 acRc[F4S_RCLEN]
Definition FL4SEPA.h:469
C08 acErrorText[F4S_ERRTXTLEN]
Definition FL4SEPA.h:470
Input parameter structure for lookups in an archive.
Definition FL4SEPA.h:308
C08 acAnzNf[2]
Number of lookup requests.
Definition FL4SEPA.h:314
C08 acMaxResults[6]
Limit the number of results (0 = unlimited)
Definition FL4SEPA.h:313
C08 acDsnXmlO[F4S_DSNAMELEN]
DSN for XML outbound FLAMFILE of SEPA archive.
Definition FL4SEPA.h:312
C08 acDsnSig[F4S_DSNAMELEN]
DSN for signature FLAMFILE of SEPA archive.
Definition FL4SEPA.h:309
C08 acDsnTra[F4S_DSNAMELEN]
DSN for transaction FLAMFILE of SEPA archive.
Definition FL4SEPA.h:310
TuF4sNfTab unNfTab
Table containing the lookup requests.
Definition FL4SEPA.h:315
C08 acDsnXmlI[F4S_DSNAMELEN]
DSN for XML inbound FLAMFILE of SEPA archive.
Definition FL4SEPA.h:311
Input parameter structure to update records in or delete from an archive.
Definition FL4SEPA.h:348
C08 acDsnSig[F4S_DSNAMELEN]
DSN for signature FLAMFILE of SEPA archive.
Definition FL4SEPA.h:351
C08 acDsnTra[F4S_DSNAMELEN]
DSN for transaction FLAMFILE of SEPA archive.
Definition FL4SEPA.h:352
C08 acDsnUpd[F4S_DSNAMELEN]
Name of the FLAMFILE containing the records for update.
Definition FL4SEPA.h:350
C08 acDelete[1]
Set to 'Y' will delete the record, anything else will update the record.
Definition FL4SEPA.h:349
Overlay/Union for the different request structure arrays.
Definition FL4SEPA.h:279
TsF4sNfEntry50 asNfe50[F4S_MAXANZNF]
The version 2.3 request structure (identical to 2.2 but new signature format (FL5))
Definition FL4SEPA.h:283
TsF4sNfEntry23 asNfe23[F4S_MAXANZNF]
The version 2.3 request structure (identical to 2.2 but new behavior for update)
Definition FL4SEPA.h:282
TsF4sNfEntry22 asNfe22[F4S_MAXANZNF]
The version 2.2 request structure.
Definition FL4SEPA.h:281
TsF4sNfEntry21 asNfe21[F4S_MAXANZNF]
The version 2.1 request structure.
Definition FL4SEPA.h:280