19.2.11

SAP Note 22788 - Batch input: Creating material master data (class.)

Symptom:

You want to import classification data, that is, the allocation of an object (material) to a class and the valuation of the characteristics, by means of batch input with transaction MM01 (Create Material). This causes an error. The batch input session cannot be executed.

Cause and prerequisites

Classification data cannot be imported into the system via batch input with transaction MM01. MM01 cannot be run in batch input mode for this data.

Solution
You have to write batch input sessions for the corresponding class transactions (for example CL20).

Additional key words

message 00349, message 00344, SAPLCLFM, 0500

SAP Note 22787 - MD04: Branching to scheduled quantity in SD

Symptom:

If in MD04 you branch to a scheduling agreement item of sales and distribution via 'Environment -> Display element', the system always displays the first entered or selected item.

Cause and prerequisites

Incorrect entries in table T457C.

Solution
The additional data in the following lines must be changed:
1) MD01, VE, A, VA33; Additional data; old entry: VL, MDPS-DELPS; new entry: LPN, MDPS-DELNR; additional entry: VPO, MDPS-DELPS
2) MD01, VE, V, VA32; Additional data; old entry: VL, MDPS-DELPS; new entry: LPN, MDPS-DELNR; additional entry: VPO, MDPS-DELPS

The scheduling agreement number is transferred correctly with the new entry and the corresponding item is selected by the additional entry.

SAP Note 22781 - Exchange rate in accounting, exchange rate type

Symptom:

Problem A:
If a customer billing document is transferred to Accounting, the exchange rate for Accounting (field VBRK-KURRF) is always determined with type "M" even though a different exchange rate type is maintained in the customer master record.

Problem B:
If a billing document for intercompany billing is transferred to Accounting, the exchange rate for Accounting (VBRK-KURRF) as well as the pricing exchange rate (VBRP-KURSK) are determined with the exchange rate type from the customer master record. However, exchange rate type "M" should be used.

Variant B1)
With this variant, both exchange rates (VBRK-KURRF and VBRP-KURSK) shall be determined with exchange rate type 'M'.

Variant B2)
With this variant, the exchange rate for Accounting (VBRK-KURRF) only shall be determined with exchange rate type 'M'.

Problem C:
As of Release 3.0, there is a "pricing exchange rate" indicator in the copying control for billing documents. If this indicator is set, the pricing exchange rate will always be determined with exchange rate type "M", even if a different exchange rate type is entered in the customer master.

Other terms

VF01, VF02, VF04
VBRK, KURRF, CPKUR
Exchange rate for RF postings

Reason and Prerequisites

This is the standard system behaviour.
The exchange rate type in the customer master has two functions:

    1. Converting conditions from local currency into the document currency
    2. Determining the exchange rate for Accounting in the case of intercompany billing
Solution
Problem A:
**********

If you add the following data transfer routine, the exchange rate type in the customer master record is also used for customer billing documents in order to determine the exchange rate for Accounting.

However, you should consider the following restrictions:
This modification is not possible in case the alternative exchange rate type and exchange rate type "M" have different relations. The AC interface does not provide the option of passing an alternative exchange rate type.
A subsequent change of the billing date by means of the "Change billing document" function (VF02) does not cause a redetermination of the exchange rate for Accounting (field VBRK-KURRF) since the "ID: Exchange rate setting" (field VBRK-CPKUR) is set by the following routine. Otherwise, a redetermination of the exchange rate would be performed with exchange rate type "M" again. Therefore, you can influence the exchange rate subsequently only by cancelling the billing document and then bill again with suitable default data.

You can assign the data transfer routine in SD Customizing by choosing 'Sales and Distribution -> Billing -> Billing documents - Maintain copying control for billing documents'.
If a standard transfer routine is entered (no. < 600) in the "Data transfer" field, you have to create a new data transfer routine which contains the source code of the existing routine and the source code given below.
Otherwise, the existing routine can be extended. You have to check whether the existing data routine is used several times. You should create a new routine here as well, if necessary.
The data transfer routine for the billing document is maintained with Transaction VOFM in client 000 by choosing "Data transfer -> Billing documents".
Refer to the notes in the IMG, section "System Modifications".

Extend the data transfer routine as follows:

TABLES: T001. <<<<<<<<<<<< if not defined yet

FORM DATEN_KOPIEREN_6nn.
.
.
IF T001-BUKRS NE VBRK-BUKRS.
SELECT SINGLE * FROM T001 WHERE BUKRS = VBRK-BUKRS.
ENDIF.
* get new exchange rate from table TCUR
IF VBRK-WAERK NE T001-WAERS AND VBRK-KURST NE SPACE.
CALL FUNCTION 'READ_EXCHANGE_RATE'
EXPORTING DATE = VBRK-FKDAT
FOREIGN_CURRENCY = VBRK-WAERK
LOCAL_CURRENCY = T001-WAERS
TYPE_OF_RATE = VBRK-KURST
IMPORTING EXCHANGE_RATE = VBRK-KURRF
EXCEPTIONS NO_RATE_FOUND = 1.
IF SY-SUBRC NE 0.
VBRK-KURRF = 0.
else.
vbrk-cpkur = 'X'.
ENDIF.
ENDIF.



Problem B1:
***********

Proceed as described for (A). The data transfer routine to be created looks as follows:
TABLES: T001. <<<<<<<<<<<< if not yet defined

FORM DATEN_KOPIEREN_6nn.
.
.
IF T001-BUKRS NE VBRK-BUKRS.
SELECT SINGLE * FROM T001 WHERE BUKRS = VBRK-BUKRS.
ENDIF.
* get new exchange rate from table TCUR
IF VBRK-WAERK NE T001-WAERS AND VBRK-KURST NE SPACE.
VBRK-KURRF_DAT = VBRK-FKDAT.
CALL FUNCTION 'READ_EXCHANGE_RATE'
EXPORTING DATE = VBRK-FKDAT
FOREIGN_CURRENCY = VBRK-WAERK
LOCAL_CURRENCY = T001-WAERS
IMPORTING EXCHANGE_RATE = VBRK-KURRF
EXCEPTIONS NO_RATE_FOUND = 1.
IF SY-SUBRC NE 0.
VBRK-KURRF = 0.
ENDIF.
ENDIF.


Assign this data transport routine to the document flow for intercompany billing.

Problem B2):
************

Please proceed as described for A). The transport routine to be generated reads as follows:
TABLES: T001. <<<<<<<<<<<< if not yet defined

FORM DATEN_KOPIEREN_6nn.
.
.
IF T001-BUKRS NE VBRK-BUKRS.
SELECT SINGLE * FROM T001 WHERE BUKRS = VBRK-BUKRS.
ENDIF.
* get new exchange rate from table TCUR for VBRK-KURRF with KURST=M
IF VBRK-WAERK NE T001-WAERS AND VBRK-KURST NE SPACE.
VBRK-KURRF_DAT = VBRK-FKDAT.
CALL FUNCTION 'READ_EXCHANGE_RATE'
EXPORTING DATE = VBRK-FKDAT
FOREIGN_CURRENCY = VBRK-WAERK
LOCAL_CURRENCY = T001-WAERS
IMPORTING EXCHANGE_RATE = VBRK-KURRF
EXCEPTIONS NO_RATE_FOUND = 1.
IF SY-SUBRC NE 0.
VBRK-KURRF = 0.
ENDIF.
* get new exchange rate from table TCUR for VBRP-KURSK
DATA: KURSTYP LIKE VBRK-KURST.
KURSTYP = VBRK-KURST.
IF KURSTYP IS INITIAL.
KURSTYP = 'M'.
ENDIF.
VBRP-KURSK_DAT = VBRK-FKDAT.
CALL FUNCTION 'READ_EXCHANGE_RATE'
EXPORTING
DATE = VBRK-FKDAT
FOREIGN_CURRENCY = VBRK-WAERK
LOCAL_CURRENCY = T001-WAERS
TYPE_OF_RATE = KURSTYP
IMPORTING EXCHANGE_RATE = VBRP-KURSK
EXCEPTIONS NO_RATE_FOUND = 1.
IF SY-SUBRC NE 0.
VBRP-KURSK = 0.
ENDIF.
ENDIF.


Assign this data transport routine to the document flow for intercompany billing.


Addition to A and B:
********************

If you also want to apply the default data functions (for the billing date) to the situations in billing described above, you have to enhance your copying requirement (at the item level) as well.
You can also assign the copying requirement in SD Customizing by choosing 'Sales and Distribution -> Billing -> Billing documents - Maintain copying control for billing documents'.
If a standard copying requirement is entered (no. < 600) in the "Copying requirement" field, you have to create a new copying requirement that contains the source code of the existing routine and the source code given below.
Otherwise, the existing routine can be extended. You have to check whether the existing data routine is used several times. You should create a new routine here as well, if necessary.
The copy requirements for the billing document are maintained with Transaction VOFM in client 000 by choosing "Copying requirements -> Billing documents".
Refer to the notes in the IMG, section "System Modifications".

Extend the copying requirement as follows:

FORM BEDINGUNG_PRUEFEN_6nn
.
.
* Vorgabedaten auf jeden Fall übernehmen <<< insert
IF KOM-FKDAT NE 0. <<< insert
VBRK-FKDAT = KOM-FKDAT. <<< insert
ENDIF. <<< insert
ENDFORM.
*eject


Problem C:
**********

Correction in program LV60AF0V. The correction is in the standard system as of Release 3.1.
FORM VBRK_VBRP_DATENTRANSPORT USING TS_SUBRC.
...
* Preisfindungskurs der Position ermitteln
IF VBRP-KURSK = 0.
VBRP-KURSK = VBRK-KURRF.
ENDIF.
IF TVCPF-PFKUR NE SPACE AND TVCPF-KNPRS CA 'ABCG'. <<<<<<< delete
IF TVCPF-PFKUR NE SPACE. <<<<<<< insert
DATA: KFTYP_DAT LIKE SY-DATUM.
...
IF NOT KFTYP_DAT IS INITIAL.
CALL FUNCTION 'READ_EXCHANGE_RATE'
EXPORTING
DATE = KFTYP_DAT
FOREIGN_CURRENCY = VBRK-WAERK
LOCAL_CURRENCY = T001-WAERS
TYPE_OF_RATE = VBRK-KURST <<<<<<<<<< insert
IMPORTING
EXCHANGE_RATE = VBRP-KURSK
EXCEPTIONS
NO_RATE_FOUND = 1.

SAP Note 22773 - F110 - Post office instead of bank is selected

Symptom:

The payment program selects a postal giro office of the business partner for a payment method which is not indicated as postal giro procedure although there is also a bank entered in the master record.
Key words: SAPf110S, F110, T042Z, BNKA.

Cause and prerequisites

The postal giro office is indeed selected if 'Postal giro/postal check' is marked in the payment method, however, such a selection can only be made via the bank group optimization.

Solution
Activate the optimization according to bank groups in the payment method in question (transaction FBZP, payment methods in the company code).
Classify the banks that are not yet classified with 'B' and the postal giro offices with 'P'. For an automatic classification, you can use the program given below:
REPORT ZFBNKA00.
TABLES BNKA.

SELECT-OPTIONS:
BANKLAND FOR BNKA-BANKS OBLIGATORY,
BANKKEY FOR BNKA-BANKL.
PARAMETERS:
TEST LIKE RFPDO-F040TEST DEFAULT 'X'.

UPDATE BNKA
SET BGRUP = 'P'
WHERE BANKS IN BANKLAND
AND BANKL IN BANKKEY
AND BGRUP EQ SPACE
AND XPGRO EQ 'X'.
WRITE: / SY-DBCNT, 'postal giro institutions classified'.

