TDS on interst of Customer Deposits
Dear All,
Pls help me how the TDS will calculate on interest of customer Deposites.
it is urgent.
Regards
panda.
Hye Panda,
Assign the WTDS code in customer master ( same process used for vendors ) and post the entries through fb75. TDS will be deducted automatically.
Similar Messages
-
CONVERSION OF CUSTOMER DEPOSITS??? PLS HELP
I need to know how do we bring in customer deposits from legacy to SAP. Is it going to be a manual posting in SAP through FB50, by debiting the gl conversion account. Or through F-29, if yes then in bank account we will enter the g/l conversion account?? If not manual then how will we bring the deposit in SAP thru LSMW. Is it going to be through F-29? If yes, what will be the entries?
Thanks
LakshmiHi
You can use F-02 and change the posting key to 19 and spl GL indicator H and Debit the Legacy account.
You record the T-code F-02 in LSMW and use it for all GL upload.
Thanks
Colin Thomas -
TDS (TCS) adjstement for Customer
Hello Experts
I have problem in adjusting TDS(TCS) for customer adjustment. At the time of downpayment system is deducted TDS for customer and at the time of Invoice also its getting deducted. Problem is at the time of Clearing DownPayment System is not adjusted TDS Amount.
same WHT type is working for Vendor but not working for Customer
Could u plz guide me how can i solve this issue
Thanks a lot
Regards
Anamika
Edited by: Anamika k on Sep 27, 2008 9:49 PMHello Anamika,
U said same WTH is working for vendor and its not working for customer. is it mean that is WHT GETTING ADJUSTED ANGAINEST UR DOWN PAYMENT and INVOICE. if so can u tel me how is it possible?
sorry for question againest ur question. -
TDS for interest on security deposits for customers
Hi ,
We will receive security deposits from customers , for this we are paying interest.
while paying interest for security deposits , TDS is deducting .
But TDS cess deducting 3.40% instead of 3%.
please provide the path or tcode for checking this.
thanks & regards,
Hari priyaHi Priya,
System is deducting TDS that process is right.
For your information
TAXABLE AMOUNT 5000
BASIC -10% -500
ED CESS (3% ON BASIC) -3% -15
SURCHARGE(10% ON ED CESS)-10% - 1.5(Rounding 2 rupees)
Total 17 rupees TDS
Regards
Surya -
EWT confing - Difference FI & A/R - A/P
Dear All,
We just want to know what is the difference between EWT,which comes under Financial Accounting Basic Setting(New) and the EWT which falls under the head of A/R & A/P > business Transaction > Incoming Invoice and Cr memos > Carry out and check setting for WITHHOLDING TAX.
Also let me know exactly in place the A/P EWR is useful or what is the purpose of the EWT in A/R &A/P.
Actualy we want to calculate TDS on interest from Customer deposited received by us.
But when we assigned the tax code(which was created in FA EWT) to customer master,the system does not calculated the TDS.We used the formula (in the above mentioned tax code),as we want to calculate TDS only if the payable amount is more than Rs.5000.
Do suggest how to acheive our requirement.
Regards,Hi ,
Looking at the issue that you have raised there are 2 parts in to it :
- what is the diffrence between the two nodes of wihthoding tax that you have mentioned .
- you want to create a tax code for interest on deposit from consumers .
First of all the the diffrence between the two nodes is that the node that you have referred that is accounts receivable and payable - business tras. - withholding tax . that is for classic withholding tax that was applicable to prior verion now SAP has come up with Extended withhholding tax functionality which is having better functionalities as compared to classic witholding tax .
secondly the TDS code that you have created for the consumer , you are saying that it is not deducting the amount in that case pl. check the following :
while assigning the with holding tax to co code you have put a tick on the agent as consumer .
for calculating the tax on TDS to be payable if the amount is more than 5000 in that case you can make user of the formula function provided by SAP for the same .
Hope now the things are clear for you , do revert back in case you are stuck up somewhere or are unable to find the right configuration node for the same .
Cheers ,
dewang -
Customer wise TDS Receivable Report
hi,
Our Client requirement is to get customer wise TDS Receivable Report. As of now they are passing manual entry whenever they get the TDS certificate from the customer.
Is it possible to configure in SAP to pass automatic entry for TDS receivable report.Dear Vijay
I think there is no configuration for TDS receivable, but we can capture the tax amount in expenses account while sales invoice posting (same as cash discount procedure) and see the report in Tax expenses account.
Regards
Sridhara Rao D
Edited by: Sridhara Rao.D on Oct 1, 2011 3:49 PM -
What is the process for EBS when customer directly deposits the payment in
Hi,
Please tell me the process for EBS when customer deposits the payment in bank
1) via Cheque
2) via Bank Transfer
Can we clear the open items automatically if yes, then how please tell me how to map it so that it can be cleared when we have EBS?
Thanks and Regards
NitinHi Expert,
Please select the Standard algorithm - 001 and don't change any settings in EBS, Just follow the below steps:
Just configure the below steps:
1. Delete Bank Statement Test Data in T-Code: SE38
PROGRAM - RFEBKA96
Execute
On the Delete Buffer screen, enter the following data:
Field name User action and values
ANWND 0001
Choose Execute to continue.
On the Delete Buffer screen, select the bank statement files to be deleted and choose the Delete statements button.
By this Step the Result is:
The bank statement previously created is deleted, thus allowing you to re-create the current dayu2019s bank statement.
2. Create BAI File
Use this step, you create the bank statement input file.
Prerequisites: You must delete the existing bank statement file to create a new bank statement.
Procedure
Go to T-Code:SE38
Program - RFEBKAT5
Choose Execute to continue.
On the General test data for BAI bank statement and create open items screen, enter the necessary data.
Description User action and values Comment
EOD Select
EOD File name RECON1
Company code XXXX
House Bank ABC
House Bank Account 1234XXXXX
Posting Offset Account 111000(Provide Offset Account)
Statement date Yesterdayu2019s date
Invoice date Yesterdayu2019s date
Generate items Select this field
Open items 2(Provide the Open Items)
Last w/diff Select this field
Extrn/Trns 165
Amount 1000
Customer XYZ(Provide the Customer Account)
Increase by 50
Document type DR
With bank details Select this field
Debit posting key 01
With ref. data Select this field
Credit posting key 50
XBLNR Select this field
Generate items Select this field
Debit posting key 40
Document type SA
Credit posting key 50
Specific Select this button
Checks Out 575 ++++++++07 58.5! Exclamation mark goes in 2nd column
Funds Out 495 ++++++++01 1500 200200665757699
Funds In 398 ++++++++08 150 BANK CHARGE
Choose Execute to continue.
Result
The BAI file is displayed.
3. Execute Bank Statement Reconciliation Program
T-Code: FF.5
Field name Description User action and values
Import data Select
Workstation upload Deselect
FEBFORMAT Elect. bank statement format A
FEBAUSZF Statement file RECON1
FEBFILTER2 XBLNR number interval 199900000000000 to 200099999999999
Print bank statement (Output controls tab) Select
Print posting log(Output controls tab) Select
Print statistics(Output controls tab) Select
Choose Execute to continue.
Result:The bank reconciliation program RFEBKA00 uploads the BAI file created in the previous step. As a result, the open items created in the previous step, have been cleared. You can display the journal entries of these postings by using transaction code FB03.
Regards,
GK
SAP -
Hi Experts,
I have requirement for Z report .
if we receive payment for multiple invoices in one cheque and if we are clearing multiple invoices at a time with tds in f-28.and here where as our requirement is client need Z report for bill wise collection.i am bit confused in which table this type of data is stored i want fetch bill wise collected amount and the tds amount for that respective invoices if user clears multiple invoices at a time. can any help me in which table this data is stored.
Regards
DiwaHi Ravi,
Thanks for immediate response !
As i said earlier we are processing multiple invoices with one payment along with this we are posting tds amount directly to tds Gl account here we are not updating any tds tax codes in customer data so tds table will not get updated.
For ex:
we have posted 2 sales invoice for 100000 and 50000 and at invoice level we are not capturing any tds amount.
accounting entry is as below
Revenue ....Dr 100000
Customer cr...10000
Revenue....Dr 50000
Customer...Cr 50000
when we are receiving payment we have received payment for two invoices 145000 by deducting TDS.
where we are processing F-28 we are clearing both invoices at a time and we are posting tds amount for tds gl account along with payment.
Accounting entry as below
BANK....Dr 145000
TDS.....Dr 5000
Customer ..Cr 150000
Here client requires bill wise collection amount and bill wise tds deducted amount.from which tables i can get this details.can you please guide me.
Regards
Diwa -
Dear All
My client receives Security Deposit from its Customers and pay Interest to them. Due to this, it has to deduct TDS also on the Interest Paid.
Should I assign the same Withholding Tax types and Codes as created for the Vendor , in the Customer Master Record. Then How to generate Remittance Challan for the customer. This is because in J1INCHLN - Create Remittance Challan , there is no Customer Field.
Please guide me ..
Thanks and Regards
KanwaljitHi
Basically, J1INCHLN is used for making the payment of TDS which we have deduced from the vendor.
I would suggest you to check whether payment of such interest attracts the TDS provisions.
And if it attracts TDS, then create the customer as your vendor by giving the customer reference while creating the vendor.
And thereafter you can use the TDS functionality.
Regards,
Kapil -
How do we do conversion of customer deposits. In the functional spec what document type we need to provide to bring in the deposits. I dont see any document type for down payment. Do we use transaction code F-29 in place of F-22 or FB01 to bring in deposits from legacy to sap. In this case can we use the same offsett account for customer balance conversion that we are using for customer open invoices??
Thanks
LakshmiAshish,
So you mean to say that we create only one customer balance migration account and it can be used for both customer open invoices as well as deposits. Is my understanding correct?
Also Ashish can you please tell me when I am transporting chart of accoutns from one client to another vis OBY9, only the accounts created in chart of accounts are transported and not the company codes accounts. What is the way of transporting them so that they get transported in COA as well as Co. Code.
Thanks
Lakshmi -
At the time of Rebate TDS was not calculate.
Hello Experts,
At time of Rebate (SD) to the customer that time client wants calculate TDS (Sec.194H) i have assign TDS Tax code in Customer master (FD02). After that made the entry of Rebate. when i see the display entry no was TDS calculate.
waiting for reply.
Reliable answer get full points.
Thanks
JemesHello Sir
i have check & tick on When assigning withholding tax code to company code choose subject to withholding tax under customer tab. there are two tab :
This is all ready tick - Subject to withholding tax
I have to tick - Self-withholding agent
And also check Field Status Group : Plz explain in FSG ?
But still at the time of Rebate or Credit memo no TDS is calculate ?
Plz let me know what should i do ? explain in brief
Thanks
Jemes -
how to refund the TDS after salary run before depositing to Income tax deptt
skjaindHi
Modify the PCR INVT as per your requrirement.
Cheers ! -
Balance interest calculation on spl gl items of customers
Hi Everybody,
I am strucking with a problem in FI. That is calulation of balance interest on spl gl transactions in customer.
Actually we have customer deposits which are booked as downpayments. Here we have to pay an interest of 6% which is also cumulative one. Now my requirement is I have to calculate balance interest on this deposit with 6% interest. I made the following configs.
Created one Indicator for balance interest with S ob46
Defined No.ranges.
Preparations for balance interest obaa
Spl gl assignment in obab
Maintained reference int rates at obac
Time based terms ob81
interest values ob83
posting Entered the following
1000
co code all() int indi all()
debit 01 1000 customer posting
credit 50 0001 int received
1000
co code 1000
debit 40 0002 interest paid
credit 01 1000 customer posting.
and indicator assigned in cu master record
and int calc done in f.26 balance interest
but it is not getting calculated on spl gl items
Please could you people help me in this regard as soon as possible.Hi
Did u assign the Spl GL Downpayment settings. Whethere it is vendor or customer assign the spl gl indicatior for down payments.
Hope this is helpful to u.
Shammi -
Urgent could u plz clear my doubut
While copying the code for Z_CREATE_PDF program (which is getting submit from main program ZSDL_393_REASON_CODE_REPORT, we have noticed some issue:
There are 2 Function Modules 'Z_CONVERT_ABAPSPOOLJOB_2_PDF' and 'Z_CONVERT_OTFSPOOLJOB_2_PDF' being called from Z_CREATE_PDF program, which are not yet copied to RD2 server. When I checked in PF server, there is Custom Function Group ZSMS developed under which these function modules are created.
There are many other Function Modules, screens and includes under this Function Group.
Please advise whether we need to copy all the objects under this Function Group in RD2 as well, or some other work around is possible. Please note that this part is related to just the PDF File Creation on selection screen of main program.
TABLES:
bkpf,
bseg.
DATA: "Internal tables
BEGIN OF x_bkpf,
bukrs LIKE bkpf-bukrs, "Company Code
belnr LIKE bkpf-belnr, "Document Number
gjahr LIKE bkpf-gjahr, "Fiscal Year
budat LIKE bkpf-budat, "Posting Date
xblnr LIKE bkpf-xblnr, "Reference "PG01+
blart LIKE bkpf-blart, "Document Type "DB05+
END OF x_bkpf,
t_bkpf LIKE HASHED TABLE OF x_bkpf
WITH UNIQUE KEY bukrs belnr gjahr
WITH HEADER LINE,
BEGIN OF t_bseg OCCURS 0,
bukrs LIKE bseg-bukrs, "Company Code
belnr LIKE bseg-belnr, "Document Number
gjahr LIKE bseg-gjahr, "Fiscal Year
shkzg LIKE bseg-shkzg, "Debit/Credit indicator
wrbtr LIKE bseg-wrbtr, "Amount in doc currency
sgtxt LIKE bseg-sgtxt, "Reason Desc
hkont LIKE bseg-hkont, "G/L Account
kunnr LIKE bseg-kunnr, "Customer number
rstgr LIKE bseg-rstgr, "Reason Code
prctr LIKE bseg-prctr, "Business Unit (SBU)
xref1 LIKE bseg-xref1, "Ref Key 1 "PG01+
zloc LIKE bseg-zloc, "Location
zexp LIKE bseg-zexp, "Expense
zdtl LIKE bseg-zdtl, "Detail
END OF t_bseg,
Table of customer records from bseg (1 for each in T_BSEG)
BEGIN OF t_kunnr OCCURS 0,
bukrs LIKE bseg-bukrs, "Company Code
belnr LIKE bseg-belnr, "Document Number
gjahr LIKE bseg-gjahr, "Fiscal Year
kunnr LIKE bseg-kunnr, "Customer number
END OF t_kunnr,
BEGIN OF t_rstgr_sum OCCURS 0,
rstgr LIKE bseg-rstgr, "Reason Code
sgtxt LIKE bseg-sgtxt, "Reason Desc
wrbtr LIKE bseg-wrbtr, "Sum for a Reason Code
END OF t_rstgr_sum,
BEGIN OF t_hkont_sum OCCURS 0,
hkont LIKE bseg-hkont, "GL Account
wrbtr LIKE bseg-wrbtr, "Sum for a GL Account
END OF t_hkont_sum.
DATA: "Standalone work fields
sum_wrbtr LIKE bseg-wrbtr,
grand_wrbtr LIKE bseg-wrbtr,
save_rstgr LIKE t_bseg-rstgr,
save_sgtxt LIKE t_bseg-sgtxt, "PG02+
save_hkont LIKE t_bseg-hkont,
first_reason TYPE c,
first_glacct TYPE c,
detail_section TYPE c,
amount_out LIKE t_bseg-wrbtr,
l_rstgr LIKE t053r-rstgr.
Start of RC03
DATA:
valid TYPE c,
params LIKE pri_params,
job_released LIKE btch0000-char1,
job_name LIKE tbtcjob-jobname,
job_count LIKE tbtcjob-jobcount.
DATA:
BEGIN OF t_kna1 OCCURS 0,
kunnr LIKE kna1-kunnr,
knrza LIKE kna1-knrza,
END OF t_kna1.
DATA:
s_monat1 LIKE bkpf-monat,
s_monat2 LIKE bkpf-monat,
s_monat3 LIKE bkpf-monat,
s_monat4 LIKE bkpf-monat,
s_monat5 LIKE bkpf-monat,
s_monat6 LIKE bkpf-monat,
s_monat7 LIKE bkpf-monat,
s_monat8 LIKE bkpf-monat,
s_monat9 LIKE bkpf-monat,
s_monat10 LIKE bkpf-monat,
s_monat11 LIKE bkpf-monat,
s_monat12 LIKE bkpf-monat,
s_monatlow LIKE bkpf-monat, "DB05+
s_monathigh LIKE bkpf-monat. "DB05+
End of RC03
CONSTANTS:
c_company_code(4) VALUE 'PF01'.
RANGES:
r_rstgr FOR bseg-rstgr.
SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.
PARAMETERS: p_gjahr LIKE bkpf-gjahr OBLIGATORY.
SELECT-OPTIONS: s_monat FOR bkpf-monat OBLIGATORY, "RC03+ "DB05+
s_blart FOR bkpf-blart OBLIGATORY, "DB05+
s_budat FOR bkpf-budat. "PG01+
SELECT-OPTIONS: s_hkont FOR bseg-hkont,
s_rstgr FOR bseg-rstgr.
SELECTION-SCREEN END OF BLOCK b1.
SELECTION-SCREEN BEGIN OF BLOCK b2 WITH FRAME TITLE text-026.
PARAMETERS: p_pdf AS CHECKBOX.
SELECTION-SCREEN END OF BLOCK b2.
*Start of RC03
PARAMETERS:
backgr(1) TYPE c DEFAULT 'X' MODIF ID dsp,
process(1) TYPE c MODIF ID dsp.
AT SELECTION-SCREEN OUTPUT.
LOOP AT SCREEN.
IF screen-group1 = 'DSP'.
screen-active = '0'.
MODIFY SCREEN.
ENDIF.
ENDLOOP.
*End of RC03
Print page headers *
TOP-OF-PAGE.
PERFORM page_header.
START-OF-SELECTION.
Start Processing
IF process = 'X'.
PERFORM main.
ENDIF.
Submit background job
IF backgr = 'X'.
job_name = 'Reason Code Report'.
MESSAGE s000 WITH 'Background job has been submitted.'.
PERFORM background.
ENDIF.
PDF creation
IF p_pdf = 'X'. "RC04
SUBMIT zsdl_393_create_pdf
VIA SELECTION-SCREEN AND RETURN. "RC04
ENDIF. "RC04
FORM main.
Load Data into internal tables *
*SELECT bukrs belnr gjahr budat FROM bkpf "PG01-
*SELECT bukrs belnr gjahr budat xblnr FROM bkpf "PG01+ "DB05-
SELECT bukrs belnr gjahr blart budat xblnr FROM bkpf "DB05+
INTO CORRESPONDING FIELDS OF TABLE t_bkpf
WHERE gjahr = p_gjahr "Fiscal Year
AND monat = p_monat "Posting Period "RC03-
AND monat IN s_monat "Posting Period "RC03+
AND blart IN s_blart "Document Type "DB05+
AND budat IN s_budat. "Posting Date "PG01+
*AND (blart = 'AB' OR blart = 'DZ' OR blart = 'ZO' ). "DB05-
IF NOT t_bkpf[] IS INITIAL.
If the user selected specific Reason Codes, use that range...
Otherwise, create a range of valid Reason Codes from table T053R.
IF s_rstgr IS INITIAL.
READ TABLE t_bkpf INDEX 1. "Get first record for company code
SELECT rstgr FROM t053r
INTO l_rstgr
WHERE bukrs = c_company_code.
r_rstgr-sign = 'I'. "Include
r_rstgr-option = 'EQ'. "where values equal
r_rstgr-low = l_rstgr. "comparison field
APPEND r_rstgr.
ENDSELECT.
ELSE.
r_rstgr[] = s_rstgr[].
ENDIF.
*--- This section removed b/c of TDS review
SELECT bukrs belnr shkzg wrbtr sgtxt hkont
kunnr rstgr prctr zloc zexp zdtl
FROM bseg
INTO CORRESPONDING FIELDS OF t_bseg
FOR ALL ENTRIES IN t_bkpf
WHERE bukrs = t_bkpf-bukrs "Company code
AND belnr = t_bkpf-belnr "Doc#
AND hkont IN s_hkont "Account# range
AND rstgr IN r_rstgr. "Reason Code range
Override blank Customer number in table from BSEG record.
SELECT SINGLE kunnr FROM bseg
INTO t_bseg-kunnr
WHERE bukrs = t_bkpf-bukrs
AND belnr = t_bkpf-belnr
AND gjahr = t_bkpf-gjahr
AND koart = 'D'.
if sy-subrc > 0.
t_bseg-kunnr = ' '.
endif.
APPEND t_bseg.
ENDSELECT.
*--- End of TDS review removal
*--- This is the new section added b/c of the TDS review
SELECT bukrs belnr gjahr shkzg wrbtr sgtxt hkont
kunnr rstgr prctr zloc zexp zdtl "PG01-
kunnr rstgr prctr xref1 "zloc zexp zdtl "PG01+
FROM bseg
INTO CORRESPONDING FIELDS OF TABLE t_bseg
FOR ALL ENTRIES IN t_bkpf
WHERE bukrs = t_bkpf-bukrs "Company code
AND belnr = t_bkpf-belnr "Doc#
AND hkont IN s_hkont "Account# range
AND rstgr IN r_rstgr. "Reason Code range
Retrieve records from BSEG which have the Customer number
SELECT bukrs belnr gjahr kunnr FROM bseg
INTO CORRESPONDING FIELDS OF TABLE t_kunnr
FOR ALL ENTRIES IN t_bkpf
WHERE bukrs = t_bkpf-bukrs
AND belnr = t_bkpf-belnr
AND gjahr = t_bkpf-gjahr
AND koart = 'D'.
*--- End of TDS review addition
*->Start of RC03
SELECT kunnr
knrza
FROM kna1
INTO TABLE t_kna1
FOR ALL ENTRIES IN t_kunnr
WHERE kunnr = t_kunnr-kunnr.
SORT t_kna1 BY kunnr.
*->End of RC03
ENDIF. "t_bkpf has records in it
MAINLINE - Write Report Details *
detail_section = 'Y'. "Write column headers
NEW-PAGE.
CLEAR sum_wrbtr.
SORT t_bkpf BY bukrs belnr.
MAINLINE - LOOP THROUGH INTERNAL TABLE & PROCESS REPORT.
SORT t_bseg BY rstgr belnr.
LOOP AT t_bseg.
ON CHANGE OF t_bseg-rstgr.
IF sy-tabix <> 1. "If not first time
PERFORM write_detail_subtotal.
ENDIF.
CLEAR sum_wrbtr. "Clear sum for next reason code.
save_rstgr = t_bseg-rstgr.
save_sgtxt = t_bseg-sgtxt. "PG02+
ENDON.
Set amount field, add to sum, and print detail line.
amount_out = t_bseg-wrbtr.
IF t_bseg-shkzg = 'H'.
MULTIPLY amount_out BY -1.
ENDIF.
sum_wrbtr = sum_wrbtr + amount_out.
PERFORM write_detail_line.
Add amount to GL Account total internal table
CLEAR t_hkont_sum-hkont.
CLEAR t_hkont_sum-wrbtr.
READ TABLE t_hkont_sum WITH KEY hkont = t_bseg-hkont.
t_hkont_sum-wrbtr = t_hkont_sum-wrbtr + amount_out.
IF sy-subrc = 0. "GL Account already found.
MODIFY t_hkont_sum INDEX sy-tabix. "Modify existing itab record
ELSE.
t_hkont_sum-hkont = t_bseg-hkont. "Set Account# itab key field
APPEND t_hkont_sum.
ENDIF.
AT LAST.
PERFORM write_detail_subtotal.
ENDAT.
ENDLOOP.
FREE t_bkpf.
FREE t_bseg.
detail_section = 'N'. "Suppress column headers
PERFORM write_summary. "Print Summary page by Reason & GL Account
ENDFORM. " main
*& Form page_header
text
--> p1 text
<-- p2 text
FORM page_header.
Start of RC03
LOOP AT s_monat.
CASE sy-tabix.
WHEN 1.
s_monat1 = s_monat-low.
s_monatlow = s_monat-low. "DB05+
s_monathigh = s_monat-high. "DB05+
WHEN 2.
s_monat2 = s_monat-low.
WHEN 3.
s_monat3 = s_monat-low.
WHEN 4.
s_monat4 = s_monat-low.
WHEN 5.
s_monat5 = s_monat-low.
WHEN 6.
s_monat6 = s_monat-low.
WHEN 7.
s_monat7 = s_monat-low.
WHEN 8.
s_monat8 = s_monat-low.
WHEN 9.
s_monat9 = s_monat-low.
WHEN 10.
s_monat10 = s_monat-low.
WHEN 11.
s_monat11 = s_monat-low.
WHEN 12.
s_monat12 = s_monat-low.
ENDCASE.
ENDLOOP.
End of RC03
CALL FUNCTION 'Z_STANDARD_REPORT_HEADER'
EXPORTING
report_name = sy-cprog
report_width = sy-linsz
report_title = 'Reason Code Summary'.
SKIP.
Print selected Fiscal Year
WRITE AT: /51 text-002,
66 p_gjahr.
Print selected Fiscal Period
WRITE AT: /51 text-003. "DB05
66 p_monat. "RC03-
Start of RC03
IF s_monathigh = 0. "DB05+
WRITE AT: 66 s_monat1 NO-ZERO,
69 s_monat2 NO-ZERO,
72 s_monat3 NO-ZERO,
75 s_monat4 NO-ZERO,
78 s_monat5 NO-ZERO,
81 s_monat6 NO-ZERO,
/66 s_monat7 NO-ZERO,
69 s_monat8 NO-ZERO,
72 s_monat9 NO-ZERO,
75 s_monat10 NO-ZERO,
78 s_monat11 NO-ZERO,
81 s_monat12 NO-ZERO.
ELSE. "DB05+
WRITE AT: 66 s_monatlow NO-ZERO, "DB05+
69 '-', "DB05+
71 s_monathigh NO-ZERO, "DB05+
74 s_monat2 NO-ZERO, "DB05+
77 s_monat3 NO-ZERO, "DB05+
80 s_monat4 NO-ZERO, "DB05+
83 s_monat5 NO-ZERO, "DB05+
/66 s_monat6 NO-ZERO, "DB05+
69 s_monat7 NO-ZERO, "DB05+
72 s_monat8 NO-ZERO, "DB05+
75 s_monat9 NO-ZERO, "DB05+
78 s_monat10 NO-ZERO, "DB05+
81 s_monat11 NO-ZERO, "DB05+
84 s_monat12 NO-ZERO. "DB05+
ENDIF. "DB05+
*End of RC03
Print selected Posting Date range
WRITE AT: /51 text-022. "PG01+
IF s_budat IS INITIAL. "PG01+
WRITE AT: 66 'All'. "PG01+
ELSE. "PG01+
WRITE AT: 66 s_budat-low, "PG01+
77 '-', "PG01+
79 s_budat-high. "PG01+
ENDIF. "PG01+
SKIP.
SKIP.
If we are in the detail section of the report, print column headers.
IF detail_section = 'Y'.
WRITE AT: /21 text-004,
34 t_bseg-rstgr,
39 text-005,
52 t_bseg-sgtxt.
SKIP.
WRITE AT: /1 text-006, "Doc Number"
13 text-007, "Business Unit" "DB05-
28 text-008, "Location" "DB05-
38 text-009, "Account" "DB05-
50 text-010, "Expense" "DB05-
59 text-011, "Detail" "DB05-
69 text-012, "Customer" "DB05-
81 text-025, "Alt Payer "DB05-
93 text-023, "Reference "PG01+ "DB05-
111 text-024, "Ref Key 1 "PG01+ "DB05-
81 text-013, "Amount" "PG01- "DB05-
99 text-014. "Posting Date" "PG01- "DB05-
125 text-013, "Amount" "PG01+ "DB05-
143 text-014. "Posting Date" "PG01+ "DB05-
13 text-027, "Doc Type" "DB05+
23 text-007, "Business Unit" "DB05+
38 text-008, "Loc" "DB05+
44 text-009, "Account" "DB05+
56 text-010, "Exp" "DB05+
61 text-011, "Detail" "DB05+
71 text-012, "Customer" "DB05+
83 text-025, "Alt Payer "DB05+
95 text-023, "Reference "PG01+ "DB05+
113 text-024, "Ref Key 1 "PG01+ "DB05+
127 text-013, "Amount" "PG01+ "DB05+
145 text-014. "Posting Date" "PG01+ "DB05+
WRITE AT: /1 '----
', "Underline Doc Number
13 '-------------', "Underline Business Unit "DB05-
28 '--------', "Underline Location "DB05-
38 '----------', "Underline Account "DB05-
50 '-------', "Underline Expense "DB05-
59 '--------', "Underline Detail "DB05-
69 '----------', "Underline Customer "DB05-
81 '----------', "Underline Alternate payer "DB05-
93 '----------------', "Underline Reference "DB05-
111 '------------', "Underline Ref Key 1 "DB05-
125 '----------------', "Underline Amount "DB05-
143 '------------'. "Underline Posting Date "DB05-
13 '----
', "Underline Doc Type "DB05+
23 '----
', "Underline Business Unit "DB05+
38 '----', "Underline Loc "DB05+
44 '----
', "Underline Account "DB05+
56 '---', "Underline Exp "DB05+
61 '----
', "Underline Detail "DB05+
71 '----
', "Underline Customer "DB05+
83 '----
', "Underline Alternate payer "DB05+
95 '----
', "Underline Reference "DB05+
113 '----
', "Underline Ref Key 1 "DB05+
127 '----
', "Underline Amount "DB05+
145 '----
'. "Underline Posting Date "DB05+
*->Start RC03
81 '----------------', "Underline Reference "PG01+
99 '------------', "Underline Ref Key 1 "PG01+
81 '----------------', "Underline Amount "PG01-
99 '------------'. "Underline Posting Date "PG01-
113 '----------------', "Underline Amount "PG01+
131 '------------'. "Underline Posting Date "PG01+
End RC03
SKIP.
ENDIF.
ENDFORM. " page_header
*& Form Write_Detail_Line
Print a detail line.
--> p1 text
<-- p2 text
FORM write_detail_line.
Retrieve the Posting Date from the header table (BUDAT)
READ TABLE t_bkpf
WITH TABLE KEY bukrs = t_bseg-bukrs
belnr = t_bseg-belnr
gjahr = t_bseg-gjahr.
*--- This is a new section added b/c of the TDS review
Retrieve the Customer number from the 'D' BSEG records
READ TABLE t_kunnr
WITH KEY bukrs = t_bseg-bukrs
belnr = t_bseg-belnr
gjahr = t_bkpf-gjahr.
IF sy-subrc <> 0.
t_kunnr-kunnr = 9999999999.
ENDIF.
*--- End of TDS review addition
*Start of RC03
CLEAR t_kna1.
READ TABLE t_kna1 WITH KEY kunnr = t_kunnr-kunnr.
*End of RC03
WRITE AT: /1 t_bseg-belnr,
13 t_bseg-prctr, "DB05-
28 t_bseg-zloc, "DB05-
38 t_bseg-hkont, "DB05-
50 t_bseg-zexp, "DB05-
59 t_bseg-zdtl, "DB05-
*TDS- 69 t_bseg-kunnr, "DB05-
69 t_kunnr-kunnr, "TDS+ "DB05-
81 t_kna1-knrza, "Alt payer "RC03+ "DB05-
93 t_bkpf-xblnr, "Reference "PG01+ "DB05-
111 t_bseg-xref1, "Ref Key 1 "PG01+ "DB05-
81 amount_out, "PG01- "DB05-
99 t_bkpf-budat. "PG01- "DB05-
125 amount_out, "PG01+ "DB05-
143 t_bkpf-budat. "PG01+ "DB05-
13 t_bkpf-blart, "DB05+
23 t_bseg-prctr, "DB05+
38 t_bseg-zloc, "DB05+
44 t_bseg-hkont, "DB05+
56 t_bseg-zexp, "DB05+
61 t_bseg-zdtl, "DB05+
71 t_kunnr-kunnr, "TDS+ "DB05+
83 t_kna1-knrza, "Alt payer "RC03+ "DB05+
95 t_bkpf-xblnr, "Reference "PG01+ "DB05+
113 t_bseg-xref1, "Ref Key 1 "PG01+ "DB05+
127 amount_out, "PG01+ "DB05+
145 t_bkpf-budat. "PG01+ "DB05+
ENDFORM. " Write_Detail_Line
*& Form Write_Detail_Subtotal
Write the Reason Code subtotal line for the detail section.
--> p1 text
<-- p2 text
FORM write_detail_subtotal.
WRITE AT: /81 '----------------'. "PG01-
WRITE AT: /56 text-015, "PG01-
81 sum_wrbtr. "PG01-
WRITE AT: /81 '----------------'. "PG01-
WRITE AT: /81 '----------------'. "PG01-
WRITE AT: /125 '----------------'. "PG01+ "DB05-
WRITE AT: /56 text-015, "PG01+ "DB05-
125 sum_wrbtr. "PG01+ "DB05-
WRITE AT: /125 '----------------'. "PG01+ "DB05-
WRITE AT: /125 '----------------'. "PG01+ "DB05-
WRITE AT: /127 '----
'. "PG01+ "DB05+
WRITE AT: /56 text-015, "PG01+ "DB05+
127 sum_wrbtr. "PG01+ "DB05+
WRITE AT: /127 '----
'. "PG01+ "DB05+
WRITE AT: /127 '----
'. "PG01+ "DB05+
NEW-PAGE.
Add the total for this reason code to an internal table
for printing the Summary Page at the end.
CLEAR t_rstgr_sum-rstgr.
CLEAR t_rstgr_sum-wrbtr.
t_rstgr_sum-rstgr = save_rstgr.
t_rstgr_sum-sgtxt = save_sgtxt. "PG02+
t_rstgr_sum-wrbtr = sum_wrbtr.
APPEND t_rstgr_sum.
ENDFORM. " Write_Detail_Subtotal
*& Form Write_Summary
Prints the Summary section at the end of the report
--> p1 text
<-- p2 text
FORM write_summary.
NEW-PAGE.
WRITE AT: /20 text-016.
SKIP.
Print Summary by Reason Code
WRITE AT: /20 text-017. "Reason Code Description Total"
SKIP.
CLEAR grand_wrbtr.
LOOP AT t_rstgr_sum.
grand_wrbtr = grand_wrbtr + t_rstgr_sum-wrbtr.
IF first_reason IS INITIAL.
WRITE AT: /27 t_rstgr_sum-rstgr,
33 text-021, "Dollar sign ($) "PG02-
34 t_rstgr_sum-wrbtr. "PG02-
33 t_rstgr_sum-sgtxt,
83 text-021, "Dollar sign ($) "PG02+
84 t_rstgr_sum-wrbtr.
first_reason = 'N'.
ELSE.
WRITE AT: /27 t_rstgr_sum-rstgr,
34 t_rstgr_sum-wrbtr. "PG02-
33 t_rstgr_sum-sgtxt,
84 t_rstgr_sum-wrbtr.
ENDIF.
ENDLOOP.
PERFORM grand_total.
SKIP.
SKIP.
SKIP.
Print Summary by GL Account
WRITE AT: /20 text-018. "GL Account Total"
SKIP.
CLEAR grand_wrbtr.
LOOP AT t_hkont_sum.
grand_wrbtr = grand_wrbtr + t_hkont_sum-wrbtr.
IF first_glacct IS INITIAL.
WRITE AT: /22 t_hkont_sum-hkont,
83 text-021, "Dollar sign ($)
84 t_hkont_sum-wrbtr.
first_glacct = 'N'.
ELSE.
WRITE AT: /22 t_hkont_sum-hkont,
84 t_hkont_sum-wrbtr.
ENDIF.
ENDLOOP.
PERFORM grand_total.
ENDFORM. " Write_Summary
*& Form Grand_Total
*& Replaced below by mod PG02.
Writes Grand Total lines of the two summary page sections.
--> p1 text
<-- p2 text
*FORM grand_total.
*SKIP.
*WRITE AT: /33 text-020. "16 dashes (for underlining)
*WRITE AT: /19 text-019, "Grand Total"
33 text-021, "Dollar sign ($)
34 grand_wrbtr.
*WRITE AT: /33 text-020. "16 dashes (for underlining)
*WRITE AT: /33 text-020. "16 dashes (for underlining)
*SKIP.
*ENDFORM. " Grand_Total
*& Form Grand_Total
*& New column numbers by mod PG02
Writes Grand Total lines of the two summary page sections.
--> p1 text
<-- p2 text
FORM grand_total.
SKIP.
WRITE AT: /83 text-020. "16 dashes (for underlining)
WRITE AT: /19 text-019, "Grand Total"
83 text-021, "Dollar sign ($)
84 grand_wrbtr.
WRITE AT: /83 text-020. "16 dashes (for underlining)
WRITE AT: /83 text-020. "16 dashes (for underlining)
SKIP.
ENDFORM. " Grand_Total
*& Form background
text
--> p1 text
<-- p2 text
FORM background.
*Get print parameters
CALL FUNCTION 'GET_PRINT_PARAMETERS'
EXPORTING
immediately = ' '
no_dialog = 'X'
IMPORTING
out_parameters = params
valid = valid.
*Job Open
CALL FUNCTION 'JOB_OPEN'
EXPORTING
jobname = job_name
sdlstrtdt = sy-datum
sdlstrttm = sy-uzeit
IMPORTING
jobcount = job_count
EXCEPTIONS
cant_create_job = 1
invalid_job_data = 2
jobname_missing = 3
OTHERS = 4.
*Background job submittion
SUBMIT zsdl_393_reason_code_report
WITH p_gjahr = p_gjahr
WITH s_monat IN s_monat
WITH s_blart IN s_blart
WITH s_budat IN s_budat
WITH s_hkont IN s_hkont
WITH s_rstgr IN s_rstgr
WITH backgr = ' '
WITH process = 'X'
VIA JOB job_name
NUMBER job_count
AND RETURN.
*Job Close
CALL FUNCTION 'JOB_CLOSE'
EXPORTING
jobcount = job_count
jobname = job_name
strtimmed = 'X'
targetsystem = sy-host
IMPORTING
job_was_released = job_released
EXCEPTIONS
cant_start_immediate = 1
invalid_startdate = 2
jobname_missing = 3
job_close_failed = 4
job_nosteps = 5
job_notex = 6
lock_failed = 7
OTHERS = 8.
ENDFORM. " background
this is a report of pdf
theres is one pdf file could u plz explain this
TABLES: tsp01,
knvh,
scal,
p0001.
I N T E R N A L T A B L E S *
DATA: int_spo LIKE tsp01 OCCURS 100 WITH HEADER LINE.
DATA: int_tsp01p LIKE tsp01psy OCCURS 100 WITH HEADER LINE.
DATA: otf LIKE itcoo OCCURS 100 WITH HEADER LINE.
DATA: pdf LIKE tline OCCURS 100 WITH HEADER LINE.
DATA: doctab LIKE docs OCCURS 1 WITH HEADER LINE.
DATA: int_xpm LIKE btcxpm OCCURS 100 WITH HEADER LINE.
DATA: cancel.
DATA: BEGIN OF int_knvh OCCURS 100,
kunnr LIKE knvh-kunnr,
hkunnr LIKE knvh-hkunnr.
DATA: END OF int_knvh.
DATA: BEGIN OF db_tab OCCURS 100,
filenam(128) TYPE c.
DATA: END OF db_tab.
D A T A C O N S T A N T S *
DATA: numbytes TYPE i,
arc_idx LIKE toa_dara,
pdfspoolid LIKE tsp01-rqident,
rq2name(12) TYPE n,
rqcretime LIKE tsp01-rqcretime,
hkunnr LIKE knvh-hkunnr,
hreffile(30) TYPE c,
jobname LIKE tbtcjob-jobname,
jobcount LIKE tbtcjob-jobcount,
counter LIKE syst-tabix,
g_count(4) TYPE n,
g_path LIKE rlgrap-filename,
g_filename TYPE string.
DATA: client LIKE tst01-dclient,
name LIKE tst01-dname,
objtype LIKE rststype-type,
type LIKE rststype-type,
dblink LIKE rlgrap-filename,
bothpath LIKE rlgrap-filename,
add_param LIKE sxpgcolist-parameters,
icon_note(5).
DATA: date LIKE scal-date,
weekday LIKE scal-indicator,
days LIKE t5a4a-dlydy,
months LIKE t5a4a-dlymo,
years LIKE t5a4a-dlyyr,
saturday LIKE p0001-begda.
P A R A M E T E R S & S E L E C T - O P T I O N S *
SELECTION-SCREEN BEGIN OF BLOCK box WITH FRAME TITLE text-001.
PARAMETERS: p_client LIKE tsp01-rqclient DEFAULT syst-mandt.
SELECT-OPTIONS: s_spool FOR tsp01-rqident,
s_rqdate FOR sy-datum,
s_otptd FOR tsp01-rqdest NO INTERVALS.
SELECT-OPTIONS: p_rqnam1 FOR tsp01-rq0name NO INTERVALS,
p_rqnam2 FOR tsp01-rq1name NO INTERVALS,
p_rqnam3 FOR tsp01-rq2name NO INTERVALS,
s_rqownr FOR tsp01-rqowner NO INTERVALS,
s_rqtitl FOR tsp01-rqtitle NO INTERVALS.
SELECTION-SCREEN SKIP.
Block PDF description
SELECTION-SCREEN BEGIN OF BLOCK desc WITH FRAME TITLE text-017.
SELECTION-SCREEN BEGIN OF LINE.
PARAMETERS: p_sfx12 RADIOBUTTON GROUP two.
SELECTION-SCREEN COMMENT 4(27) text-022.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
PARAMETERS: p_sfx2 RADIOBUTTON GROUP two.
SELECTION-SCREEN COMMENT 4(27) text-018.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
PARAMETERS: p_titl RADIOBUTTON GROUP two.
SELECTION-SCREEN COMMENT 4(27) text-019.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
PARAMETERS: p_cust RADIOBUTTON GROUP two.
SELECTION-SCREEN COMMENT 4(27) text-020.
PARAMETERS: pt_tcust(20) TYPE c.
SELECTION-SCREEN COMMENT 52(1) text-024.
PARAMETERS: p_incre AS CHECKBOX.
SELECTION-SCREEN COMMENT (20) text-021.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
PARAMETERS: p_date AS CHECKBOX.
SELECTION-SCREEN COMMENT 4(27) text-023.
*PARAMETERS: pt_date LIKE sy-datum DEFAULT sy-datum.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN END OF BLOCK desc.
*Block download
SELECTION-SCREEN BEGIN OF BLOCK options WITH FRAME TITLE text-003.
SELECTION-SCREEN BEGIN OF LINE.
PARAMETERS: p_unix RADIOBUTTON GROUP one.
SELECTION-SCREEN COMMENT 4(27) text-007.
PARAMETERS: p_unxpat LIKE rlgrap-filename.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
PARAMETERS: p_pcdwn RADIOBUTTON GROUP one.
SELECTION-SCREEN COMMENT 4(27) text-006.
PARAMETERS: p_pcpath LIKE rlgrap-filename.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
PARAMETERS: p_test AS CHECKBOX.
SELECTION-SCREEN COMMENT 4(27) text-008.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN END OF BLOCK options.
*Block Pointer file
SELECTION-SCREEN BEGIN OF BLOCK dbfile WITH FRAME TITLE text-016.
SELECTION-SCREEN BEGIN OF LINE.
PARAMETERS: p_point AS CHECKBOX.
SELECTION-SCREEN COMMENT 4(27) text-025.
PARAMETERS: p_dbfile LIKE rlgrap-filename.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN END OF BLOCK dbfile.
SELECTION-SCREEN END OF BLOCK box.
AT-SELECTION-SCREEN *
AT SELECTION-SCREEN ON pt_tcust.
IF p_cust = 'X' AND
pt_tcust IS INITIAL.
MESSAGE e000 WITH 'Please enter custom name'.
ENDIF.
AT SELECTION-SCREEN ON p_unxpat.
IF p_unix = 'X' AND
p_unxpat IS INITIAL.
MESSAGE e000 WITH 'Please enter Unix path'.
ENDIF.
AT SELECTION-SCREEN ON p_pcpath.
IF p_pcdwn = 'X' AND
p_pcpath IS INITIAL.
MESSAGE e000 WITH 'Please enter PC path'.
ENDIF.
AT SELECTION-SCREEN ON p_dbfile.
IF p_point = 'X' AND
p_dbfile IS INITIAL.
MESSAGE e000 WITH 'Please enter pointer file path in Unix'.
ENDIF.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_pcpath.
*Checks for the selected file
CALL FUNCTION 'WS_FILENAME_GET'
EXPORTING
mask = ',* ,*.'
mode = '0'
IMPORTING
filename = g_filename
EXCEPTIONS
inv_winsys = 1
no_batch = 2
selection_cancel = 3
selection_error = 4
OTHERS = 5.
IF sy-subrc = 0.
p_pcpath = g_filename.
ENDIF.
TOP OF PAGE *
TOP-OF-PAGE.
PERFORM page_header.
START OF SELECTION *
START-OF-SELECTION.
SELECT * FROM tsp01 CLIENT SPECIFIED WHERE rqident IN s_spool
AND rqclient EQ p_client
AND rqdest IN s_otptd
AND rq0name IN p_rqnam1
AND rq1name IN p_rqnam2
AND rq2name IN p_rqnam3
AND rqowner IN s_rqownr
AND rqtitle IN s_rqtitl.
CHECK tsp01-rqcretime(8) IN s_rqdate.
MOVE tsp01-rqident TO int_spo-rqident.
MOVE tsp01-rq0name TO int_spo-rq0name.
MOVE tsp01-rq1name TO int_spo-rq1name.
MOVE tsp01-rq2name TO int_spo-rq2name.
MOVE tsp01-rqtitle TO int_spo-rqtitle.
MOVE tsp01-rqcretime(8) TO int_spo-rqcretime.
MOVE tsp01-rqdest TO int_spo-rqdest.
APPEND int_spo.
ENDSELECT.
IF sy-subrc NE 0.
Invalid parameters entered! Please correct and re-execute.
MESSAGE s014(zz).
ENDIF.
END-OF-SELECTION.
CLEAR: int_spo.
SORT int_spo BY rqident rq2name.
LOOP AT int_spo.
Sapscript or list
PERFORM sapscript_or_list.
Define PDF description
PERFORM pdf_desc.
Option to download PDF files to local PC
Real-time or test mode
IF p_test <> 'X'.
IF p_pcdwn EQ 'X'.
PERFORM down_to_pc.
Option to download PDF files to Unix
ELSEIF p_unix = 'X'.
PERFORM down_to_unix.
ENDIF.
ENDIF.
Print report
Hello...
Create a new function group and required function module in the RD2 server using SE37. Enter the various parameters and exceptions, then cut and paste the code from one system to another. Create includes and use cut and paste to do that as well. -
A/R down payment invoice not allowing tax
Hi Experts,
We use SAP Business One 2007A PL-08. While posting A/R down payment with percentage on DPM (For example 50%), the system is not calculating GST on it though we put the GST tax code in the invoice.
Any idea how this can be resolved?
Is there a workaround for this?
Thank you,Thanks Gordon. As a workaround, we created a dummy item number for the GST to be input into the A/R Down payment invoice. The problem here is that when we add a line item for the GST using this item number, the G/L account is defaulting to customer deposits account and its now allowing us to change the G/L account to the relevant GST G/L. Is there a way we can change the G/L?
Please let me know!!
Thanks
Maybe you are looking for
-
Problem of connection with macbook pro and panasonic TV
Hello, I have a macbook pro and a panasonic TH-42PW*4. This TV has a VGA input. That's why I have bought a VGA adaptater and a VGA cable. However, when I have tried at home. I copied the video and I can see the name of the model of my TV on my macboo
-
Windows XP crashed and I need to reinstall it (through Bootcamp)
Geek Squad wants to charge me 130, but if I could do it myself that would be great. When I try to go to Windows a black screen with white text pops up saying that there is a corrupted file and that I can run the repair disk to TRY to fix the problem
-
FOLDER LEVEL RESTRICTION IN SOLMAN
SOLMAN PROJECT Dear All, I have to create a new project in Sol man (eg."Document"). The requirement is to upload all the documents of the project into Sol man. Documents are already classified module wise as IT,MM,SD,Mktg,E Biz etc. and stored in re
-
My Mac recently got a new hard drive and when I tried to reinstall my Design Premium CS3 programs off the disks nothing happens. It sits there trying to read it but ends up spitting it back out. I'm wondering if Adobe helps out someway in these cases
-
Unable to update Safari 6.0.4
Whenever I try to update Safari it says "Operatin has failed".....