New functions

TypeSchlüsselZusammenfassung_ENAuswirkungen_ENImplementierungsanweisungen_ENKey
Neue FunktionNew APP Purchasing (ME)This NOTE is used to integrate QPPD into the purchasing document.NOTE-3229
Neue Funktionsynchronization order data (head)synchronization order data header levelNOTE-3201
Neue FunktionMM: Plant-dependent QPPD objectsWith this NOTE, QPPD objects for a material can now also be created independently of the plant.NOTE-3195
Neue FunktionBRF Engine Version 3Version 3 of the processing of BRF+ function and its mapping offers the following improvements:

Support of all BRF+ data (units, date, timestamp..)
Mapping of multi grids and parameter tables 
Direct addressing via rule positions, context and object type
Support of deep BRF structures
Data content for the regulation header (e.g. regulation type or name) can be queried.
When using multiple function calls for an object type, the generated data is transferred to the successor.
Also included is an example BRF+ application: /SCT/QP_GEN
Activation via parameter BRF_ENGINE = 'V3' or direct call of method BRF_EXECUTE3 of the generation class.
Existing BRF+ rules must be checked
Use of appliction log only with Object /SCT/ and subobject BRF non persistence.
NOTE-3193
Neue FunktionECC documents extended by the object VBEP schedule line for the sales itemThe ECC functions are extended by the schedule lines of sales document items.
GET_VBEP and GET_VBEP_TAB are available in the class /SCT/QP_ECC.
The selection screen for ECC documents in the standard system has been extended to include the document category VBEP.    
NOTE-3155
Neue FunktionTOE: Context determination from variant configurationTOE can be used in the variant configuration. The determination of context-dependent characteristics is now supported.-NOTE-3054

Technical changes

TypeSchlüsselZusammenfassung_ENAuswirkungen_ENImplementierungsanweisungen_ENKey
Technische ÄnderungSynchronisation via VART-Classes for inbound and outbound data can be modifiednoneRedefinition of methods in classes
/SCT/QP_IF_SYNC~SYNC_FILL_BUFFER_OUTBOUND
/SCT/QP_IF_SYNC~SYNC_PROCESS_BUFFER_INBOUND
NOTE-3276
Technische ÄnderungSYNC_FDM: call submethod DO_CHANGE_VAL missingWith the method /SCT/QP_CL_SYNC_FDM->DO_CHANGE_VAL, an additional option was created to manipulate a VAL data record before the changes are applied.NOTE-3272
Technische ÄnderungBRF+ processing with mapping of structural elements in individual generation methodsFor the generation QPPD provides methods to generate element values via BRF+ functions. Thereby a mapping to the current object type and the structures of the QPPD object takes place.

For the use in customer-invidual programs individual BRF+ calls with transfer of import parameters can be made with this extension. The mapping of the element values is then done analogously.
user of method /SCT/QP_CL_BRF_PROCESS3->/SCT/QP_IF_BRF_PROCESS3~EXECUTENOTE-3245
Technische ÄnderungBRF+ Connection of multiple data Types of BRF+ with QPPDIf extended properties are used, the existing rules in the BRF+ must be adapted.Definition of the element with corresponding properties.
NOTE-3187
Technische ÄnderungTOOLS: Determine ASCII code / delete non-ASCII charactersThe new method GET_ASCII_FROM_CHAR enables the determination of the ASCII code of one character.
The new method DO_REMOVE_NON_ASCII deletes all non-ASCII characters from a string.
These methods can be used, for example, to filter the content of messages sent to old legacy systems.
NOTE-3166
Technische ÄnderungExtension of the synchronisation to include external data. Use for BAPI's or IDOC update to ECC documentsIn order to provide QPPD objects with link to ECC documents data additionally with data, these can be announced before the call.passed to the successor.
Also included is an example BRF+ application: /SCT/QP_GEN
Use Methods of classe /SCT/QP_CL_SYNC_ADD_DATA in customer reportsNOTE-3163
Technische ÄnderungGeneration sequence for textsThe generation sequence now follows the lexicographic order of the generation method nameNOTE-3160
Technische ÄnderungDATA: QVC-DATA to DB-DATAThe IF_DATA interface previously only had the method MAP_DATA_DB_TO_QVC for converting from the format /SCT/QP_S_DB_DATA to /SCT/QP_T_QVC_DATA or /SCT/QP_TS_QVC_DATA. With the new method /SCT/QP_IF_DATA~MAP_DATA_QVC_TO_DB it is now possible to carry out the reverse transformation.