UPDATE BNKA
SET BGRUP = 'B'
WHERE BANKS IN BANKLAND
AND BANKL IN BANKKEY
AND BGRUP EQ SPACE
AND XPGRO EQ SPACE.
WRITE: / SY-DBCNT, 'banks classified'.

IF TEST NE SPACE.
WRITE: /13 'T e s t'.
ROLLBACK WORK.
ENDIF.

SAP Note 22772 - SAPF100: Account name is printed out too often

Symptom:

If you select the 'Output per reconciliation account' as valuation method, all customers and vendor numbers are printed as well as some address which is always repeated.

Cause and prerequisites

Program error.

Solution
Make the following changes in SAPF100: form write_collect.
...
* if an-kz = '0'. "<< if an-kz = '0' and vd-stufe le '1'. "<<...

SAP Note 22763 - Validation deletion cancels with GB134

Symptom:

A validation was created and assigned to a company code (transaction OB28). If the company code is deleted, the validation cannot be deleted afterwards. Error message is displayed GB134.
Key word: GGB0, substitution, validation, rule

Reason and Prerequisites

The usage list for validations is not updated automatically after the deletion of a company code.

Solution
Start program RGUGBR00. Select the parameter 'Generate validation usage' on the selection screen and execute the program. You can then delete validations that are no longer used.
The same procedure also applies to substitutions and rules. However, you have to select the corresponding parameters for substitution or rule usage on the selection screen.

SAP Note 22759 - Results analysis for order/projects: Message KJ220

Symptom:

When calculating the work in process or the results analysis, the results analysis is not calculated for an order or a project because of an error with message KJ220: 'Reserves for unrealized costs cannot be apportioned to the line IDs'.

Cause and prerequisites

The calculated reserves for unrealized costs are to be apportioned to the line IDs. This is achieved with equivalence numbers. Equivalence numbers can, for example, be planned costs, actual costs, apportionment numbers or the difference of planned costs minus actual costs.
Example: In Customizing, you have selected the equivalence numbers 'Planned costs minus actual costs' as a method of apportionment. For a cost object to be accrued, the total of planned costs for all line IDs equals the total of actual costs for all line IDs. This can happen by chance for one or the other cost object. In this case, the program cannot apportion the reserves to the line IDs by means of the selected equivalence numbers.

Solution
In Customizung for the calculation of imputed costs or results analysis, you set for the valuation methods which equivalence numbers are to be used by the program. If you activate the function 'Change apportionment', the program then automatically searches for another method of apportionment if the apportionment cannot be made with the preset equivalence number. In this case, the system tries to apportion the reserves by means of apportionment numbers.
If you do not want to use this automatic function, you have to use a different method of apportionment for the cost objects in question and perhaps create your own results analysis key.

SAP Note 22748 - System log: "Operating system call sendto failed"

Symptom:

The system log contains the following message for every transaction:
"Operating system call sendto failed, error no. 13"
Similar messages appear in the developer trace files dev_disp and dev_w ( is the number of the corresponding work process).

The above error message is usually associated with large drops in performance.

Cause and prerequisites

The error message is generated by c module nixxi.c. According to the operating system header file /usr/include/sys/errno.h, errno=13 (EACCES) means "Permission denied".

Search the /etc/hosts file to find the cause of the error message. Usually, the entry
127.0.0.1 localhost loopback
does not exist or is not defined properly.

Solution
Add the missing "localhost" entry to system file /etc/hosts:
127.0.0.1 localhost loopback

IMPORTANT: Even when the "localhost" entry is obviously there, the above error message can appear when the corresponding line in /etc/hosts cannot be read by the R/3 kernel. This can occur when the /etc/hosts file was modified using an editor that added additional, "invisible" characters (reverse line feed ESC-7, carriage return ESC-13, etc.).

SAP Note 22747 - Setting up the client for Workflows

Symptom:

Workflow cannot be started. Message WL404 displayed when a workflow is started directly in transaction SWUS. This only occurs in the FCS release, not in release 3.0A or later.

Cause and prerequisites

The client has not yet been setup for workflows.

Solution
Before using workflows in a new client you must configure the number range for object SWW_WIID. Failure to do this will result in error message WL404 being displayed whenever an attempt is made to start a workflow.
To configure the number range start transaction SWUW. Inspect the number range to see if interval '01' has already been created. If it has not, create the interval '01' with the maximum range possible. Do not check the external-flag checkbox.
After you have saved the changes you should check that the workflows you intend to use have been activated and that the event-coupling is active too.

SAP Note 22736 - GR reversal for SC order: Qty proposal for component

Symptom:

Key word: Subcontracting
During a reversal or return delivery of a goods receipt for a subcontract order (with transaction MB01), the quantity proposed by the system on the item selection screen is overwritten by the user. However, the subsequent quantity proposal of the system for the "material to be provided" items (components) corresponds to the originally proposed quantity of the reversal of the goods receipt (or return delivery). A proposal with the corrected quantity would have been correct though.

Cause and prerequisites

Program error.

Solution
Please make the following correction in routine LOHNBEARBEITUNG of report MM07MFL0:
FORM LOHNBEARBEITUNG.

CHECK OVM07M-PSTYP = 3 AND AKTYP = H AND NOT OVM07M-KZWES = S.
DATA: WEMNG LIKE XEKPO-WEMNG. CLEAR WEMNG.
* PERFORM LEKPO IN PROGRAM SAPFM07M USING OMSEG-MATNR <--- delete
* OMSEG-WERKS <--- delete
PERFORM LEKPO IN PROGRAM SAPFM07M USING SPACE <--- new
SPACE <--- new
SPACE
SPACE
SPACE
SPACE
SPACE
SPACE
SPACE
SPACE
OMSEG-EBELN
...

SAP Note 22735 - List of origins AM: Incorr. down payment processing

Symptom:

The list of origins for asset transactions showed the bank account posted to during the down payment instead of the vendor as the origin of the down payments on assets under construction.

Key words: RAHERK01, AuC, down payment clearing, plausibility

Cause and prerequisites

Insufficient program.

Solution
Please implement the following preliminary correction in program RAHERK01:
:
:

FORM HERKUNFT_ERMITTELN.

:
:

* FI-Beleg lesen.
CHECK L_FOUND EQ OFF.
SELECT * FROM BSEG INTO TABLE XBSEG
WHERE BUKRS EQ ANLAV-BUKRS
AND BELNR EQ ANEPV-BELNR
AND GJAHR EQ ANEPV-GJAHR
ORDER BY PRIMARY KEY.
* 1. Fall: Genau eine Gegenbuchungszeile.
IF SY-DBCNT EQ 2.
LOOP AT XBSEG
WHERE BUZEI NE ANEPV-BUZEI.
L_FOUND = ON.
EXIT.
ENDLOOP.
* 2. Fall: Mehrere Gegenbuchungszeilen.
ELSE.
* Buchungszeile die zum ANEPV gehört in *BSEG bereitstellen.
LOOP AT XBSEG
WHERE BUZEI EQ ANEPV-BUZEI.
MOVE XBSEG TO *BSEG.
EXIT.
ENDLOOP.
LOOP AT XBSEG <<< INSERT
WHERE KOART EQ 'K' <<< INSERT
AND NOT UMSKZ IS INITIAL <<< INSERT
AND ANLN1 EQ *BSEG-ANLN1 <<< INSERT
AND ANLN2 EQ *BSEG-ANLN2. <<< INSERT
POST-HKTYP = TEXT-T06. <<< INSERT
WRITE XBSEG-LIFNR TO POST-HKOBJ. <<< INSERT
L_FOUND = ON. <<< INSERT
ENDLOOP. <<< INSERT
CHECK L_FOUND EQ OFF. <<< INSERT
L_DMBTR_ANL = *BSEG-DMBTR + *BSEG-MWSTS.

:
:

ENDFORM.

:
:

SAP Note 22733 - Canc. in SAPLV61A with field overflow XKOMV-KDIFF

Symptom:

Field overflow in field XKOMV-KDIFF in program SAPLV61A

Cause and prerequisites

Between the order entry and the order modification, the pricing procedure was changed to the effect that, for example, the value-added tax condition got a new level number and, as a result, there are items with different level number for this condition.
You can recognize this by the fact that this condition is displayed twice in the header condition screen of the sales order.

Solution
In this case, you can change the ship-to-party in the header partner screen and then change it back again. As a result, the taxes are recalculated and the error disappears.
If this does not work, you have to carry out a new pricing for the document.

SAP Note 22713 - Problem: Material Forecast

Symptom:

Different forecast values for current and following period

Cause and prerequisites

It really should be like that, everything else IS WRONG

Solution
The forecast for the current period and the following period use
different consumption data.

The forecast of the current period uses the consumption data UP TO THE END of the LAST period.

The forecast for the next period uses IN ADDITION the consumption data
of the CURRENT PERIOD. This makes sense if the current
period is almost over and you expect little change in the consumption
of the current period.

If you think about it, if the values were the same, why would you want
to do a forecast for the following period? You could simply take
the forecast for the current period and read the forecasted values
for the following periods. There may be more than just one forecasted
periods for forecast dates in both current and next period.

SAP Note 22712 - Error FZ336 during automatic payment run

Symptom:

Key word: FZ336, F110, SAPF110S
The log of the automatic payment run displays the following error message FZ336 for foreign currency items: 'Incomplete exchange rate difference accounts for chart of accounts & account & currency &.'

Cause and prerequisites

The account determination for OI exchange rate differences does not contain any balance sheet adjustment account. However, this is needed for the foreign currency valuation of open items.

Solution
Please specify the account for the balance sheet adjustment in the account determination for OI exchange rate differences.

Menu path:

Configuration menu Financial Accounting -> Closing -> Balance sheet preparation -> Foreign currency valuation -> Automatic posting -> Transaction KDF (exchange rate difference for open items) -> Chart of accounts -> Details -> Specify account for balance sheet adjustment.

SAP Note 22708 - Foreign key check is incorrect for some data types

Symptom:

The check of foreign key relationships on screens is incorrect.

Cause and prerequisites

Fields were used for the foreign key, that are not character-like types such as INT1, INT2, INT4, DEC.

Solution
In the foreign key check on screens, only character-like data types can be used. If checks are needed on the user interface, you should use the Dictionary type NUMC for numeric data types.

SAP Note 22703 - Work breakdown structure graphics, deletion flag

Symptom:

Transactions in question: CJ01, CJ02, CJ03
Hierarchy graphic for the work breakdown structure.
WBS elements which have been marked for deletion are still displayed in the hierarchy graphic for the work breakdown structure (WBS), although the user chose (via the Extras menu option) not to have them displayed.

Cause and prerequisites

Program error.

Solution
Correction

SAP Note 22700 - GR reversal for SC order: Doc. balance unequal to 0

Symptom:

Keyword: Subcontracting
During the reversal or return delivery of a goods receipt for a subcontract order, error message (E-M7050): 'Balance not zero ...' is displayed.

Cause and prerequisites

This problem occurs under the following pre-conditions:
1. The subcontracting order item is not assigned.
2. The ordered material has price control V.
3. The entire valuated stock is affected by the GR reversal or the return delivery.
4. The value of the ordered material to be cancelled deviates from the current stock value.

