1
|
DEFINE VARIABLE cTargetType AS CHARACTER NO-UNDO.
|
2
|
DEFINE VARIABLE cFile AS CHARACTER NO-UNDO.
|
3
|
DEFINE VARIABLE lFormatted AS LOGICAL NO-UNDO.
|
4
|
DEFINE VARIABLE cEncoding AS CHARACTER NO-UNDO.
|
5
|
DEFINE VARIABLE cSchemaLocation AS CHARACTER NO-UNDO.
|
6
|
DEFINE VARIABLE lWriteSchema AS LOGICAL NO-UNDO.
|
7
|
DEFINE VARIABLE lMinSchema AS LOGICAL NO-UNDO.
|
8
|
DEFINE VARIABLE lRetOK AS LOGICAL NO-UNDO.
|
9
|
|
10
|
DEFINE VARIABLE cSourceType AS CHARACTER NO-UNDO.
|
11
|
DEFINE VARIABLE cFile1 AS CHARACTER NO-UNDO.
|
12
|
DEFINE VARIABLE cReadMode AS CHARACTER NO-UNDO.
|
13
|
DEFINE VARIABLE cSchemaLocation1 AS CHARACTER NO-UNDO.
|
14
|
DEFINE VARIABLE lOverrideDefaultMapping AS LOGICAL NO-UNDO.
|
15
|
DEFINE VARIABLE cFieldTypeMapping AS CHARACTER NO-UNDO.
|
16
|
DEFINE VARIABLE cVerifySchemaMode AS CHARACTER NO-UNDO.
|
17
|
|
18
|
DEFINE TEMP-TABLE tt1 FIELD f1 AS INTEGER.
|
19
|
|
20
|
DEFINE DATASET dsTt1 FOR tt1.
|
21
|
|
22
|
PROCEDURE write-schema:
|
23
|
CREATE tt1. ASSIGN tt1.f1 = 1. RELEASE tt1.
|
24
|
ASSIGN
|
25
|
cTargetType = "file"
|
26
|
cFile = "dset.xml"
|
27
|
lFormatted = TRUE
|
28
|
cEncoding = ?
|
29
|
cSchemaLocation = ?
|
30
|
lWriteSchema = TRUE
|
31
|
lMinSchema = FALSE.
|
32
|
|
33
|
MESSAGE DATASET dsTt1:WRITE-XML(cTargetType, cFile, lFormatted, cEncoding, cSchemaLocation, lWriteSchema, lMinSchema).
|
34
|
END.
|
35
|
|
36
|
PROCEDURE read-schema:
|
37
|
ASSIGN
|
38
|
cSourceType = "file"
|
39
|
cFile1 = "dset.xml"
|
40
|
cReadMode = "EMPTY"
|
41
|
cSchemaLocation1 = ?
|
42
|
lOverrideDefaultMapping = TRUE
|
43
|
cFieldTypeMapping = ?
|
44
|
cVerifySchemaMode = ?.
|
45
|
|
46
|
DO ON ERROR UNDO, LEAVE:
|
47
|
lRetOK = DATASET dsTt1:READ-XML(cSourceType, cFile1, cReadMode, cSchemaLocation1, lOverrideDefaultMapping, cFieldTypeMapping, cVerifySchemaMode) NO-ERROR.
|
48
|
MESSAGE ERROR-STATUS:ERROR ERROR-STATUS:GET-MESSAGE(1).
|
49
|
END.
|
50
|
END.
|
51
|
|
52
|
// RUN write-schema.
|
53
|
RUN read-schema.
|