The GET_DATA method now also returns ET_DB_DATA if this parameter was requested and only ET_QVC_DATA was filled by the service.
NOTE-3139
Technische ÄnderungAPPBUS available via FactoryThe APPBUS class is now available through the FACTORY.NOTE-3136
Technische ÄnderungFACTORY: Determination of instances when changing the scenarioIf the scenario is changed, the internal buffer of the factory is retained and incorrect instances are returned.Instances that are created via the FACTORY must not be buffered in static variables.NOTE-3135
Technische ÄnderungMAMBA value fieldsChanging fields in MAMBA has been harmonized with the BUS: MAMBA only changes those fields that are contained in /SCT/QP_S_VALUEFIELDS.If necessary, adapt structure /SCT/QP_S_VALUEFIELDS in order to change customer-specific value fields via BUS->CHANGE.NOTE-3134
Technische ÄnderungGlobal generationGlobal generation has been technically revised. Global generation was executed too often or executed when it was suppressed.NOTE-3130
Technische ÄnderungMM : Interface for class CL_MM_GUI In order to solve the dependencies between QPPD Core and APP MM, an Interface /SCT/QP_IF_MM_GUI will be used.NOTE-3119
Technische ÄnderungPost IDoc as an extensionIf the QPPD-IDOC is included as an extension in another basic type, programming had to be laborious in the past so that posting was possible.

The new method /SCT/QP_IF_IDOC->DO_INBOUND_IDOC_BY_DATA enables this. For this, the Z parent segment must be transferred as IS_DATA.
NOTE-3114
Technische ÄnderungSYNCMODEL field in / SCT / QP_TVART deletedThe SYNCMODEL field has been removed from the /SCT/QP_TVART table.NOTE-3093

Improvements

TypeSchlüsselZusammenfassung_ENAuswirkungen_ENImplementierungsanweisungen_ENKey
VerbesserungMAMBA_VIEW/ALV_GRID: too many flushGUI-Performance optimisationNOTE-3192
VerbesserungMamba : Performance LOOP ->FILTERPerformance improvement in MAMBA.NOTE-3190
VerbesserungMAMBA: Performance improvement uniqueness checkThe performance of the uniqueness check in MAMBA has been improved.NOTE-3128
VerbesserungBUS optimizationPerformance optimisation when export parameter "et_items" is not requestedNOTE-3118

Bugs