Solution
Please make the following correction in routine WE01_V of report LMBGBFES:
IF MSEG-SHKZG = H AND ( MSEG-MENGE >= LBKUM OR BESTD > XMBEW-SALK3 ).
IF NOT VM07M-PSTYP = 3. " <--- P22K007049 neu
PRDIF = BESTD - XMBEW-SALK3.
ENDIF. " <--- P22K007049 neu
BESTD = XMBEW-SALK3.
ENDIF.

SAP Note 22683 - SAPcomm error E0130 when sending telefax

Symptom:

Only applies to SAPcomm versions prior to V3.0A1 !
Outbound telefax: Documents are picked up correctly by SAPcomm from the SAP System. However, the error message

E0130 cannot route ==/

is written to the SAPcomm log file Lyymmdd.SAP of the SAPcomm component "SAP" (see SAPcomm manual, chapter "SAPcomm Directory Tree", or the description of the SAPcomm utility program scmlog).

Cause and prerequisites

Error in program scmisap.

Solution
Corrected in SAPcomm version V3.0A1.

Immediate help:
Extend the SAPcomm configuration file sapcomm.cfg.
Add the following (dummy) SERVICE group to the PROGRAM SCB, ROUTING SAPCOMM group:
SERVICE FAX
TO-CHANNEL
END-SERVICE
Exit and restart SAPcomm.

SAP Note 22679 - SAPcomm: Error message in TEDCT "Permission denied"

Symptom:

Cancellation of the programs started by SAPcomm in the SAP System.
(SAPcomm previously logged on correctly to the SAP System.).

Entry in the SAP System log:
D0 001 SAPCOMM SAPcomm: Transmission error
Error E1880, message SK1 (no documentation available).

If "Debugging" is activated (table 164b), entry in TEDCT: "Permission denied"

Cause and prerequisites

The user name which SAPcomm uses to log on to the SAP System does not have the authorization S_SKOM_SRV.

Solution
Assign the profile S_SKOM_SRV to the SAPcomm user in question. The authorization S_SKOM_SRV is also assigned.

SAP Note 22667 - Discrepancy PIS - vendor/balances/business volumes

Symptom:

The invoice amounts in the Purchasing Information System do not match those from the balance display of the vendor.
(Accounting -> Financial Accounting -> Accounts payable -> Account -> Balances -> Sales/purchases)

Cause and prerequisites

The date of the update is different for these two analyses. In Financial Accounting, the update takes place on the posting date of the invoice, while in the Purchasing Information System, the purchase order date of the delivery schedule is relevant for the update.

Solution
You can create your own information structure which updates the invoice amount to the posting date of the invoice.

SAP Note 22657 - OVV1 -> Program: Customer-defined requirement

Symptom:

OVV1 Document flow, deliveries
You cannot always branch to the program for the copying requirement from the detail view of OVV1.
When a customer-defined copying requirement is involved, the wrong program is accessed.
Also see note nos. 22651 and 22661.

Cause and prerequisites

Customer-defined and SAP standard copying requirements defined using transaction VOFM are divided into different name ranges.

Solution
Program MSTTVCPL :

*----------------------------------------------------------------------*

DATA: BEGIN OF HT_WA.
INCLUDE STRUCTURE LV07B.
DATA: END OF HT_WA.

*---------------------------------------------------------------------*

DATA: ST_GRNR(3) TYPE N VALUE 599. <<<<<<<< Change

*eject

.........

*---------------------------------------------------------------------*
* FORM INCLUDES_BEARBEITEN *
*---------------------------------------------------------------------*

FORM INCLUDES_BEARBEITEN.

CASE CURSOR-FELD.

* Aufruf der ABAP-Routine von einem Nummernfeld aus

WHEN 'TVCPL-AUBED'.
CHECK NOT TVCPL-AUBED IS INITIAL.
IF TVCPL-AUBED > ST_GRNR. <<<<<<< Change
INCLUDE_NAME-POOL = 'RV50B'. <<<<<<< Change
ELSE. <<<<<<< Change
INCLUDE_NAME-POOL = 'FV50B'. <<<<<<< Change
ENDIF. <<<<<<< Change
INCLUDE_NAME-NUMMER = TVCPL-AUBED.
INCLUDE_FORM-NAME = 'FORM BEDINGUNG_PRUEFEN_'.
INCLUDE_FORM-NUMMER = TVCPL-AUBED.

WHEN 'TVCPL-AUZUS'.
CHECK NOT TVCPL-AUZUS IS INITIAL.
IF TVCPL-AUZUS > ST_GRNR. <<<<<<< Change
INCLUDE_NAME-POOL = 'RV50B'. <<<<<<< Change
ELSE. <<<<<<< Change
INCLUDE_NAME-POOL = 'FV50B'. <<<<<<< Change
ENDIF. <<<<<<< Change
INCLUDE_NAME-NUMMER = TVCPL-AUZUS.
INCLUDE_FORM-NAME = 'FORM BEDINGUNG_PRUEFEN_'.
INCLUDE_FORM-NUMMER = TVCPL-AUZUS.

WHEN 'TVCPL-ETBED'.
CHECK NOT TVCPL-ETBED IS INITIAL.
IF TVCPL-ETBED > ST_GRNR. <<<<<<< Change
INCLUDE_NAME-POOL = 'RV50B'. <<<<<<< Change
ELSE. <<<<<<< Change
INCLUDE_NAME-POOL = 'FV50B'. <<<<<<< Change
ENDIF. <<<<<<< Change
INCLUDE_NAME-NUMMER = TVCPL-ETBED.
INCLUDE_FORM-NAME = 'FORM BEDINGUNG_PRUEFEN_'.
INCLUDE_FORM-NUMMER = TVCPL-ETBED.

WHEN 'TVCPL-GRUAK'.
CHECK NOT TVCPL-GRUAK IS INITIAL.
IF TVCPL-GRUAK > ST_GRNR. <<<<<<< Change
INCLUDE_NAME-POOL = 'RV50C'. <<<<<<< Change
ELSE. <<<<<<< Change
INCLUDE_NAME-POOL = 'FV50C'. <<<<<<< Change
ENDIF. <<<<<<< Change
INCLUDE_NAME-NUMMER = TVCPL-GRUAK.
INCLUDE_FORM-NAME = 'FORM DATEN_KOPIEREN_'.
INCLUDE_FORM-NUMMER = TVCPL-GRUAK.

WHEN 'TVCPL-GRUAP'.
CHECK NOT TVCPL-GRUAP IS INITIAL.
IF TVCPL-GRUAP > ST_GRNR. <<<<<<< Change
INCLUDE_NAME-POOL = 'RV50C'. <<<<<<< Change
ELSE. <<<<<<< Change
INCLUDE_NAME-POOL = 'FV50C'. <<<<<<< Change
ENDIF. <<<<<<< Change
INCLUDE_NAME-NUMMER = TVCPL-GRUAP.
INCLUDE_FORM-NAME = 'FORM DATEN_KOPIEREN_'.
INCLUDE_FORM-NUMMER = TVCPL-GRUAP.

WHEN 'TVCPL-GRUKD'.
CHECK NOT TVCPL-GRUKD IS INITIAL.
IF TVCPL-GRUKD > ST_GRNR. <<<<<<< Change
INCLUDE_NAME-POOL = 'RV50C'. <<<<<<< Change
ELSE. <<<<<<< Change
INCLUDE_NAME-POOL = 'FV50C'. <<<<<<< Change
ENDIF. <<<<<<< Change
INCLUDE_NAME-NUMMER = TVCPL-GRUKD.
INCLUDE_FORM-NAME = 'FORM DATEN_KOPIEREN_'.
INCLUDE_FORM-NUMMER = TVCPL-GRUKD.

WHEN 'TVCPL-GRUPA'.
CHECK NOT TVCPL-GRUPA IS INITIAL.
IF TVCPL-GRUPA > ST_GRNR. <<<<<<< Change
INCLUDE_NAME-POOL = 'RV50C'. <<<<<<< Change
ELSE. <<<<<<< Change
INCLUDE_NAME-POOL = 'FV50C'. <<<<<<< Change
ENDIF. <<<<<<< Change
INCLUDE_NAME-NUMMER = TVCPL-GRUPA.
INCLUDE_FORM-NAME = 'FORM DATEN_KOPIEREN_'.
INCLUDE_FORM-NUMMER = TVCPL-GRUPA.

* Aufruf der ABAP-Routine von einem Textfeld aus

WHEN 'WTEXT-BEDI1'.
CHECK NOT TVCPL-AUBED IS INITIAL.
IF TVCPL-AUBED > ST_GRNR. <<<<<<< Change
INCLUDE_NAME-POOL = 'RV50B'. <<<<<<< Change
ELSE. <<<<<<< Change
INCLUDE_NAME-POOL = 'FV50B'. <<<<<<< Change
ENDIF. <<<<<<< Change
INCLUDE_NAME-NUMMER = TVCPL-AUBED.
INCLUDE_FORM-NAME = 'FORM BEDINGUNG_PRUEFEN_'.
INCLUDE_FORM-NUMMER = TVCPL-AUBED.

WHEN 'WTEXT-BEDI2'.
CHECK NOT TVCPL-AUZUS IS INITIAL.
IF TVCPL-AUZUS > ST_GRNR. <<<<<<< Change
INCLUDE_NAME-POOL = 'RV50B'. <<<<<<< Change
ELSE. <<<<<<< Change
INCLUDE_NAME-POOL = 'FV50B'. <<<<<<< Change
ENDIF. <<<<<<< Change
INCLUDE_NAME-NUMMER = TVCPL-AUZUS.
INCLUDE_FORM-NAME = 'FORM BEDINGUNG_PRUEFEN_'.
INCLUDE_FORM-NUMMER = TVCPL-AUZUS.

WHEN 'WTEXT-BEDI3'.
CHECK NOT TVCPL-ETBED IS INITIAL.
IF TVCPL-ETBED > ST_GRNR. <<<<<<< Change
INCLUDE_NAME-POOL = 'RV50B'. <<<<<<< Change
ELSE. <<<<<<< Change
INCLUDE_NAME-POOL = 'FV50B'. <<<<<<< Change
ENDIF. <<<<<<< Change
INCLUDE_NAME-NUMMER = TVCPL-ETBED.
INCLUDE_FORM-NAME = 'FORM BEDINGUNG_PRUEFEN_'.
INCLUDE_FORM-NUMMER = TVCPL-ETBED.

WHEN 'WTEXT-VBAK'.
CHECK NOT TVCPL-GRUAK IS INITIAL.
IF TVCPL-GRUAK > ST_GRNR. <<<<<<< Change
INCLUDE_NAME-POOL = 'RV50C'. <<<<<<< Change
ELSE. <<<<<<< Change
INCLUDE_NAME-POOL = 'FV50C'. <<<<<<< Change
ENDIF. <<<<<<< Change
INCLUDE_NAME-NUMMER = TVCPL-GRUAK.
INCLUDE_FORM-NAME = 'FORM DATEN_KOPIEREN_'.
INCLUDE_FORM-NUMMER = TVCPL-GRUAK.

WHEN 'WTEXT-VBAP'.
CHECK NOT TVCPL-GRUAP IS INITIAL.
IF TVCPL-GRUAP > ST_GRNR. <<<<<<< Change
INCLUDE_NAME-POOL = 'RV50C'. <<<<<<< Change
ELSE. <<<<<<< Change
INCLUDE_NAME-POOL = 'FV50C'. <<<<<<< Change
ENDIF. <<<<<<< Change
INCLUDE_NAME-NUMMER = TVCPL-GRUAP.
INCLUDE_FORM-NAME = 'FORM DATEN_KOPIEREN_'.
INCLUDE_FORM-NUMMER = TVCPL-GRUAP.

