RFC_READ_TABLE Implementation - j5 - 28.0 - Administration & Configuration - Hexagon

j5 SAP PM Integration Configuration

Language
English
Product
j5
Search by Category
Administration & Configuration
j5 Version
2019

This section illustrates in more detail how the RFC_READ_TABLE reads are implemented in j5:

Import Work Orders, Operations and Notifications from SAP

#Retrieve all notifications modified since the last sync

read_table('VIQMEL', options=[{'TEXT': "AEDAT >= '20160101' AND ERDAT >= '20160101'"}],

fields=['QMNUM', 'QMTXT', 'QMART', 'PRIOK',

'AUFNR', 'TPLNR', 'ERNAM', 'ARTPR',

'QMDAT', 'MZEIT', 'STRMN', 'STRUR',

'LTRMN', 'LTRUR', 'AEDAT', 'AEZEIT',

'ARBPL', 'EQUNR', 'ERDAT', 'ERZEIT',

'TZONSO', 'ARBPLWERK', 'AENAM', 'SWERK',

'BEZDT', 'BEZUR'])

#Retrieve all notifications

read_table('VIQMEL', options=[{'TEXT': "BEZDT >= '20160101' AND BEZUR >= '120000'"},

{'TEXT': "AND QMZAB = '000000' AND QMDAB = '00000000'"}],

fields=['QMNUM', 'QMTXT', 'QMART', 'PRIOK',

'AUFNR', 'TPLNR', 'ERNAM', 'ARTPR',

'QMDAT', 'MZEIT', 'STRMN', 'STRUR',

'LTRMN', 'LTRUR', 'AEDAT', 'AEZEIT',

'ARBPL', 'EQUNR', 'ERDAT', 'ERZEIT',

'TZONSO', 'ARBPLWERK', 'AENAM', 'SWERK',

'BEZDT', 'BEZUR'])

#Retrieve a chunk of notifications when chunking the initial synchronization by date

read_table('VIQMEL', options=[{'TEXT': "((AEDAT >= '20160101' AND AEDAT <= '20160201') OR"},

{'TEXT': "(AEDAT = '00000000' AND ERDAT >= '20160101' AND ERDAT

<= '20160201'))"}],

fields=['QMNUM', 'QMTXT', 'QMART', 'PRIOK',

'AUFNR', 'TPLNR', 'ERNAM', 'ARTPR',

'QMDAT', 'MZEIT', 'STRMN', 'STRUR',

'LTRMN', 'LTRUR', 'AEDAT', 'AEZEIT',

'ARBPL', 'EQUNR', 'ERDAT', 'ERZEIT',

'TZONSO', 'ARBPLWERK', 'AENAM', 'SWERK',

'BEZDT', 'BEZUR'])

#Retrieve all notifications for a specific Maintenance Plant

read_table('VIQMEL', options=[{'TEXT': "SWERK EQ 'PLANT01' AND"},

{'TEXT': "BEZDT >= '20160101' AND BEZUR >= '120000'"},

{'TEXT': "AND QMZAB = '000000' AND QMDAB = '00000000'"}],

fields=['QMNUM', 'QMTXT', 'QMART', 'PRIOK',

'AUFNR', 'TPLNR', 'ERNAM', 'ARTPR',

'QMDAT', 'MZEIT', 'STRMN', 'STRUR',

'LTRMN', 'LTRUR', 'AEDAT', 'AEZEIT',

'LTRMN', 'LTRUR', 'AEDAT', 'AEZEIT',

'ARBPL', 'EQUNR', 'ERDAT', 'ERZEIT',

'TZONSO', 'ARBPLWERK', 'AENAM', 'SWERK',

'BEZDT', 'BEZUR'])

#Retrieve all notifications for a specific Maintenance Plant and for specific Notification

Types

read_table('VIQMEL', options=[{'TEXT': "(QMART EQ 'PM01' OR QMART EQ 'PM2') AND"},

{'TEXT': "SWERK EQ 'PLANT01' AND"},

{'TEXT': "BEZDT >= '20160101' AND BEZUR >= '120000'"},

{'TEXT': "AND QMZAB = '000000' AND QMDAB = '00000000'"}],

fields=['QMNUM', 'QMTXT', 'QMART', 'PRIOK',

'AUFNR', 'TPLNR', 'ERNAM', 'ARTPR',

'QMDAT', 'MZEIT', 'STRMN', 'STRUR',

'LTRMN', 'LTRUR', 'AEDAT', 'AEZEIT',

'ARBPL', 'EQUNR', 'ERDAT', 'ERZEIT',

'TZONSO', 'ARBPLWERK', 'AENAM', 'SWERK',

'BEZDT', 'BEZUR'])

#Retrieve a specific notification

read_table('VIQMEL', options=[{'TEXT': "QMNUM EQ '10002012'"],

fields=['QMNUM', 'QMTXT', 'QMART', 'PRIOK',

'AUFNR', 'TPLNR', 'ERNAM', 'ARTPR',

'QMDAT', 'MZEIT', 'STRMN', 'STRUR',

'LTRMN', 'LTRUR', 'AEDAT', 'AEZEIT',

'ARBPL', 'EQUNR', 'ERDAT', 'ERZEIT',

'TZONSO', 'ARBPLWERK', 'AENAM', 'SWERK',

'BEZDT', 'BEZUR'])

#Read all timezone information in SAP

read_table('TTZCU')

read_table('TTZZ')

read_table('TTZD')

read_table('TTZR')

read_table('TTZDF')

read_table('TTZDV')

#Used to get the default timezone for each user

read_table('USR03')

#Used to retrieve labels so we can display human readable text in some cases, e.g. equipment

types

read_table('T001W')

read_table('T356A_T')

read_table('TQ80_T')

read_table('T370U')

read_table('T370F_T')

#Used to get a list of equipment changed since the last sync

read_table('EQUI', options=[{'TEXT': "ERDAT >= '20160101' OR AEDAT >= '20160101'"}],

fields=['EQUNR'])

#Used to get a listing of the equipment segments

read_table('EQUZ', options=[{'TEXT': "DATAB <= SY-DATUM"},

{'TEXT': " AND HEQUI = ''"},

{'TEXT': " AND DATBI >= SY-DATUM"}],

fields=['MANDT', 'EQUNR', 'DATBI', 'EQLFN',

'ILOAN', 'HEQUI', 'AEDAT', 'IWERK'])

#Used to get a listing of the equipment segments from a list of those changed since the last

sync

read_table('EQUZ', options=[{'TEXT': "DATAB <= SY-DATUM"},

{'TEXT': " AND HEQUI = ''"},

{'TEXT': "AND EQUNR IN ('123','456','789')"}],

fields=['MANDT', 'EQUNR', 'DATBI', 'EQLFN',

'ILOAN', 'HEQUI', 'AEDAT', 'IWERK'])

#Used to get all functional locations related to equipment

read_table("ILOA", options=[{'TEXT': 'ILOAN IN ("123", "456")'}],

fields = ['MANDT', 'ILOAN', 'TPLNR', 'BEBER'])