TypeSchlüsselZusammenfassung_ENAuswirkungen_ENImplementierungsanweisungen_ENKey
BugSelection von VARTen in APPBUS and ECC-VART partly with error When selecting nodes for an ECC GUID, partially wrong VARTs are read out for the ECC document depending on the existing data objects.NOTE-3283
BugBUS-error missing wenn processing a locked objectThe BUS did not always generate an error message when the processed object was locked from another user.NOTE-3273
BugVART-Instance should be cleared when reloading nodesWhen changes are rejected ( back to display mode without saving), the corresponding VART-Instance must be rebuilt.NOTE-3267
BugBRF+ Function call without return value generates error messages and aborts processing.For example, if a decision table has no return value then the generation for the object type was aborted.
The note converts the abort message into an information message. No error is generated. The subsequent functions are executed.
NOTE-3244
BugUpdate of LASTUPDATEIf due to very fast processing, a node is saved in the same second in which it was created or the current LASTUPDATE of the node corresponds to the current time, no new/different LASTUPDATE is set on the node when saving. This can lead to errors when reloading or when working with SHMO or other applications.NOTE-3203
BugTOE Default values are not generatedNOTE-3200
BugSD translationsTexts in the SD GUI were not translated correctlyNOTE-3198
BugVersioning: Checking for successor versions when deletingWhen deleting nodes that could not be versioned, a check was carried out to determine whether they have successor versions. This improvement avoids these queries.NOTE-3191
BugBRF+ Return Elements without the VALUE addition, do not return any valuesmissing valuesImplementation Note-3187NOTE-3189
BugBRF* Dump using elements with unitBRF+ Dump when using elements with unitsImplementation Note 3187NOTE-3188
BugA generated value is not transferred to MambaWhen generating values in MAMBA, no values were written back if MODEREF and values were specified at the same time.NOTE-3185
BugRFC Service faulty data transmissionWhen connecting via RFC, instances of classes are only created once via the systems. For singleton instances, the constructor is therefore only called once.  If different system settings are available, only data from the source system is used. This can lead to different incorrect data transmissions. NOTE-3184
BugTOE Text determinationThe short text associated with the value was always in logon-language, even if another language was requestedNOTE-3183
BugSplitter data transferIf data was entered on an object type but not explicitly confirmed with ENTER and then another item type was selected in the tree, the data was not transferred to the object type.NOTE-3182
BugMAMBA: Sort numeric, horizontal fieldsSorting numeric fields from the horizontal element was not possible.NOTE-3181
BugChanges in view /sct/qp_mm_tcoppf can not be saved in S4/HANAAffects S4 / HANA and the APP MM. A short dump occurs when data is maintained in the C72 (data for copy control).NOTE-3180
BugF2 function "edit values"When editing field contents (value fields for elements) the F2 key can now be used to select the field and to position the cursor at the end of the value.NOTE-3179
BugDeletion of info records does not take into account the deletion of position nodesnfo record deletion based on position data has not been called yet. Info records for position nodes are retained even though they are no longer valid.  NOTE-3178
BugConverting value 0 from MM into INCHAn error occurred converting values when the value is 0.NOTE-3177
BugBUS: Syntax check for element valuesInternal fields were not saved correctly when creating elements via the BUS.NOTE-3176
BugWhen sorting the data to be saved, the TYPE field is missing for cs_db_data-num.No duplicate keys when saving the data if "NUM" is activeNOTE-3175
BugTOE buffer for global generationIf the TOE is used in an object and the GG is executed, the TOE collects MAMBA lines to be checked. These are processed according to the GG. However, if nodes have been deleted during the GG for which the TOE has noted MAMBA lines to be checked, a shortdump occurs.NOTE-3174
BugSHMO: deleted nodesIf the SHMO is used for an object and nodes are deleted, the SHMO data service has incorrectly returned the node that has already been deleted from the database.NOTE-3173
BugName generation: Only capitalization for constant valuesThe name generation only worked with capital letters when working with constants.NOTE-3172
BugTECHM: Structure / SCT / QP_SV_TECHM_GRID uses obsolete search helpAffects S/4 HANA and the object type TECHM. The structure /SCT/QP_SV_TECHM_GRID creates a short dump because of the search help used.NOTE-3171
BugObjects marked as "changed" unnecessarilyObjects are unnecessarily marked as "changed" when they are loaded.NOTE-3170
BugTOE: Short dump if the domain does not existIf an element uses a domain as a search help and this domain does not exist, a short dump is created.NOTE-3169
BugSYNC of VBAK-fields on QPPD-position ObjectHeader data that was maintained on the VBAK-level was not always copied on QPPD-Objekt attached to VBAPNOTE-3168
BugIDOC PMK segmentQPPD distribution via IDOC: Adjustment of the /SCT/QP_QVC_PMK_2V332 segment. Segment /SCT/QP_QVC_PMK_3_V332 deleted.Z-IDOC extensions that include the QPPD standard IDOC must be adapted. Z-IDOC extensions of the QPPD standard IDOC are not affected.NOTE-3167
BugStatus change via dropdown menu on the STATUS object typeIf the status was changed via the drop-down menu on the STATUS object type, QPPD internal functions according to MVC were bypassed.NOTE-3165
BugCatch exceptions when starting QPPDExceptions were not correctly caught by the QPPD when it started and caused a short dump.NOTE-3164
BugMAMBA: Items were not deletedWhen, on the same object type, data is simultaneously changed and deleted, the deletion may be omitted.NOTE-3162
BugInstantiation of VART classesInstances for VART classes were not determined in the event of an error.NOTE-3161
BugWrong error message for external lockIf an object is locked, the text of the error message was sometimes generated incorrectly.NOTE-3159
BugMAMBA_VIEW: Search-help on not editable fieldsIt was possible to use the search help to enter a value in a non-editable field.NOTE-3158
BugMAMBA STATELM = R for column elementsIf a conversion error has occurred, the status (STATELEM) for dynamic elements has not always been set correctly.NOTE-3157
BugTOE Conversion of specification to search help regulation types The search help for specification types represents VNR numbers with leading zeros.NOTE-3154
BugPrograms for reorganising and updating VNR faultyThe programmes /SCT/QP_UPDATE_VNR and /SCT/QP_REORG_VNR have not always updated all tables.NOTE-3153
BugCatching exceptions during global generationUnder certain circumstances some error messages will be lost during global generationNOTE-3151
BugPP: missing BOM in plan order and MRP runThe QPPD BOM explosion is not called. Missing material and component quantityNOTE-3150
BugDeletion from BOM-NodesIf original nodes are deleted, all BOM usages must also be deleted.NOTE-3149
BugGUI drag & drop with multiple nodesIf several nodes are dropped using drag & drop and at least 2 nodes use the same reference, a DUMP happens.NOTE-3148
BugSearch help for TVBOCK not availableSearch help for TVBOCK not availableNOTE-3147
BugAPPBUS->GET_LINKS_FOR_DOCS: missing results If not all QPPD objects for an ECC document have been loaded in the memory, then not all relations to an ECC document have always been returnedNOTE-3146
BugWhen transferring data via RFC, child nodes are truncatedWhen transferring data via RFC, child nodes are truncated in target systemNOTE-3145
BugWorkmode changed too oftenThese unwanted workmode changes have a negative impact on performance and can even generate incorrect results in the TOE context check.NOTE-3144
BugField ALTZEUGEINH not completely supportedThe new field ALTZEUGEINH was not 100% supportedNOTE-3143
Bugthe VART instance should be freed when the VART will be freedUnder some circumstances, the VART instance delivers wrong data when the VART has been unloaded from memory and reloaded afterwardsNOTE-3142
BugDeletion of sales order position causes dump.Wenn several sync models are active, deleting a sales order position can lead to dump because some objects are already deleted while the 2nd sync model is processed,NOTE-3141
BugTOE : Select VC-valuesNOTE-3140
BugROWGRP is not always properly setWhile copying Objecttypes with different element groups ( for example, the source data has no dyn. columns, the target data base some ), then temporary ROWGRP have to be created.
the new ROWGRP was however not copied in all other internal structures.
NOTE-3133
BugContext menu during multiple selection in main-treeContext menu for multiple selection in the treeNOTE-3132
BugLoss of data when deleting nodes with primary referencesIf a node with a primary reference is deleted and the primary reference is a node from its own object, then this node is erroneously deleted as well.NOTE-3129
BugSYNC_SD correction for Note 1834 : unwanted lines in FDM Under certain circumstances, unwanted lines appear in the fast data maintenance screen for the sales order. NOTE-3127
BugInfo table creation with fields from sales documents missingWhen using the class /SCT/QP_CL_INFO for updating the info tables and using the key fields VBELN and POSNR from the sales and distribution document, the assignment is made via the VERT-VNANME = CUOBJ number of the sales and distribution document. With this enhancement, this assignment is created using the document link class $ECC. Additionally, schedule lines of the sales document can be used.Only relevant when using the /SCT/QP_CL_INFO class and info tables with VBELN and POSNR fields. Overdefinition do_map_val_to_structure in the Z info class and and production of the commented out program parts with the note from release 3.20NOTE-3126
BugTOE _ON_VART no consideration of ROWGRP for multigridNOTE-3125
BugSynchronisation transfers no unitsWhen the sales order item of the sales unit is synchronized, the unit is not transferred to the requirement specification.NOTE-3124
BugDetection of nodes in the model with duplicate name returns wrong nodeWrong search of nodes in case of duplicate name assignment. The case occurs when ECC-Link is used to link multiple documents that have the same name. NOTE-3123
BugCONV: Negative FLOAT valuesIf the conversion method is of the "number" type and a negative value is to be converted, then the additionally calculated FLOAT value was incorrectly returned as positive during the conversion DB_TO_OUT.NOTE-3122
BugCHGDOC: Read VAL values from change documentsReading the VAL values from the change documents did not work properly.NOTE-3121
BugAction Log: ReorganiseThe reorganization of the Action Log using the Report Log /SCT/QP_DEL_AL does not work correctly if the deletion is done using
a) TRUNCATE or
b) via selection options left empty
should be executed.
Existing jobs for reorganizing the action log must be revised.NOTE-3120
BugTOE: Endless loop within context-check for elements with blank valuesIf an element contains a context check and the content is empty, QPPD in an endless loop tries to find the value.  NOTE-3117
BugFlags in VAL/PMK are not transfered if changed by BUSFlag fields in VAL and PMK now get correctly transfered by using BUS methods if other valuefields are initial.NOTE-3116