WHEN 'WTEXT-VBKD'.
CHECK NOT TVCPL-GRUKD IS INITIAL.
IF TVCPL-GRUKD > ST_GRNR. <<<<<<< Change
INCLUDE_NAME-POOL = 'RV50C'. <<<<<<< Change
ELSE. <<<<<<< Change
INCLUDE_NAME-POOL = 'FV50C'. <<<<<<< Change
ENDIF. <<<<<<< Change
* INCLUDE_NAME-POOL = 'FV50C'.
INCLUDE_NAME-NUMMER = TVCPL-GRUKD.
INCLUDE_FORM-NAME = 'FORM DATEN_KOPIEREN_'.
INCLUDE_FORM-NUMMER = TVCPL-GRUKD.

WHEN 'WTEXT-VBPA'.
CHECK NOT TVCPL-GRUPA IS INITIAL.
IF TVCPL-GRUPA > ST_GRNR. <<<<<<< Change
INCLUDE_NAME-POOL = 'RV50C'. <<<<<<< Change
ELSE. <<<<<<< Change
INCLUDE_NAME-POOL = 'FV50C'. <<<<<<< Change
ENDIF. <<<<<<< Change
* INCLUDE_NAME-POOL = 'FV50C'.
INCLUDE_NAME-NUMMER = TVCPL-GRUPA.
INCLUDE_FORM-NAME = 'FORM DATEN_KOPIEREN_'.
INCLUDE_FORM-NUMMER = TVCPL-GRUPA.
WHEN OTHERS.
EXIT.

SAP Note 22656 - RFSBSA00: Missing financial statement key

Symptom:

Key words: RFSBSA00, balance sheet, P+L, financial statement key ERGSL FSE2 FSE3
In the financial statement version display (RFSBSA00), the financial statement key is not displayed.

Cause and prerequisites

Displaying the financial statement key is not relevant for the version display. Financial statement keys are only needed for the link with the key figures.

Solution

Copy program RFSBSA00 to a separate name (ZZ....) and make the following changes.

  • In the program, look for all positions in which the form routine TEXTSCHREIBEN is used (editor command FI TEXTSCHREIBEN). Change the program code at the positions found according to the following specifications.
    Be sure to note the different installation instructions for various Releases.


RELEASE: <>

1st position found ---------------------------------
... FORM X011P_ABARBEITEN.
LOOP AT X011P. "Bilanz-Positionen
"und Hierachiestufen abarbeiten
SAVE_X011P_IND = SY-TABIX.
* PERFORM TEXTSCHREIBEN USING ' ' CHAR_L. "Erzeugt Leerzeile <---old
PERFORM TEXTSCHREIBEN USING ' ' SPACE CHAR_L. "Erzeugt Leer<---new...
2nd position found ----------------------------
... FEHLERZEILE = TEXT-010.
ENDIF.
ENDIF.
* PERFORM TEXTSCHREIBEN USING FEHLERZEILE SPACE. <---old
PERFORM TEXTSCHREIBEN USING FEHLERZEILE SPACE SPACE. <---new
ENDIF.
ENDIF....
3rd and 4th positions found ---------------------------------
... IF NOT X011Q-TXT45 CO ' -='.
IF X011Q-ZEILE = 0 OR X011Q-ZEILE = 1.
* PERFORM TEXTSCHREIBEN USING X011Q-TXT45 SPACE. <-old
PERFORM TEXTSCHREIBEN USING X011Q-TXT45 X011Q-ERGSL SPACE. <-new
ELSE.
* PERFORM TEXTSCHREIBEN USING X011Q-TXT45 CHAR_X. <-old
PERFORM TEXTSCHREIBEN USING X011Q-TXT45 X011Q-ERGSL CHAR_X. <-new
ENDIF.
ENDIF.
ENDDO....
5th position found ---------------------------------
... *FORM TEXTSCHREIBEN USING TEXT FLAG. <--- old
FORM TEXTSCHREIBEN USING TEXT ERGSL FLAG. <--- new...
all other positions ---------------------------------
... * PERFORM TEXTSCHREIBEN USING AUSGABEZEILE CHAR_X. <--- old
PERFORM TEXTSCHREIBEN USING AUSGABEZEILE SPACE CHAR_X. <--- new...
---------------------------------

  • Change the following lines in the TEXTSCHREIBEN form routine:
    ... * Flag = 'L' => Leerzeile
    IF FLAG = SPACE.
    WRITE: '|--', TEXT.
    IF NOT MITKO IS INITIAL. "<--- new
    WRITE: 100(10) ERGSL. "<--- new
    ENDIF. "<--- new
    NEW-LINE.
    ELSEIF FLAG = CHAR_X AND VSTRICH-SCHABLONE+0(1) = CHAR_E....
    ---------------------------------
  • Find TOP-OF-PAGE in the program (editor command FI TOP-OF-PAGE)
    ... TOP-OF-PAGE.
    WRITE:/ 'Bilanz/GuV Struktur: '(005), 30 VERSN.
    IF NOT BUKRS_OK IS INITIAL.
    WRITE:/ 'Buchungskreis '(006), T001-BUKRS UNDER VERSN.
    ENDIF.
    ULINE.
    IF NOT MITKO IS INITIAL. <--- new
    WRITE:/98(13) TEXT-023. <--- new
    ENDIF. <--- new
    WRITE:/....
  • Create an additional text element for the text elements of the program
    Text item 023, text: Financial statement key


RELEASE: > 3.0

1st position found ---------------------------------
... FORM X011P_ABARBEITEN.
LOOP AT X011P. "Bilanz-Positionen
"und Hierachiestufen abarbeiten
SAVE_X011P_IND = SY-TABIX.
PERFORM TEXTSCHREIBEN USING ' '
STAFFEL
GRUPPE
SPACE <---new
CHAR_L."Erzeugt Leerzeile...
2nd position found ---------------------------------
... FEHLERZEILE = TEXT-010.
ENDIF.
ENDIF.
PERFORM TEXTSCHREIBEN USING FEHLERZEILE
STAFFEL
GRUPPE
SPACE <---new
SPACE.
ENDIF.
ENDIF.

IF SAVE_SUBRC = 0. "Erste Textzeile gefunden...
3rd position found ---------------------------------
PERFORM TEXTSCHREIBEN USING X011Q-TXT45
STAFFEL
GRUPPE
X011Q-ERGSL <---new
SPACE.
CLEAR STAFFEL. CLEAR GRUPPE.
ELSE.
4th position found ---------------------------------
PERFORM TEXTSCHREIBEN USING X011Q-TXT45
STAFFEL
GRUPPE
X011Q-ERGSL <--new
CHAR_X.
ENDIF.
ENDIF.
ENDDO.

5th position found ---------------------------------
*FORM TEXTSCHREIBEN USING TEXT STAFFEL GRUPPE FLAG. <--old
FORM TEXTSCHREIBEN USING TEXT STAFFEL GRUPPE ERGSL FLAG. <--new
DATA: COLUMN_DELTA TYPE I VALUE 2, "Gibt Anzahl der ' ' zw. Stufen
I TYPE I.


all other positions ---------------------------------
PERFORM TEXTSCHREIBEN USING AUSGABEZEILE
STAFFEL
GRUPPE
SPACE <--new
CHAR_X.
---------------------------------

  • Change the following line in the TEXTSCHREIBEN form routine:
    * Flag = 'L' => Leerzeile
    IF FLAG = SPACE.
    WRITE: '|--', TEXT.
    IF NOT MITKO IS INITIAL.
    * WRITE: 115(1) STAFFEL, 125(1) GRUPPE. <--old
    WRITE: 100(10) ERGSL, 115(1) STAFFEL, 125(1) GRUPPE. <--new
    ENDIF.
    NEW-LINE.
  • Find TOP-OF-PAGE in the program (editor command FI TOP-OF-PAGE)
    TOP-OF-PAGE.
    WRITE:/ 'Bilanz/GuV Struktur: '(005), 30 VERSN.
    IF NOT BUKRS_OK IS INITIAL.
    WRITE:/ 'Buchungskreis: '(006), T001-BUKRS UNDER VERSN.
    ENDIF.
    ULINE.
    IF NOT MITKO IS INITIAL.
    * WRITE:/113(10) TEXT-015, 123(10) TEXT-016. <--old
    WRITE:/98(13) TEXT-023, <--new
    113(10) TEXT-015, 123(10) TEXT-016. <--new
    WRITE:/113(10) TEXT-017, 123(10) TEXT-017.
    ULINE.
    ENDIF.
    WRITE:/.
  • Create an addiotnal text element for the text elements of the program
    Text item 023, text: Financial statement key
Additional key words

FSE2, FSE3, SAPMF02E

SAP Note 22653 - Sntx err.in RFPOSFM1,trmntn w/ brnch frm bal.dsplay

Symptom:

The following symptoms may occur:

  • A syntax error occurs in program RFEPOS00, in Include RFPOSFM1.
  • When you go from the balance display (Transaction FS10, FS10N, FD10, FD10N, FK10 or FK10N) to the line item display, the system terminates the transaction without generating any message.
Cause and prerequisites

The problem occurs due to a transport error.

Solution

Use Transaction SE38 to check first whether program RFPOSFM1 actually has a syntax error. This note and the following solution are only relevant if program RFPOSFM1 has a syntax error.
The two following alternatives are available for solution:

  • Maintain table T021S. Proceed as follows: Call up Transaction FAKP and choose menu path "Account --> Display line items --> Special fields". Now, include any desired field in the special fields table, save your entries and delete the entry afterwards again.
  • Execute program RFXPRA33.
After you carry out one of these two activities, the system regenerates Include RFPOSFM1 without errors.

Additional key words

FBL1, FBL2, FBL3, FBL4, FBL5, FBL6, FBL1N, FBL2N, FBL3N, FBL4N, FBL5N, FBL6N, RFXPRA33, drill-down, branch

SAP Note 22647 - MB22: A: Program error at EXIT FROM LOOP no active

Symptom:

When you try to change a reservation that was generated automatically during an MRP run (storage location MRP that generates a stock transfer reservation), a message is issued:

A : Program error at EXIT FROM LOOP: No loop active
Message ID = 00, Message number = 043

The error occurs when the reservation item > 1 was configured in customizing of MRP and the quantity is changed on the collective processing screen.

Cause and prerequisites

Program error

Solution
Workaround:
===========
Please branch to the detail screen of the reservation item and change the quantity from there.

Advance correction:
===================

Change include program MM07RFZ0 as indicated below:

FORM ZEILE_SETZEN.
...
IF PCODE IS INITIAL.
IF FCAUSW-XNEUP NE SPACE.
A-ZEILE = M-ZEILE.
RESB-RSPOS = M-ZEILE + 1.
ELSE.
IF NOT RM07M-RSPOS IS INITIAL.
IF RM07M-RSPOS > MAXIMAL.
A-ZEILE = 1.
ELSE.
A-ZEILE = RM07M-RSPOS.
ENDIF.
ELSE.
IF NOT FUSS-RSPOS IS INITIAL.
A-ZEILE = FUSS-RSPOS. <- delete
A-ZEILE = FUSS-RSPOS - INDEX_B. <- insert
ELSE.
IF FCAUSW-XLIST NE SPACE.
IF AUFSETZEN_1 IS INITIAL.
...
ENDFORM.

SAP Note 22645 - ME2O monitoring stocks with subcontractor of vendor

Symptom:

According to the documentation, you can monitor the stock with subcontractor of the vendor using transaction ME2O. This is only possible if a current purchase order is active at the time of the evaluation. If there is no purchase order available at this time, no stocks are determined for the vendor although they are actually existing.
If at all, stocks of components are evaluated which exist as components in a current purchase order.

Cause and prerequisites

Incomplete documentation: Only the open order items are interesting here, because the reason of the evaluation is to find out whether there are sufficient components in the stock of material provided for an order item. Therefore a check is made prior to further selections whether the "delivery completed" indicator (EKPO-ELIKZ) is set or whether the quantity (EKPO-MENGE) is zero (items for which the deletion indicator is set are not considered, of course).

Solution
The system works as required.

SAP Note 22640 - ABAP/4 query: Add. structures in logical databases

Symptom:

Question: How can structures which are connected to logical databases as an extension be used by ABAP/4 query?
Some logical databases use structures as an extension of the tables in the tree. With every read entry of the table, the database program sets up additional information for this entry in the structure.
Example: The logical database DDF contains the table BSEG with the fields BSEG-DMBTR (amount in local currency) and BSEG-SHKZG (debit indicator/credit indicator). To this table, an additional structure, BSEGA exists, in which the fields BSEGA-DMSOL (debit amount in local currency) and BSEGA-DMHAB (credit amount in local currency) are contained. The database program puts the additional information in this structure for each read entry of the table BSEG. The contents of the fields BSEGA-DMSOL and BSEGA-DMHAB are calculated from the fields BSEG-DMBTR and BSEG-SHKZG.
BSEG and BSEGA are both defined in the Dictionary. However, only BSEG exists as a table in the database. If you want to access the fields in a report via the logical database DDF from BSEGA, the statement TABLES BSEGA must be entered in the report. When GET BSEG is executed, the field string BSEGA then is supplied by the database program with the correct values.
The problem when using fields of this type in functional areas of the ABAP/4 query, are that the additional structures of the logical database can not simply be connected as additional tables in the functional area, as additional tables must be accessible to read with SELECT. The specification of the values has already succeeded via the database program.

Solution
An access to the fields of the additional structures can only be implemented for the definition of a functional area with additional fields. The statement TABLES structure must be entered first in the DATA program code of the functional area. An additional field which receives its value from a simple MOVE statement from the corresponding field of the structure must then be defined for every field in this structure which is to be included in the functional area.
Example: The field BSEGA-DMSOL should be included in a functional area via a functional area of the logical database DDF. As explained above, this is not directly possible. Therefore, the statement TABLES BSEGA is stored in DATA program code of the functional area. An additional field is then defined with the name DMSOL when GET BSEG is executed. The type of the additional field can be specified in the field BSEGA-DMSOL with LIKE. The program code for the additional field is DMSOL = BSEGA-DMSOL.
The additional field can be included afterwards in the functional area, and it makes the field BSEGA-DMSOL accessible to query lists.

SAP Note 22637 - IP10 : Error CO901 when calling maintenance plan

Symptom:

When calling the maintenance plan via transaction IP10 or via the monitoring tool IP30, message CO901 is displayed: 'Program error (contact your system administrator'.

Cause and prerequisites

A start date in the past was calculated. A regular maintenance order is now to be created at this date. Plans allocated to the maintenance item are either not available or not yet valid at this time.
Please note that the start date is calculated from the calculated planned date minus the preliminary float lead times.
In strategy-controlled maintenance plans, these floats are stored in strategy table T351. In plans without strategies (multiple counter), these floats are linked to the maintenance plan header under the scheduling parameters.

Solution
    1. Allocate valid plans to the maintenance items
    or
    2. make the scheduling at times where the plans are valid (calculated planned date is greater than or equal to the valid-from date in the routing header).

SAP Note 22634 - MMIM: KI230 during withdrawal with BOM reference

Symptom:

If you want to make a clearing posting with reference to the bill of material and assign it to a cost center, error message KI230 'Do not assign to cost center (not active in CO area & and FYear 0000) is displayed.

Cause and prerequisites

Program error.

Solution
Please change Include MM07MFK0:
FORM KONTIERUNGSBLOCK_SEND_PAI.
CHECK AKTYP = H OR AKTYP = K.
...
COBL-BZDAT = MKPF-BUDAT.
COBL-GJAHR = MSEG-GJAHR. <- delete
IF MSEG-GJAHR IS INITIAL. <- new
COBL-GJAHR = MKPF-MJAHR. <- new
ELSE. <- new
COBL-GJAHR = MSEG-GJAHR. <- new
ENDIF. <- new
...
ENDFORM.

SAP Note 22633 - Menu with empty or incorrect dynamic text

Symptom:

A dynamic menu or function text is displayed as question mark (??...?), remains empty or is incorrect.

Cause and prerequisites

Two possible causes are conceivable:

    1. The field name which contains the dynamic function or menu text is written incorrectly.
    2. The current surface status, the current screen as well as the ABAP program segment just executed can belong to different programs. However, the field for a dynamic text is exclusively searched for in the program to which the status belongs.
Solution
Check, whether the field name is written correctly and whether the field exists in the program that the GUI status belongs to. You can display this program at runtime. Via the menu option System -> Status you branch to the screen "System: Status". There you find the entries "Program (GUI)" and "GUI status" under "SAP data"/"Repository data".

Additional key words

"SET PF-STATUS"

SAP Note 22631 - Target quantity in incompletion log

Symptom:

When you process the target quantity from within the incompletion log, the system branches to an incorrect screen (VBAP-ZMENG).

Cause and prerequisites

Program error.

Solution
No advance correction possible.

To process the target quantity, you will have to use the item processing transaction. That is, enter the target quantity on the one-line or two-line entry screen, and first exit processing of the incompletion log.

SAP Note 22621 - Division by 0 in report RSSTAT25

Symptom:

A division by 0 error (COMPUTE_INT_ZERODIVIDE) is returned by the report RSSTAT25 or by the transaction AL05.

Cause and prerequisites

Program error.

Solution
In the report RSSTAT25, the following must be inserted in line 780 (or 7800 in the editor) in the form UPDATE-RECORDS: ...
delta_t_needed = sta1-avcount * corr / ( wpno * 100 ).
check delta_t_needed ne 0. "!!! INSERT THIS LINE !!!
delta_t_needed = statrecno * 60 / delta_t_needed.

SAP Note 22616 - CALL_FUNCTION_RECEIVE_ERROR when calling SUBMIT

Symptom:

You receive a RFC communication failure exception with the code CALL_FUNCTION_RECEIVE_ERROR when calling RFC to submit a ABAP/4 program or your program abends with this error code.

The CPIC status code is DEALLOCATED_NORMAL.

For external (C-) programs a corresponding I/O error is logged.

The function module called executes a SUBMIT command internally.

Cause and prerequisites

The called program tries to start an ABAP/4 program by SUBMIT
without ... AND RETURN.

In this case the Submit statement closes the RFC connection, because
the calling program can no longer be reached.

Solution
Start the program by SUBMIT .... AND RETURN.

16.2.11

SAP Note 22603 - ASREI for the international version: CH

Symptom:

ASREI only activated for Germany and Austria

Cause and prerequisites

This was not yet programmed.

Solution

The transfer of the travel expenses to payroll accounting is also to be activated for other countries. Proceed as follows:
Create a new ASREI function for the country.

    1. The RPRMARD1 report is deactivated as INCLUDE in your RPCALCx0 (*)

activate this report (delete *)

    2. Insert a new entry in the T52B5 table.

Argument:

Object class FUNC
Object name ASREI
Attribute CNT
Value Here enter the MOLGA to be activated

    3. Start RPUCT700 report with the parameters

Program class C
Object type FU
HR country modifier the one you require (as for value above)

    4. Now start the RPUGSC00 report, this generates RPUSCXY0


This function is now known to all required programs.
This function must then be implemented in the schema for payroll accounting.

    5. Define (PE01) an xREI schema that calls up function ASREI:


Fct Par1 Par2 Par3 Par4 P D Text
PRINT NP IT IT before travel expense
ASREI * Travel expenses transfer
PRINT NP IT IT after travel expense


and call up this schema in the main payroll accounting schema:


Fct Par 1 Par2 Par3 Par4 P D Text
...
COPY xREI Travel expenses acc. W + S
...

    6. Please code all wage types that come from travel expenses (T706B) in the T512W so that they can be correctly processed by the payroll accounting program.

SAP Note 22602 - Update termination when creating a characteristic

Symptom:

When creating a characteristic (transaction CT01), an update termination occurs after saving. The short dump points out the insertion of an existing record (SAPSQL_ARRAY_INSERT_DUPREC).

Cause and prerequisites

This error usually occurs if a client was created via a client copy without the respective number range objects also being transported.

Solution
The current number level of the number range object for the characteristics must be adapted. This requires the following:
Call transaction SE16 via the OK code field. Enter table CABN. On the next screen, enter * as internal characteristic number in the input field. With 'Execute' all created characteristics are listed. Please note the last assigned internal characteristic number. If you are using release 3.0, please note the last characteristic number assigned which is less than 9999999000.
Then call transaction CTNK. With Interval --> Change status, you can maintain the current number level. Please enter the internal characteristic number you have just noted in the input field. Save your entry.
Additional notes:
To avoid such problems the next time you copy a client, start the client copy function with the option "Initialize and create new". This means that the number ranges are copied automatically, or are initialized if you are not copying any master data or transaction data.
For the class maintenance (transaction CL01), the error can be corrected with transaction CLNK and table KLAH, as described above.

Additional key words

CT01

SAP Note 22598 - No text in totals position 'Below with txt above'

Symptom:

The following symptoms may occur:

  • If the totals position in the report layout is set as 'Below with txt above' and if at the same time the first row after the text row is to be suppressed (for example by selecting 'Suppress duplctd totals', summation interval or the dialog functon 'Edit->Rows->Suppress'), the text row placed before the total will also be suppressed.
  • A Report Writer report has the 'Totals below with text above' indicator set in its layout parameters. If report rows are hidden by the summation interval, the texts belonging to the hidden report rows are still shown in the data rows.
Cause and prerequisites

Program error.

Solution
Advance correction in program FGRWEE35.

Additional key words

REPORTWRITER, duplicated totals, suppression, summation interval

SAP Note 22593 - Earliest recalc. date for part. delet. of absences

Symptom:

If you want to record an absence without specifying the duration, you generally enter the end date 12/31/9999. If the end date of the infotype record then becomes known, it can be chaged for infotypes which do not belong to Time Management using "partial deletion". The recalculation date is thereby set to the first deleted day of validity.
For absences, the recalculation date has always been set to the first day of validity of the original infotype record. In certain situations, this can cause problems:
- for long-term illnesses,
- for parental leave,
- for military or non-military service

Key words: absences, I2001, P2001, recalculation, earliest
possible recalculation period.

Additional key words

P0003, IT0003

Cause and prerequisites

Situation not anticipated.

Solution
Using the following correction, partial deletion with an earlier recalculation date is possible for absence records which are entered on screens 2000, 2002, 2003, 2004 (i.e. for absences that do not reduce a quota).

Edit include FP50MF40 and find FORM ABPER. Insert the lines marked below:


FORM ABPER."SING ABP_DATUM ABP_VKABR ABP_VKBDE. "QNUK59609
DATA: ABP_CPAST.
DATA: ABP_EINDA LIKE CPREL-BEGDA, "QNUK76286
ABP_AUSDA LIKE CPREL-ENDDA, "QNUK76286
ABP_ACTIVE. "QNUK76286

CHECK PSPAR-TCLAS EQ 'A'. "VLZK11K081016
CHECK SW_ABPER GT '0'. "QNUK11K010031
IF PSPAR-INFTY EQ '2001' AND <------ insert line
PSYST-IOPER EQ MODIFY AND <------ insert line
PSPAR-SUPDG EQ 'X' AND <------ insert line
PSPAR-ACTIO NE 'FMOD' AND <------ insert line
( SY-DYNNR EQ '2000' OR <------ insert line
SY-DYNNR EQ '2002' OR <------ insert line
SY-DYNNR EQ '2003' OR <------ insert line
SY-DYNNR EQ '2004' ). <------ insert line
EXIT. <------ insert line
ENDIF. <------ insert line
PERFORM RE549A USING PSYST-ABKRS. "QNUK71984
CHECK T549A-CALCR NE SPACE. "QNUK71984


Finally, carry out a syntax check for programm SAPFP50M.

Partial deletion
================

To partially delete an infotype record, proceed as follows:
After starting transaction PA61, select the infotype and choose the function "Delete".
Go to the data record in question (e.g. an absence from 3/1/1995 through 12/31/9999, and in the validity period field enter the part to be deleted (e.g. from 6/13/1995 through 12/31/9999). Choose the function "Delete".
The result of this action is an absence from 3/1/1995 through 6/12/1995. The recalculation date is set to 6/13/1995.

SAP Note 22577 - Released standard price w/o std cost estimate

Symptom:

If you simultaneously release a marked cost estimate (CK21) and execute a cost estimate (CK11 or CK64 or SAPRCK10) with the same overhead key, an inconsistency occurs in the database: There is a released (current) standard price in the valuation segment of the material master but no corresponding costing record in the database.
When a cost estimate for the affected material is later released, error message CK162 may be issued ("Current cost estimate not found - inconsistent data").

Cause and prerequisites

Transaction CK21 does not block simultaneous costing of the material to be released.

Solution
The error was corrected in release 2.2F and 3.0A. In older releases, blocking module ENQUEUE_ECKEKOE must be called up at two points in the function module CK_F_MBEW_KEKO_COLLECT, just before table KEKO is read. The following lines indicated with P22K005536 must be inserted.
It is possible that a data inconsistency generated in an earlier release did not manifest itself until a later release. In this case, the data inconsistency can be removed with the report SAPRKEKO added to the program part. NOTE: You must create the report with the logical database MSM. When creating the report, for the attributes enter 'MS' in the 'Logical Database' field and 'M' in the 'From application' field.

Additional key words

Future planned price

SAP Basic data transfer for the material master with standard batch input program RMMMBIM0. The field contents for the additional costing functions ar

Symptom:

When creating a plant maintenance order (transaction IW31), error message KI101 'Controlling area & does not exist') is displayed if no cost center allocation exists for the main work center at the current date.
The error message of category "E" can be ignored by pressing ENTER.
IW31 IW34 IW36

Cause and prerequisites

This is not an error.

Solution
The work center of the object is read to determine the profit center when creating a maintenance order. As the date is not yet known at that time, the check is made with the current date. For this reason, the cost center of the work center must already be allocated to the system date. If there is no allocation, you can ignore the error message KI101 by pressing ENTER. As a result, no profit centers can be determined automatically. The further processing is not affected.

SAP Note 22559 - BTCI material - Add. costing functions are impossible

Symptom:

Basic data transfer for the material master with standard batch input program RMMMBIM0. The field contents for the additional costing functions are not copied.
Transaction = MM01
Screen = 295
Field = ZPLP1/2/3
ZPLD1/2/3

Cause and prerequisites

Error in program.

Solution
The error is corrected as of Rel. 3.0A. You can make the following preliminary correction by changing function module MATERIAL_BDCDATA (Include LMATTU01): 001360 perform steuern_pruefen.
001360 perform verbrauch_pruefen.
001370 perform progzusatz_pruefen.
001380 perform bewertzusatz_pruefen.
001390 perform kalkzusatz_pruefen. <<<<<< New line
001400 perform bestelltext_pruefen.
......

SAP Note 22557 - oncheck -cr returns bogus errors on primary chunks

Symptom:

oncheck -cr utility returns bogus error message 'I/O Error, Primary Chunk xxxxxx Offline; I/O lseek() ...... -> errno = 9 '. However, the server does not return any 'chunk down' errors and onstat -d returns PO for the chunk.

Cause and prerequisites

This is caused by improper permissions set on a logical chunk. The utility then cannot access the chunk in order to update system tables.

Solution
Please verify that the permissions are set to '660 informix informix' on the chunk.

SAP Note 22556 - ABAP/4 query: Syntax error in query report

Symptom:

When executing a query report, an error message is issued, stating that client specification is not permitted:
- Client specification: MANDT not allowed
or
- Without the addition of CLIENT SPECIFIED, the client field MANDT may not be entered in the WHERE requirement.
Key words: Query, direct read operation, client

Cause and prerequisites

The functional area in which the query is defined, is a functional area which reads a table from the SAP System using the 'direct read operation' method. This table is client-specific.
The 'direct read operation' method is always converted into a SELECT statement without the addition of CLIENT SPECIFIED - that is, for a functional area of this type, it is not possible to perform client-independent reads.
In the previous error, however, the client field is included in a functional group of the functional area. Additionally, it was determined that, when definiting the query, a select option for this client field should be supplied. In functional areas with a direct read operation, this select option as a WHERE requirement is passed on to the SELECT statement.
The WHERE ... MANDT IN xxxxxx construction, which requires the CLIENT SPECIFIED addition and therefore causes the error, appears in the generated report in the WHERE requirement.

Solution
The client fields of tables should generally not be included in the functional areas as the query usually only picks data from a client. The client field, therefore, always has the same value and is thus of no essential informative value. If a functional area contains no client fields, syntax errors of the type discussed here cannot occur.
If an exceptional read should be carried out for all clients, a functional area which works with a separate data supply program must be created. In this data supply program, a read on all clients can be programmed with SELECT and the CLIENT SPECIFIED addition as a method for data retrieval. The WHERE requirement must contain a query in the client field as otherwise the data supply program is syntactically incorrect and no generation of the functional area possible. In a functional area of this type, it is useful to include the client field in the functional area.

SAP Note 22548 - Self-defined BTCI program for material master views

Symptom:

When you create/change a material, the view selection screen is constructed dynamically, depending on the material type, authorization, transaction, etc. When data is transferred using batch input, this dynamic positioning of the required views must be taken into account.
This applies, for example, to the standard Customizing configuration of material types for creating a material: the "Purchasing" view is the second item in the view selection screen for material type "ROH"; but it is the sixth item for material type "HAWA".

Cause and prerequisites

See above

Solution
The standard batch input program, RMMMBIM0, uses function module MATERIAL_BTCI_SELECTION_1 to achieve this. You can also use the main function module, MATERIAL_BTCI_SELECTION.

SAP Note 22534 - INTRASTAT: Missing or incorrect data - Consulting

Symptom:

INTRASTAT declaration: Data is missing, incomplete, or incorrect.

Cause and prerequisites

Master data and tables are not maintained or are incomplete.

Solution
INTRASTAT data is often incomplete.

The following data is important :

01. TABLES ==========
- Table 001Z : Separate UID number (under SAPI01 - Release 2.1-2.2)
Additional number (under SAPI02 - Release 2.1-2.2)
- How can the table be accessed (Release 2.1-2.2) :
- SM31 : Select T001
- Select global data V_T001B
- Select the participating company code
- Select the 'Detail' function
- Maintain the two INTRASTAT numbers on the Detail screen

- Table T005S : - In Release 2.1-2.2, call the 'Federal state' column via SM31

- Table T604 : - In Release 2.1-2.2, call View V_T604 via SM30. Maintain the alternative unit of measure in
in the detail screen.

- Maintain default tables :
- T605Z
- T616Z

- Table T609I (as of 2.2):
The correct setting of table T609I is also important.
Example : For Germany, the fields NLDBOCODE and SPANIENID are not relevant for INTRASTAT.
These fields can be deactivated ("X"'d out).
Maintenance is carried out via transaction SM30. You need to select
view V_T609I.

- Currency conversion :
If the document currency is different from the local currency, the
system converts the document value to local currency. For this conversion, you must first have correct entries in Table TCURR and the assigned tables TCURV and TCURX.
Missing entries may lead to empty invoice values.

Table TCURV - Exchange rate types for currency conversion
Table TCURX - Decimal places for currency codes
Table TCURR - CURRENCY CONVERSION EXCHANGE RATES

- Route definition : (Transaction VORD)
* Route maintenance:
The mode of transport can be maintained in the detail
screen for the route. If a route is assigned to the
delivery/billing document, then the mode of transport
is automatically set in the export header data (EIKP).

* Transportation connection point maintenance:
A transportation connection point, as part of a leg
(which, in turn, is part of a route) can be marked as
a transit point. Only then, and if the address
(especially the country) is maintained for the
transportation connection point, can the office of
exit entered for the transportation connection point
be automatically set in the export header data
(EIKP).
Note: To do this, the office of exit of the last domestic
connection point is used.

See also Problem Note 16102

NOTE:
Unless otherwise stated, you can maintain the tables in general
view maintaince (Transaction 'SM30'). To do this, enter View name
'V_Txxxx' instead of Table name 'Txxxx'.


02. MASTER DATA

- Material master : Maintain all data that is relevant to export and forwarding
- Customer master record : Maintain UIN number of the customer (SD reporting)
- Vendor master : Maintain UIN number of the customer (MM reporting)

03. DOCUMENT DATA

- SD documents, general:
The export data for all INTRASTAT data MUST be maintained. If
credit memos are selected, for example, the export data must also
be maintained for them. Documents with no export segments, that is - with no data at export header or export item levels, cannot
be selected for INTRASTAT.

- SD pricing :
- The invoice value (field: VBRP-NETWR) must be filled
- Maintain statistical value
- Maintain condition GRWR in the pricing procedure and create
the corresponding condition records.

- MM pricing :
- Value of ordered goods in order currency (field EKPO-NETWR) must be filled
- statistical value : see SD pricing

- Delivery / billing document (SD)
- Forwarding data (under export data)
Maintain
- Header
- Item


- Purchase order (MM)
- Dates received (under import data)
Maintain
- Header
- Item

04. Program

- In Include RVEXKUEI of Selection report RVEXSTOO, you can control
which SD document types or item categories are relevant when
creating INTRASTAT declarations, that is, which are to be used
during selection.
Example: If services are not to be declared, these need to be entered
in the billing document with a seperate item category.
During the INTRASTAT selection run (Report RVEXST00) these
item categories can then be reset in INCLUDE RVEXKUEI.


Note :
- It would be ideal to test the two reports RMIMST00 (MM) and RVEXST00 (SD) thoroughly until all "errors" are corrected.
Log type : for example E
- If file VEIAV (which is the basis for the actions following the selection reports RMIMST00 and RVEXST00) must be filled, then the log type must be B, for example.

- Recommended procedure for Germany (Release 2.2-3.0) :
SD : ----
- Selection report : RVEXST00
- Alternativ_01 : Paper version
- Print program : RVEXPAID with indicator "2" for forwarding
- Alternativ_02 : Disk version
- VEIAV --> FILE : RVEXDAID with indicator "2" for forwarding
- FILE --> Disk : RVEXNAID
Note:
During the course of report RVEXNAID, a popup is displayed on
which the path of the data carrier and the data format is
confirmed. In this it is ABSOLUTELY required that the data
format 'BIN' is left.

MM : ----
- Selection report : RMIMST00
- The rest is identical to SD : except for indicator "1" for goods receipt

Additional key words

Declarations to Authorities
INTRASTAT
RVEXST00
RMIMST00
VE01
MEIS
SDFUN7

SAP Note 22514 - CC-INFO: Error analysis for client copy

Symptom:

A client copy terminates for no apparent reason.

The client copy programs do not copy all tables.

Cause and prerequisites

The error has not been classified yet.

Solution

The data that is necessary for error analysis is described here; this Note also explains how you can find the error yourself.

The name prefixes of the Notes of the client copy tools follow the following scheme:

  • CC-RELEASE - You should first refer to the Note applying to your release.
  • CC-TOPIC - These Notes provide information and detail problems on the various areas (e.g. adresses, remote copy, client transport...).
  • CC-INFO and CC-ADMIN - These Notes contain information which help you to plan a copy and to avoid errors.
  • CC-ERROR - These Notes deal with individual errors and how to solve them.
    1. If you cannot find any suitable Note or solve the problem yourself, we require the following information (please do not copy larger protocols into the message. Instead, provide them, if requested, on sapservX as described in Note 40024):
      a) What type of client copy you want to execute (local copy, remote copy, client transport or copy according to transport request)?
      b) Which copy profile are you using (SAP_ALL, SAP_USER, SAP_CUST ...)?
      c) The protocols (transaction SCC3)
    • The final status of the copy, e.g. "ended with errors".
    • The protocol combination of the copy - approximately one to two screen pages, in particular also any copying errors.
    • Error messages in the log file (file log) of the copy. Error messages can be found more easily when the log is expanded to level 2 only.
    • Other warnings and messages for the tables where errors occur. Expand the log completely and search for the table names.
    • You can save the protocol file itself via

      'Details -> File protocol', 'Expand everything', 'Protocol -> Save in PC file...', selection 'unconverted'.

      Logon in English or German, the protocol is saved in the language in
      which you logon.
      d) The relevant part of the system log documenting the termination from the run-time environment point of view (Transaction SM21). For the selection criteria, use (e.g. in the event of a termination) the last entry in the log of the client copy as the start value (note that the termination can occur hours or even days after the last entry) or use the period in which the problems occurred.

      You should select the central SysLog (via 'SysLog -> Select'), if it is set up. Otherwise, all SysLogs where a process was active have to be taken into account.

In the case of remote copies, you must also take the source system into account (usually time-outs).

      e) If there is a short dump (Transaction ST22) with the termination, add the most important keywords and the code statement. If required, the entire DUMP can be put on sapservX.
      f) Which transport request (KTnnn) was used for an export/import? Using SE01 check the status of the transport request (KTnnn and KOnnn; represents the source system). You should particularly observe Note 70547.
      g) If the client copy is scheduled as a background job, check job management SMX/SM37 and spool SP02/SP01. If there were problems writing the log, the missing information can be found in the spool.
    2. Copying phase (log SCC3):

The last entered phase indicates the step where the program terminated:

      a) Analysis phase (up to 3.0F Phase A?):
      Program terminated during initialization. If there is no system error, the cause is contained in the log.
      b) Copy phase (up to 3.0F Phase C?):
      The terminated tables can be found in the log.
    • Check this with Transaction SE11. Choose the database utility from the utilities menu (->SE14). Here you can test the database consistency by using 'check'.
    • Check the size of the tables by using SE16, Note 118823 or Report 'NROWS' (as of Release 4.0B).
    • Analyze the system log message (SM21):
      Timeout: The customer should either start the job in the background and/or increase the maximum runtime (max_wprun_time).
      INTTAB error: Does not cause a termination. (Up to 3.0E: tables which are larger than 10,000 bytes cannot be copied).
      SQL error: Correct the problem in the database and restart the copy. Pay particular attention to Note 96296.
      c) Subsequent processing phase (up to 3.0F Phase N?):
      The currently executed exit program which caused the error is located in the log. Send an error message to the component which is responsible for this module so that you can receive the quickest help possible.
    3. In order to compare table contents between two clients or even between two systems, there are comparative tools from the customizing area (also see Note 91096). Create an R3 RFC destination in Transaction SM59.
    4. Database table CCSELTAB has been available since Release 4.6. The selected tables are logged in this table. After doing a client copy, you can use Transaction SE16 and selection
    CCSELTAB-STATUS <> 'P'
    to find out which tables have not yet been successfully processed. Here the STATUS and error message (CCSELTAB-ARBGB and CCSELTAB-MSGNR) are important.

This table however only exists temporarily. It only ever contains the data of the last client copy (also test runs).


In addition, you should regard the related notes.


Additional key words

SCC0, SCC1, SCC2, SCC5, SCC7, SCC8, SCC9, SCCL, RSCLICOP, RSCCPROT

SAP Note 22511 - MMIM: Missing lock for customer indep. requirements

Symptom:

If the customer order (e.g. customer independent requirements being processed with transaction MD82) to which a production order is assigned is blocked during backflushing, the reservation is updated anyway. Furthermore, the component is assigned the status "Withdrawal failed". As a result, these components are also listed for error handling.

Cause and prerequisites

Missing block in customer order before the "Post" event.

Solution
Please note !!!
Field XMBWL, which is listed in the program code, was new defined with correction P22K004144, which is described in note 17862.

Please make the changes indicated below:
Include MM07MFK0
----------------
FORM KONTIERUNG_PRUEFEN.
CLEAR COBL.
COBL-BLDAT = MKPF-BLDAT.
...
IF ( MSEG-SOBKZ = E OR MSEG-UMSOK = E ) AND
( T158-VGART = VGART-WF OR DM07M-FAUSW+12(1) = MINUS ).
MSEG-KDAUF = KDAUF.
MSEG-KDPOS = KDPOS.
MSEG-KDEIN = KDEIN.
ENDIF.
IF NOT XMBWL IS INITIAL AND NOT MSEG-KDAUF IS INITIAL <-new
* nächste Zeile gilt für Release 2.2 *
AND ( T158-VGART = VGART-WR OR T158-VGART = VGART-WS ). <-new
* nächste Zeile gilt für Release 3.0 *
AND ( T158-VGART = VGART_WR OR T158-VGART = VGART_WS ). <-new
CALL FUNCTION 'ENQUEUE_EVVBAKE' <-new
EXPORTING <-new
VBELN = MSEG-KDAUF <-new
EXCEPTIONS <-new
FOREIGN_LOCK = 2 <-new
SYSTEM_FAILURE = 3. <-new
CASE SY-SUBRC. <-new
WHEN 2. <-new
MESSAGE E042(V1) WITH MSEG-KDAUF <-new
RAISING DOCUMENT_BLOCKED. <-new
WHEN 3. <-new
MESSAGE A043(V1). <-new
ENDCASE. <-new
ENDIF. <-new
ENDFORM. <-new

SAP Note 22489 - Subcontracting: same component with two batches

Symptom:

If a component is entered in a subcontractor order for an item for which two batches were placed into the stock of material provided, the goods receipt cannot be posted.
Example:
- Material with automatic batch single valuation
- Material 2x as component in subcontractor order with 5 pieces each
(not necessarily required for the system response time)
- Transfer posting of the two batches of the material component to the stock of material provided with 5 pieces each
- Posting the GR for the purchase order: The system allows only one batch for the material. Even when entering a '*' batch, you can only enter one batch even if both batches were selected.

Cause and prerequisites

Missing functionality: No batch management for special stocks.

Solution
Enter two partial goods receipts.

SAP Note 22486 - Alternative language for chrt/accts is rejected

Symptom:

When maintaining the charts of accounts (transaction OB13), you cannot specify an alternative language for a chart of accounts if only one chart of accounts is defined. You receive the message FC002 although the language key is defined in table T002.
Key words: OB13, chart of accounts, T004, V_T004

Cause and prerequisites

Since there is only one entry in table T004, the system branches immediately to the detail screen within the maintenance and the module in which the entries are read from table T002 is not reached this way.

Solution
You have to make the following change in program L0F00I60:
/NSE38, L0F00I60

MODULE STRING_AUFBAUEN.
CLEAR STRING_VY. " <-- INSERT
SELECT * FROM T002.
STRING_VY+199 = T002-SPRAS.
CONDENSE STRING_VY.
ENDSELECT.
ENDMODULE.


You have to make the following change in the flow logic of screen SAPL0F00 0021:
/NSE51
Program: SAPL0F00
Screen: 0021
'Change flow logic'


PROCESS AFTER INPUT.
MODULE STRING_AUFBAUEN. " <-- INSERT
MODULE DETAIL_EXIT_COMMAND AT EXIT-COMMAND.
MODULE DETAIL_SET_PFSTATUS.


You must generate the screen afterwards.


The error has been corrected in Release 2.2F and as of Release 3.0A.

SAP Note 22481 - HR (Switz.): bank transfers for asylum seekers

Symptom:

Since, as of December 1994, the security payments of asylum seekers may may no longer be transferred via data medium exchange, the amount was always 'canceled' during retroactive calculations and only included again, along with the new amount, in the current period.
In the case of employees leaving (if infotype 0011 was delimited) this led to errors, since a particular amount was no longer retained.

Cause and prerequisites

a) Removal of bank transfer in cycle CHUB (as of 2.1i/2.2c)
b) Delimiting of infotype 0011.

Solution
In cycle CH42, you can carry out an advance correction. Insert the lines marked <<<<< below:

Payroll type * Wage type ****

VarArg. FZ T Operation Operation Operation Operation Operation Operati
+ + + + + +
D WGTYP?
**** D BTNUM
**** ** ADDWTE* ELIMI * ADDWTI/110ADDWTI/560ADDWTI/562
**** 00
/321 ADDWTE* ELIMI * ADDWTI/110ADDWTI/560ADDWTI/562 <<<<<
/551 ADDWTD/551
........

By making this change, wage type /321 always behaves as if it had been transferred.

Unlike all other external transfers, you should NOT delimit infotype 0011 for the bank transfer of asylum seekers when an asylum seeker leaves. In this case, the necessary security payments are automatically calculated for supplementary compensation and set up for transfer.

SAP Note 22475 - EAA641: Net book value negative in area &

Symptom:

When posting a retirement/transfer, message EAA641 'Net book value negative in area &' is displayed, if a calculation key with base value 40 = acquisition is used and a retirement of current acquisition values is made in the area.
The base value 40 is used in calculation keys for special depreciation in the standard system.

Cause and prerequisites

Program error.

Solution
The error is corrected as of Release 3.0D. The following advance correction in Include LAFARF00 fixes the problem. Please do the syntax check only in main program SAPLAFAR.
After installing the correction, you have to carry out the recalculate values function for the affected assets in the asset master data change transaction (AS02).
Caution: Depending on the release you have, some parts of the correction may already be in your system. In that case, install only the source code corrections that are still needed.

Additional key words

S7GD

SAP Note 22473 - init_sql_files in init.ora

Symptom:

Database cannot be started.

Cause and prerequisites

init_sql_files are no longer supported as of Version 7.1.4.

Solution
Delete the parameter in init.ora.

Note:

This parameter was deleted automatically during the upgrade to 7.1.4.

S.17 : change_init.ora

SAP Note 22451 - ORA01204

Symptom:

ORA01204, DB does not start after export

Cause and prerequisites

DB was not shut down correctly, computer crash.

Solution
1.) DB startup mount
2.) Set tablespaces to offline
3.) Drop tablespaces
-> Start database again.
4.) Create tablespaces again, delete files and import correct files
5.) Recover the tablespaces

SAP Note 22450 - Routing: Indicator for relevancy to costing 'X'

Symptom:

CA01, CA02: Create/change routings
The indicator for relevancy to costing 'X' in routing is not accepted on the screen 'Operation/General View'.

Cause and prerequisites

The corresponding entry is missing in table TCK08.

Solution
Since you cannot maintain letters manually in table TCK08, a client copy is required for this table from client 0 (table -> transport).

Preliminary correction or temporary solution:

- Transaction OKK9: Create a new numeric indicator for relevancy to costing.

- Transaction OKK7: Allocate the new indicator to the valuation variant and the factors. The latter must be set to 1 (or 100%). You should mask the valuation variant. Since it is possible that the entry '+++' is no longer allowed, you should copy an already existing entry with masking via 'Copy as...'.

Note: In the table of transaction OKK7 the 'X' does not appear because its factors and the valuation variant allocation are hard-coded in the program code.

SAP Note 22445 - ORA 604, ORA 376, ORA 1110 during shutdown

Symptom:

The above errors occur during shutdown

Cause and prerequisites

Error in Rel. <> Solution
This error can occur occasionally. It does not cause any problems, however, and can therefore be ignored.

SAP Note 22432 - HR (Switz.): RPLQSTC0 printing retro. acc. runs

Symptom:

UKSymptom
Problems with the withholding tax list in the case of retroactive accounting runs.

  • The Tax Office has problems with the list if retroactive accounting runs (perhaps over several periods) are grouped together with the current period.
  • The Tax Office wants each month in a quarter to be listed separately in the list.
  • In the case of retroactive accounting runs, the complete amount should be listed and not merely the difference between the last accounting run that was submitted and the current accounting run.
  • For each employee, the tax amount to be submitted should be clearly discernible.
  • If a retroactive payroll run occurs over and beyond the start of the period to be evaluated, then a fixed percentage rate in infotype 0038 is not evaluated correctly during the calculation of withholding tax.

For example: for a fixed deduction of 4.5% for a retroactive run (period 02 corrected period 01), the value 13.5% is displayed for evaluation of period 02.

Cause and prerequisites

Up to now, the values were always written into one line (added together) if the employee was active without interruption.

Solution
Since the Tax Adaptation Act of 1995, only smaller companies (up to a maximum of 10 employees liable to pay withholding tax) are allowed to submit an accounting run performed for a whole quarter. Because of this, a separate line is now written for each individual accounting run.
Furthermore, retroactive accounting runs for individual periods are also listed individually if you enter the value 'FR' in the parameter "F/FO/FR/I". The result of this may be a longer list, but this list will be much clearer and easier to read.

As an advance correction, insert the lines marked YSCK117919 below into program RPLQSTC0:

*.................................externe Tabellen......................
TABLES:
T001, "Buchungskreise
T001P, "Buchungskreis/Werk/Betriebsteil
T5C1O, "Kantone/Gemeinde
T5C1Y, "Bezugsprovisionen
T5C2A, "QSt Text SteuerpflichtYSCK108458
T5C2B, "QSt Steuergrundlagen "YSCK108458
T5C2C, "QSt Steuerpflicht "YSCK108458
T5C2D, "QSt Steuerberechnung "YSCK108458
T5C2F, "QSt Steuerkantone "YSCK117919
T5C2H, "QSt Steuersaetze "YSCK108458
T5C2I, "QSt Abrechnungsnummer"YSCK108458
T502T. "Familienstand
*.................................Parameter............................


:::::::::::::::::::::
PROVIDE * FROM P0006 BETWEEN PN/BEGDA AND PN/ENDDA. "YSCK108458
CHECK P0006-ANSSA EQ '1'. "YSCK108458
MOVE-CORRESPONDING P0006 TO ZWORT. "YSCK108458
IF ZWORT-BEGDA LT PN/BEGDA. "YSCK108458
ZWORT-BEGDA = PN/BEGDA. "YSCK108458
ENDIF. "YSCK108458
IF ZWORT-ENDDA GT PN/ENDDA. "YSCK108458
ZWORT-ENDDA = PN/ENDDA. "YSCK108458
ENDIF. "YSCK108458
ZWORT1-BEGDA = ZWORT-BEGDA. "YSCK108458
ZWORT1-ENDDA = ZWORT-ENDDA. "YSCK108458
PROVIDE QSTPF KANTO GEMND "YSCK108458
FROM P0038 BETWEEN ZWORT1-BEGDA AND ZWORT1-ENDDA."YSCK108458
MOVE-CORRESPONDING P0038 TO ZWORT. "YSCK108458
PERFORM RE5C2F USING P0038-KANTO. "YSCK117919
IF T5C2F-LAND1 NE ZWORT-LAND1. "Wohnsitz im Ausland?"YSCK117919
CLEAR ZWORT-STATE. "YSCK117919
ENDIF. "YSCK117919
IF ZWORT-BEGDA LT ZWORT1-BEGDA. "YSCK108458
ZWORT-BEGDA = ZWORT1-BEGDA. "YSCK108458
ENDIF. "YSCK108458


:::::::::::::::::::::

--------------->CAUTION:<----------------------------------------------
The fields STPFZULA and STPFZULARR do not yet exist in 2.1. You will also notice here that the lines with YSCK114091 are missing.
Therefore, 3 lines are marked *P21 below. These lines are not required in 2.1; you can omit them completely or mark them as comment lines by placing an asterisk in the first column.
-----------------------------------------------------------------------
FORM EXTRACT.
DATA: "YSCK117919
PACK2 TYPE P DECIMALS 2. "Hilfsfeld Betrag "YSCK117919
CHECK: ZWREC-BETRAG NE 0 OR
ZWREC-BETRAGRR NE 0 OR
ZWREC-STPFZULA NE 0 OR "YSCK114091
ZWREC-STPFZULARR NE 0 OR "YSCK114091
ZWREC-STPFLOHN NE 0 OR
ZWREC-STPFLOHNRR NE 0.
PACK2 = ZWREC-BETRAG + ZWREC-BETRAGRR. "YSCK117919
IF PACK2 EQ 0. "YSCK117919
PACK2 = ZWREC-STPFZULA + ZWREC-STPFZULARR. "*P21"YSCK117919
IF PACK2 EQ 0. "*P21"YSCK117919
PACK2 = ZWREC-STPFLOHN + ZWREC-STPFLOHNRR. "YSCK117919
CHECK: PACK2 NE 0. "YSCK117919
ENDIF. "*P21"YSCK117919
ENDIF. "YSCK117919
IF ZWREC-AHVNR+7(3) = '000'.
ZWREC-PERSON = ZWREC-PERNR.
ELSE.


:::::::::::::::::::::
ENDSELECT.
ENDFORM. "RE5C2D. "YSCK108458
*-------------------------------------------------------"neu"YSCK117919
* FORM RE5C2F "YSCK117919
*-----------------------------------------------------------"YSCK117919
* Lesen der Tabelle T5C2F "YSCK117919
*-----------------------------------------------------------"YSCK117919
* --> 5C2F_KANTO Kanton "YSCK117919
*-----------------------------------------------------------"YSCK117919
FORM RE5C2F USING 5C2F_KANTO. "YSCK117919
CHECK: T5C2F-KANTO NE 5C2F_KANTO. "YSCK117919
CLEAR T5C2F. "YSCK117919
SELECT SINGLE * FROM T5C2F WHERE KANTO EQ 5C2F_KANTO. "YSCK117919
ENDFORM. "RE5C2F. "YSCK117919
*-------------------------------------------------------"neu"YSCK108458
* FORM RE5C2I *
*---------------------------------------------------------------------*
* Lesen der Tabelle T5C2I *


:::::::::::::::::::::

FORM ST.
CLEAR ST.
LOOP AT ST.
IF ST-QSTPF NE '0' AND "YSCK108458
ST-QSTPF NE '1'. "YSCK108458
ZWQST-GEMND = ST-GEMND.
ZWQST-KANTO = ST-KANTO.
ZWQST-QSTTAB = ST-QSTAB.
** UNPACK ST-QSPRO TO ZWQST-QSTPROZ. "YSCK102542
ZWQST-QSTPROZ = ST-QSPRO. "YSCK102542
** UNPACK ST-QSBTR TO ZWQST-QSTBETR. "YSCK102542
ZWQST-QSTBETR = ST-QSBTR. "YSCK102542
IF CD_TABLE-SRTZA NE 'A' "Rueckrechnung ? "YSCK117919
OR ( ST-BEGDA < PN/BEGDA AND "YSCK117919
VERSION NE 'FR' ). "YSCK117919
ZWQST-QSTPROZ = 0. "YSCK117919
ZWQST-QSTBETR = 0. "YSCK117919
ENDIF. "YSCK117919
EXIT. "erste Angabe uebernehmen,
"da Abrechnung ohne Split
ELSE. "YSCK117919
ZWQST-GEMND = ST-GEMND. "YSCK117919
ZWQST-KANTO = ST-KANTO. "YSCK117919
ENDIF.
ENDLOOP.
ENDFORM. "ST.


:::::::::::::::::::::
FORM ZWQST-BEARB.
* init Felder
SORT ZWQST.
CLEAR: ZWQST, ZWREC.
* Zwischenrecord erstellen und ausgeben
LOOP AT ZWQST.
* Suchen Beschaeftigungszeit
CLEAR: TAB-BPER, ZW-BPBEG, ZW-BPENDNEU.
LOOP AT TAB-BPER WHERE JJMM = ZWQST-JJMM.
IF ZW-BPBEG CO ' 0'.
ZW-BPBEG = TAB-BPER-APBEG. "Beginn
ENDIF.
ZW-BPENDNEU = TAB-BPER-APEND. "Ende
ENDLOOP.
LOOP AT ZWORT WHERE BEGDA LE ZW-BPBEG "YSCK108458
AND ENDDA GE ZW-BPENDNEU. "YSCK108458
EXIT. "YSCK108458
ENDLOOP. "AT ZWORT "YSCK108458
IF ZW-BPBEG CO ' 0'.
IF VERSION = 'FO' AND "Rueckr.nicht zeigen ?
SW-AKTIVAP = 'X'. "und aktiv ?
ZW-BPBEG = ZW-JJMM-VON. "--> alles auf Beginn
ZW-BPBEG+6(2) = '01'.
ZW-BPEND = ZW-BPBEG.
ELSE.
ZW-BPBEG = ZWQST-JJMM. "--> echte Periode zeigen
** zw-bpbeg+6(2) = 'RR'. "YSCK117919
ZW-BPBEG+6(2) = '01'. "YSCK117919
ZW-BPEND = ' RR'.
ZW-BPENDNEU = ZWQST-JJMM.
ZW-BPENDNEU+6(2) = '01'.
ENDIF.
ENDIF.
* Gruppenbruch testen


:::::::::::::::::::::
ADD ZWQST-STPFLOHNRR TO ZWREC-STPFLOHNRR.
ADD ZWQST-STPFZULARR TO ZWREC-STPFZULARR. "YSCK114091
ZW-BPEND = ZW-BPENDNEU. "YSCK117919
ENDLOOP.
* ev. zuletzt vorhandene Daten uebernehmen
IF ZWREC-BUKRS NE SPACE
OR ZWREC-AHVNR NE SPACE.
ZWREC-KZLAST = 'X'.
PERFORM EXTRACT.
CLEAR ZWREC.
ENDIF.
ENDFORM. "ZWQST-BEARB.
*---------------------------------------------------------------------*
* FORM ZWQST-FUELLEN *