Time delay error
I am currently programming in DasyLab using previously collected data. I continually get an error when using the time delay module that I am not sure what to do about. The Time Delay module works fine if I use a delay defined in units of blocks, but if I change to delaying the signal by units of samples or seconds, I get an error that reads "The data at one input of the module are of the wrong type." I have not changed the input, only the delay units (from blocks to samples or seconds). Why do I get this error? I have even started over with a blank page, using only my input data and a time delay, to make sure it wasn't anything else on my worksheet that was creating this error. Please advise.
Thank you.
Hello,
i have the same probleme with a 3gs and my brother with a 3g.
and i don't find any solution...
the time is not correct only for the receveid sms, for the sms that i send is correct instead.
with the other telephones the time is correct. I have the problem only with the iphone
Message was edited by: Buon-Luca
Message was edited by: Buon-Luca
Similar Messages
-
Dear Team,
Good day.........
We are using SQL 2005 sp2 as DB &I am facing Update termination error. When
Creating any document then document no is Generated but it will take time 5 to 10 min to
Update in Db Table .I am getting Update Delay error. & ABAP error in update etc.
same time users are complaining that document no lock error is coming & if they used
the same document no created before2 min back then it is showing document no doesnu2019t
exit though it already created before 2 min but not showing in table.
kindly help me for the same.
Regards
Rabin nayak
SAP Basis TeamHi
Error is resolved. that is OS level error.
Thanks
bala -
Using more than one time delay in a thread
Hello,
I need to use two non-consecutive time delays in a thread. My thread typically proceeds as follows:
1. Tell an oriel MS257 to change wavelengths
2. Time delay #1 to give the MS257 time to change
3. Tell HP 4156C to start sweeping
4. Poll the 4156C until sweeping is complete
5. Time delay #2 to give 4156C time to load data
6. Read/parse/save data
My problem is that the second time delay seems to start counting immediately after the first one - it does not wait for the sweeping to complete before counting. My VI is attached. It's a bit messy - organizational tips are also welcome!
Thanks,
Ying
Solved!
Go to Solution.
Attachments:
TFTmeasure.vi 115 KBLooking into the sources show: Cleanup is a nice tool (even thought it is far from perfect )
Well, nevertheless, from the wireworking, it seems alright that the second Time Delay express VI should indeed wait for the loop to finish. Therefore, i am wondering why it is skipped. And the only reasonable explanation: You have an error on the error cluster.
So please debug into it using highlight/probes on the error cluster to make sure that you are not running into issues here.
hope this helps,
Norbert
CEO: What exactly is stopping us from doing this?
Expert: Geometry
Marketing Manager: Just ignore it. -
MacAir- Wifii "connected" no loading or "time out" errors
I have a MacAir and all of the sudden the Wifii wouldn't connect to the wifii server at school.
Other students were having no issues. It would say "time out" error.
Then it would connect to the guest network and full bars would show but wont load any pages.
My ipad is able to connect normally. Therefore it must be my OS on the MacAir.
If followed other support threads and reset the network but still having the same issue
I really need to get this fixed if possible, any help would be appreciated. Thank you~Hi aimomo!
I have a few articles here for you that will help you troubleshoot this issue with your Wi-Fi connection:
Wi-Fi: How to troubleshoot Wi-Fi connectivity
http://support.apple.com/kb/HT4628
Non-responsive DNS server or invalid DNS configuration can cause long delay before webpages load
http://support.apple.com/kb/ts2296
Safari 5.0.1 or later: Slow or partial webpage loading, or webpage cannot be found
http://support.apple.com/kb/ts3408
Safari 6 (OS X Mountain Lion): If Safari can’t open a website
http://support.apple.com/kb/PH11883
A few of these articles are for specific circumstances related to loading pages in Safari, but I thought they may be helpful if it seems like your issue is similar to what is described in the articles. Thanks for being a part of the Apple Support Communities!
Regards,
Braden -
Time Delay to wait for a solenoid to open
I have a Shutter that opens fine but I need to wait with some Time Delay before I continue to process some information.
I am using Labview 7.0 and have a DaqPad-6016.It would be helpful to see your code to see exactly what you are doing.
However, LabVIEW does have several options for waiting. I have attached a screenshot showing some of these. The time delay is especially useful with DAQ because you can wire your task's error wire through the wait. This will cause the delay to explicitly happen in between the execution of VIs.
-Sal
Attachments:
wait.JPG 42 KB -
Captivate created file playing with time delay
I have an issue with some machines in the Company where Adobe Captivate files are not playing as created via Flash Player ie where a slide should move onto another slide after a 3 seconds interval , this interval takes over 15 seconds.
I am not getting any error messages and the files play as required but with the serious time delay between slides.
The files created from Captivate are exe files.
The strange thing is that this issue only occurs in some machines in the Company and I am unable to determine a pattern as to this issue.
I have updated the Codec driver and the Graphic drivers on the affected machine but did not solve the issue.
I have tested an affected file on 2 of the same model machines (HP Desktop machines) both running Windows XP SP3 with Adobe Flash Player 10.3 and IE8.0 .
The file played successfully on one of the machines but on the other machine there was a 10 second time lag between slides.
I have checked Task Manager and the process is only using 2-3% of the CPU so the machine has enough CPU to run the file .
I updated to Flash 11.1 on one of the machines and IE 9 but still encountered the same issue.
I have disabled the Anti Virus software (McAfee) while testing on one of the affected machines and this did not solve the issue.
All Machines have the latest approved Microsoft updates installed as required.
The files are created using Adobe Captivate 3 and are stored locally on the affected machines
The files created were created in captivate with a standard 30 fps option
Can you please advise on this issueWelcome to our community
As I understand things, when you launch an EXE file created by Captivate, it decompresses and temporarily installs a runtime version of the Flash Player. So I'm wondering if perhaps on these machines where the delay is occurring, if it would help to perform the following steps:
1. Clear all temporary files
2. Perform a defragmentation of the hard drive
I'd try step one first and see if anything improves. Perhaps that's all that is needed. The second step is simply a good habit to get into.
Cheers... Rick
Helpful and Handy Links
Captivate Wish Form/Bug Reporting Form
Adobe Certified Captivate Training
SorcerStone Blog
Captivate eBooks -
Keithley 2400 Configure Settling Time Delay vi
I am trying to use the Configure Settling Time Delay.vi yet it is not clear where it has to be placed to work. Where should it go in relation to a Configure Measurement.vi or Read.vi
Thank you very much,
AndrewHello Andrew,
It may take some trial and error but looking at the library of VI's in the project, they should still follow the initialize->configure->read->close data flow. I would first Configure Measurement(one or mulitple), then Configure Settling Delay, and then Read. Please let me know if you have any further questions.
Thank you,
Deborah Y.
LabVIEW Real-Time Product Marketing Manager
Certified LabVIEW Architect
National Instruments -
Time delay between 2 waveforms
Hi,
Please bear with me while I explain what I’m trying to do :-) Basically, in the attached LabView file (“flow vis + trigger-m.vi”), I am generating 2 signals: a sinusoidal waveform (used to drive an actuator) and a square waveform (used as a TTL signal to trigger image capture on a CCD camera). Currently when I run the program using LabView 7, both signals are started simultaneously. I would like to introduce a time delay that can be manually specified in the VI, such that when the program is started (i.e. at time t0), the sinusoidal waveform also starts (i.e. at time t0) before the square waveform (i.e. at time t0 + delay time). In a practical sense, this means allowing the actuator to run for several seconds before capturing any images.
It sounds like it should be quite straightforward to do, but I’m not so sure how to progress. I have begun to modify the original VI (“flow vis + trigger-m_2.vi”, as attached), but would be much appreciative of any help or suggestions on how I can complete the VI to meet the above requirement.
Many thanks,
Mark
Attachments:
flow vis + trigger-m.vi 939 KB
flow vis + trigger-m_2.vi 895 KBPlease refer this URL for an example VI I made to solve the problem:
http://forums.ni.com/ni/board/message?board.id=170&message.id=227603
Way S.
NI-UK Applications Engineer -
Creating a Time Delay Between 2 Waveforms
Hi,
Please bear with me while I explain what I’m trying to do :-) Basically, in the attached LabView file (“flow vis + trigger-m.vi”), I am generating 2 signals: a sinusoidal waveform (used to drive an actuator) and a square waveform (used as a TTL signal to trigger image capture on a CCD camera). Currently when I run the program using LabView 7, both signals are started simultaneously. I would like to introduce a time delay that can be manually specified in the VI, such that when the program is started (i.e. at time t0), the sinusoidal waveform also starts (i.e. at time t0) before the square waveform (i.e. at time t0 + delay time). In a practical sense, this means allowing the actuator to run for several seconds before capturing any images.
It sounds like it should be quite straightforward to do, but I’m not so sure how to progress. I have begun to modify the original VI (“flow vis + trigger-m_2.vi”, as attached), but would be much appreciative of any help or suggestions on how I can complete the VI to meet the above requirement.
Many thanks,
Mark
Attachments:
flow vis + trigger-m.vi 939 KB
flow vis + trigger-m_2.vi 895 KBHi Mark,
I forgot that all analog waveforms generated needed to have the same number of samples in a single task. By introducing a delay into your square wave, I effectively added samples that waveform. So the same number of samples added to the square wave has to be added to your sine wave. I added code that extends the number of samples of your sine wave (# delay + square wave samples). Let me know if this works for you.
Regards
Way S.
NI UK Applications Engineer
Attachments:
flow vis + trigger-m70.vi 872 KB -
Getting time out error when running the assigned verification in DRM 9.3.2.
Hi,
I have installed DRM 9.3.2.0.0 in my system (windows 7), when i am trying to run assigned verifications i am getting the time out error within a minute.
As suggested by oracle,I have added DWORD with value 480000 under Master Data Management in Registry editor. But still getting the error.
Please suggest a solution for this issue.
regards,
sathiyaPlease suggest me the solution.
regards,
sathiya -
Hi,
I have attached my simulation loop.In the model attached i hav eone main pump with constant rpm which drives the 5 smaller pumps and fills the tank at the same time.As soon as the tanks reach their 90% level,the valves of the five pumps close(SP1,SP2,SP3,Sp4,Sp5).After that the recirculating pumps opens for 5 secs of the first tank.As soon as the recirculation finishes,the drain valve(SV1) for tank 1 open and the volume goes to interim storage.This happens for all the remaining tanks.
My simulation works the first time,but when the second time the loop starts,it skips the recirculation pump even though i gave a time delay for 5 secs.Plz help ..I have attached the simulation.
Thanks,
Rami
Attachments:
Spatial Logic_2_Final.vi 223 KBRami,
I suspect that you have a race condition. The widespread use of local variables frequently leads to race conditions. Your subVI (Spatial Logic Sub_2.vi was not included) so I cannot run the VI. You have no way of knowing whether the subVI or the inner case structure will execute first, because there is no data dependency between them.
I think a shift register or a few and some dataflow thinking would allow you to eliminate the inner case structure, the local variables, and, probably, most of your problems.
Some of the SPi are indicators and some are controls. How are they used?
The last case of the inner loop retursn to Case 1. Would case 0 be better?
As for the second time through issue, it may be related to the Elapsed time function Auto Reset. From the help file: "Resets the start time to the value in Present (s) when the Express VI reaches the Time Target (s)." If more than 5 seconds elapses between the first time you use this and the next, it will exit immediately on the subsequent calls.
Lynn -
Time out error 1.6 million internal table fields are computed using FMs
Hi , All ...
The Report running fine in server with less 300 record but ...production server which has 1.6 million record it gives error as time-out error and takes hell amount of time.
Please suggest ugently ..
I have tried few things
Internal table having 1.6 lacs ... fields to compute .. i have token in a batch
loop at i_cinfo into s_cinfo from 1 to 100000.
and so on ...also applied all the performace related .. like indexs, work areas , deleting adjacent duplicates , for all entries ..wherever applicable.
Please Suggest .
Report is as below
REPORT ZUSOTCBD_CREDIT_REPORT .
TABLES : KNA1, " General Data Customer Master
KNB1, " Customer Master (Company Code)
KNC1, " Customer master (transaction figures)
KNKK, " Customer master credit management: Control area data
T009, " Fiscal Year Variants P
T009Y, " Shortened fiscal years in Asset Accounting P
T001, " Co. Codes
T001CM, " Permitted Credit Control Areas per Company Code
RF42B, " Structure to hold credit data.
RF035, " Structure to hold credit managment fields
RF02L, " Structure to hold credit data.
TRAS, " Interval for Days in Arrears P
T000CM. " Data for DSO calculation.
Types
TYPES:
BEGIN OF type_final,
string(50) TYPE c, " String Value for Title
END OF type_final.
data:wa_final TYPE type_final. " Work Area to hold Title Data
DATA: RASID TYPE RF035-RASID value 'R03N'. " For Days in interval
DATA: MONAT(2) TYPE N.
DATA: GJAHR TYPE KNC1-GJAHR.
DATA: LD_PERIODS(32) TYPE N
VALUE '01020304050607080910111213141516'.
DATA sytabix type sy-tabix.
DATA LAND TYPE KNA1-LAND1 VALUE 'US'. " Country Key
DATA: LD_PERIOD TYPE BSID-MONAT, " Fiscal Year Variant
LD_GJAHR TYPE KNC1-GJAHR,
LD_COUNTER TYPE SY-TABIX.
Internal Tables
Internal table to hold Title Data *
DATA:
i_final TYPE STANDARD TABLE OF type_final.
**Internal Table Permitted Credit Control Areas per Company Code
DATA: BEGIN OF TCMTAB OCCURS 10.
INCLUDE STRUCTURE T001CM.
DATA: END OF TCMTAB.
*Internal table to store Customer no.
DATA : BEGIN OF ICUST OCCURS 0,
KUNNR TYPE KNA1-KUNNR, " Customer No.
END OF ICUST.
DATA: BEGIN OF BUKTAB OCCURS 20,
KKBER LIKE T001-KKBER, " Credit Control Area
BUKRS LIKE T001-BUKRS, " Co. Code
WAERS LIKE T001-WAERS, " Currency
PERIV LIKE T001-PERIV, " Fiscal Year Variant
BUTXT LIKE T001-BUTXT,
END OF BUKTAB.
Internal Table to store Fiscal year Data .
DATA: BEGIN OF GJATAB OCCURS 5,
PERIV LIKE T001-PERIV, " Fiscal Year Variant
GJAHR LIKE KNC1-GJAHR, " Fiscal Year
MONAT LIKE T009-ANZBP, "
ANZBP LIKE T009-ANZBP, " Number of posting periods
END OF GJATAB.
*Main Output internal table to be used to store credit history Information
DATA : BEGIN OF I_CINFO occurs 0,
KUNNR TYPE KNB1-KUNNR, " Customer
KNKLI TYPE KNKK-KNKLI, " Customer's account number with credit limit reference
KKBER TYPE KNKK-KKBER, " Credit Control Area
CTLPC TYPE KNKK-CTLPC, " Risk Category
KLIMK TYPE KNKK-KLIMK, " Credit Limit
SBGRP TYPE KNKK-SBGRP, " Credit representative group for credit management
ERDAT TYPE KNKK-ERDAT, " Created On
DTREV TYPE KNKK-DTREV, " Last Internal Review
REVDB TYPE KNKK-REVDB, " Last External Review
SALDO TYPE RF42B-SALDO, " Balance
DSOIN TYPE RF02L-DSOIN, " DSO
H06SA TYPE RF035-H06SA, " Highest Balance at the end of 6 Months
H06JA TYPE RF035-H06JA, " Year highest Balance 6 Months
H06MO TYPE RF035-H06MO, " Month OF hihest Balance 6 Months
H12SA TYPE RF035-H12SA, " Highest Balance at the end of 12 Months
H12JA TYPE RF035-H12JA, " Year highest Balance 12 Months
H12MO TYPE RF035-H12MO, " Month OF hihest Balance 12 Months
UMP2U TYPE RF42B-UMP2U, " Sales from the current Year
UMP1U TYPE RF42B-UMP1U, " Sales from the Previous Year
SFAEL TYPE RF035-SFAEL, " Total Past Due Open Item
SFAE1 TYPE RF035-SFAE1, " Aging buckets 0-15
SFAE2 TYPE RF035-SFAE2, " Aging buckets 16-30
SFAE3 TYPE RF035-SFAE3, " Aging buckets 31-60
SFAE4 TYPE RF035-SFAE4, " Aging buckets 60-90
SFAE5 TYPE RF035-SFAE5, " Aging buckets Over 90
END Of I_CINFO.
DATA : BEGIN OF S_CINFO ,
KUNNR TYPE KNB1-KUNNR, " Customer
KNKLI TYPE KNKK-KNKLI, " Customer's account number with credit limit reference
KKBER TYPE KNKK-KKBER, " Credit Control Area
CTLPC TYPE KNKK-CTLPC, " Risk Category
KLIMK TYPE KNKK-KLIMK, " Credit Limit
SBGRP TYPE KNKK-SBGRP, " Credit representative group for credit management
ERDAT TYPE KNKK-ERDAT, " Created On
DTREV TYPE KNKK-DTREV, " Last Internal Review
REVDB TYPE KNKK-REVDB, " Last External Review
SALDO TYPE RF42B-SALDO, " Balance
DSOIN TYPE RF02L-DSOIN, " DSO
H06SA TYPE RF035-H06SA, " Highest Balance at the end of 6 Months
H06JA TYPE RF035-H06JA, " Year highest Balance 6 Months
H06MO TYPE RF035-H06MO, " Month OF hihest Balance 6 Months
H12SA TYPE RF035-H12SA, " Highest Balance at the end of 12 Months
H12JA TYPE RF035-H12JA, " Year highest Balance 12 Months
H12MO TYPE RF035-H12MO, " Month OF hihest Balance 12 Months
UMP2U TYPE RF42B-UMP2U, " Sales from the current Year
UMP1U TYPE RF42B-UMP1U, " Sales from the Previous Year
SFAEL TYPE RF035-SFAEL, " Total Past Due Open Item
SFAE1 TYPE RF035-SFAE1, " Aging buckets 0-15
SFAE2 TYPE RF035-SFAE2, " Aging buckets 16-30
SFAE3 TYPE RF035-SFAE3, " Aging buckets 31-60
SFAE4 TYPE RF035-SFAE4, " Aging buckets 60-90
SFAE5 TYPE RF035-SFAE5, " Aging buckets Over 90
END Of s_cinfo.
*Internal table to hold month-wise balance.
DATA: BEGIN OF SALTAB OCCURS 12,
LNUMM(2) TYPE N, " Month
SALDO LIKE RF42B-SALDO, " Balance
END OF SALTAB.
*Internal table used for computing the Balance fields
DATA: BEGIN OF SALDO,
UML01 LIKE KNC1-UM01S,
UML02 LIKE KNC1-UM01S,
UML03 LIKE KNC1-UM01S,
UML04 LIKE KNC1-UM01S,
UML05 LIKE KNC1-UM01S,
UML06 LIKE KNC1-UM01S,
UML07 LIKE KNC1-UM01S,
UML08 LIKE KNC1-UM01S,
UML09 LIKE KNC1-UM01S,
UML10 LIKE KNC1-UM01S,
UML11 LIKE KNC1-UM01S,
UML12 LIKE KNC1-UM01S,
END OF SALDO.
Structure to hold Bal fields ------ -------
DATA: BEGIN OF SKNKK,
KUNNR LIKE KNA1-KUNNR, " Customer Number 1: Debitor
KONTO LIKE KNKK-KUNNR,
SFAE1 LIKE RF035-SFAE1, " Aging buckets 0-15
SFAE2 LIKE RF035-SFAE2, " Aging buckets 16-30
SFAE3 LIKE RF035-SFAE3, " Aging buckets 30-60
SFAE4 LIKE RF035-SFAE4, " Aging buckets 60-90
SFAE5 LIKE RF035-SFAE5, " Aging buckets Over 90
SFAEL LIKE RF035-SFAEL, " Total Due of Items
UML01 LIKE KNC1-UM01S,
UML02 LIKE KNC1-UM01S,
UML03 LIKE KNC1-UM01S,
UML04 LIKE KNC1-UM01S,
UML05 LIKE KNC1-UM01S,
UML06 LIKE KNC1-UM01S,
UML07 LIKE KNC1-UM01S,
UML08 LIKE KNC1-UM01S,
UML09 LIKE KNC1-UM01S,
UML10 LIKE KNC1-UM01S,
UML11 LIKE KNC1-UM01S,
UML12 LIKE KNC1-UM01S,
UMP1U LIKE RF42B-UMP1U, " Sales from the Previous Year
UMP2U LIKE RF42B-UMP2U, " Sales from the current Year
SALDO LIKE RF42B-SALDO, " Balance
END OF SKNKK.
DATA : BEGIN OF ICUST1 OCCURS 0,
KUNNR TYPE KNA1-KUNNR, "For Customer Filter.
END OF ICUST1.
**Internal table to hold fiscal varriants
DATA: BEGIN OF LT_PERIODS OCCURS 12,
PERIOD LIKE BSID-MONAT,
GJAHR LIKE KNC1-GJAHR,
END OF LT_PERIODS.
**Constants
constants : BUKRS1 TYPE KNB1-BUKRS VALUE '1000',
BUKRS2 TYPE KNB1-BUKRS VALUE '1031',
Recs Type i value '200',
B_count type i value '2'.
INITIALIZATION
INITIALIZATION.
IF RASID IS INITIAL.
SELECT * FROM TRAS.
EXIT.
ENDSELECT.
IF SY-SUBRC = 0.
RASID = TRAS-RASID.
ENDIF.
ENDIF.
SELECTION-SCREEN
parameters : p_path type rlgrap-filename default 'C:\Documents and Settings\C890971\Desktop\Credit_history.XLS'.
Start of selection processing
START-OF-SELECTION.
**Get Customers for Co. Code 1000 & 1031.
PERFORM GET_CUST.
Get / Compute Credit Information data for Company Codes 1000 & 1031.
PERFORM GET_CREDIT_DATA.
End of selection processing
*END-OF-SELECTION.
Listing Credit History Data
PERFORM DOWNLOAD_CREDIT_DATA.
S U B R O U T I N E S
*& Form GET_CUST
text
--> p1 text
<-- p2 text
FORM GET_CUST .
Get US only Customers.
Refresh icust.
Select kunnr from kna1 appending table icust
where Land1 = land.
**Delete duplicate records
Delete Adjacent duplicates from icust comparing kunnr.
if icust[] is not initial.
Limit the selection some more to Co. Code 1000 & 1031
As join will cost overhead as compared.
Select kunnr from knb1 into table icust1
for all entries in icust
where kunnr = icust-kunnr
and bukrs = bukrs1
OR bukrs = bukrs2.
**Delete duplicate records
Delete Adjacent duplicates from icust1 comparing kunnr.
endif.
**Free memory.
Free icust.
Credit Control Area
select * from T001CM into table TCMTAB
where bukrs = bukrs1 OR
bukrs = bukrs2.
ENDFORM. " GET_CUST
*& Form GET_CREDIT_DATA
text
--> p1 text
<-- p2 text
FORM GET_CREDIT_DATA .
DATA : L_TEXT(60) TYPE C ,
Ltext1(50) type C value 'Computing Credit-History Data For',
Ltext2(10) type C value 'Customers',
L_PCT type i value '10',
L_recs type i,
l_batch_recs type i,
l_s_rec type i value 1,
l_recs1(7) type N.
***Fetch data from KNKK table
PERFORM GET_KNKK_DATA .
***Computing Crredit Fields
**Number of Customers For whom Deatils needed.
Describe table I_CINFO lines l_recs.
l_recs1 = l_recs.
Concatenate Ltext1 l_recs1 Ltext2 into l_text separated by ' '.
PERFORM GET_PGRESS_INDICATOR USING l_text l_pct.
***If records are more than 200000, should be processed batch-wise
If l_recs > recs.
l_batch_recs = abs( l_recs / b_count ).
Do b_count times.
loop at i_cinfo INTO S_CINFO from l_S_REC to l_batch_recs.
**Remember the row
sytabix = sy-tabix.
**Compute DSO
PERFORM GET_DSO_FIELD .
Compute rest credit history data.
PERFORM COMPUTE_SFIELDS.
endloop.
l_S_REC = l_S_REC + l_batch_recs.
l_batch_recs = l_batch_recs + l_batch_recs.
IF l_batch_recs ge l_recs.
l_batch_recs = l_recs.
eNDIF.
Commit up to here to release the DB locks.
Commit work.
enddo.
else.
loop at i_cinfo INTO S_CINFO.
**Remember the row
sytabix = sy-tabix.
**Compute DSO
PERFORM GET_DSO_FIELD .
Compute rest credit history data.
PERFORM COMPUTE_SFIELDS.
endloop.
Endif.
ENDFORM. " GET_CREDIT_DATA
*& Form GET_KNKK_DATA
text
-->P_ICUST_KUNNR text
FORM GET_KNKK_DATA .
if icust1[] is not initial.
SELECT KUNNR KNKLI KKBER CTLPC KLIMK
SBGRP ERDAT DTREV REVDB
from KNKK into corresponding fields of table I_Cinfo
for all entries in icust1
where kunnr = icust1-kunnr.
Delete Adjacent duplicates from i_cinfo comparing kunnr.
endif.
**Free Memory for internal table icust1.
Free icust1.
ENDFORM. " GET_KNKK_DATA
**& Form GET_DSO_FIELD
text
--> p1 text
<-- p2 text
FORM GET_DSO_FIELD .
***Determine DSO Parameter
PERFORM DSO_PARAMETER.
***Compute DSO
CALL FUNCTION 'CUSTOMER_DSO_CALCULATION'
EXPORTING
I_KKBER = s_cinfo-kkber
I_KUNNR = s_cinfo-kunnr
I_ANZBUPER = T000CM-DSOPP
I_XCHILDS = T000CM-DSOCH
I_ACTBALANCE = T000CM-DSOAB
IMPORTING
E_DSOIN = RF02L-DSOIN
EXCEPTIONS
ERROR_MESSAGE = 1.
ENDFORM. " GET_DSO_FIELD
*& Form DSO_PARAMETER
text
--> p1 text
<-- p2 text
FORM DSO_PARAMETER.
IF T000CM-DSOPP IS INITIAL.
SELECT SINGLE * FROM T000CM.
IF SY-SUBRC EQ 0.
IF T000CM-DSOPP IS INITIAL.
T000CM-DSOPP = '003'.
ENDIF.
ELSE.
T000CM-DSOPP = '003'.
T000CM-DSOCH = ' '.
T000CM-DSOAB = 'X'.
ENDIF.
ENDIF.
ENDFORM. " DSO_PARAMETER
--> p1 text
<-- p2 text
FORM PERIODE_ERMITTELN_EXC USING
P03_BUDAT LIKE SYST-DATUM
P03_GJAHR LIKE KNC1-GJAHR
P03_MONAT LIKE MONAT.
CALL FUNCTION 'FI_PERIOD_DETERMINE'
EXPORTING
I_BUDAT = P03_BUDAT
I_PERIV = T001-PERIV
I_BUKRS = T001-BUKRS
I_GJAHR = P03_GJAHR
I_MONAT = P03_MONAT
IMPORTING
E_GJAHR = P03_GJAHR
E_MONAT = P03_MONAT
EXCEPTIONS
ERROR_MESSAGE = 1.
ENDFORM. "PERIODE_ERMITTELN_EXC
*& Form COMPUTE_SFIELDS
text
--> p1 text
<-- p2 text
FORM COMPUTE_SFIELDS .
**Compute Balance
PERFORM GET_SFIELDS .
S_CINFO-DSOIN = RF02L-DSOIN.
S_CINFO-SALDO = RF035-SALDO.
S_CINFO-H06SA = RF035-H06SA.
S_CINFO-H06JA = RF035-H06JA.
S_CINFO-H06MO = RF035-H06MO.
S_CINFO-H12SA = RF035-H12SA.
S_CINFO-H12JA = RF035-H12JA.
S_CINFO-H12MO = RF035-H12MO.
S_CINFO-UMP2U = RF42B-UMP2U.
S_CINFO-UMP1U = RF42B-UMP1U.
S_CINFO-SFAEL = RF035-SFAEL.
S_CINFO-SFAE1 = RF035-SFAE1.
S_CINFO-SFAE2 = RF035-SFAE2.
S_CINFO-SFAE3 = RF035-SFAE3.
S_CINFO-SFAE4 = RF035-SFAE4.
S_CINFO-SFAE5 = RF035-SFAE5.
modify..
MODIFY I_CINFO FROM S_CINFO INDEX sytabix.
CLEAR: S_CINFO,RF035,RF02L, RF42B.
ENDFORM. " COMPUTE_SFIELDS
text
-->P_C_INFO_KUNNR text
FORM GET_CUST_BAL_INFO.
LOOP AT TCMTAB.
CALL FUNCTION 'FI_COMPANY_CODE_DATA'
EXPORTING
I_BUKRS = TCMTAB-BUKRS
IMPORTING
E_T001 = T001
EXCEPTIONS
ERROR_MESSAGE = 1.
IF SY-SUBRC = 0.
MOVE-CORRESPONDING T001 TO BUKTAB.
BUKTAB-KKBER = TCMTAB-KKBER.
COLLECT BUKTAB.
ENDIF.
ENDLOOP.
LOOP AT BUKTAB WHERE PERIV NE SPACE.
GJATAB-PERIV = BUKTAB-PERIV.
COLLECT GJATAB.
ENDLOOP.
CLEAR: MONAT.
LOOP AT GJATAB.
T001-PERIV = GJATAB-PERIV.
CLEAR: GJAHR, MONAT.
PERFORM PERIODE_ERMITTELN_EXC USING SY-DATLO GJAHR MONAT.
CHECK SY-SUBRC = 0.
GJATAB-GJAHR = GJAHR.
GJATAB-MONAT = MONAT.
SELECT SINGLE * FROM T009 WHERE PERIV = GJATAB-PERIV.
IF SY-SUBRC = 0.
GJATAB-ANZBP = T009-ANZBP.
ENDIF.
MODIFY GJATAB.
ENDLOOP.
LOOP AT BUKTAB.
CHECK NOT ( BUKTAB-PERIV IS INITIAL ).
READ TABLE GJATAB WITH KEY BUKTAB-PERIV.
CHECK SY-SUBRC = 0
AND NOT ( GJATAB-GJAHR IS INITIAL ).
CALL FUNCTION 'CUSTOMER_BALANCE'
EXPORTING
KUNNR = S_cinfo-kunnr
BUKRS = BUKTAB-BUKRS
GJAHR = GJATAB-GJAHR
MONAT = GJATAB-MONAT
PERIV = GJATAB-PERIV
ANZBP = GJATAB-ANZBP
XH6MON = 'X'
XH12MON = 'X'
IMPORTING
UMP2U = RF42B-UMP2U
VMP2U = RF42B-UMP1U
SALDO = RF035-SALDO
UML01 = SALDO-UML01
UML02 = SALDO-UML02
UML03 = SALDO-UML03
UML04 = SALDO-UML04
UML05 = SALDO-UML05
UML06 = SALDO-UML06
UML07 = SALDO-UML07
UML08 = SALDO-UML08
UML09 = SALDO-UML09
UML10 = SALDO-UML10
UML11 = SALDO-UML11
UML12 = SALDO-UML12
EXCEPTIONS
NO_BALANCE = 4.
IF SY-SUBRC = 0.
SKNKK-UMP1U = SKNKK-UMP1U + RF42B-UMP1U.
SKNKK-UMP2U = SKNKK-UMP2U + RF42B-UMP2U.
SKNKK-SALDO = SKNKK-SALDO + RF035-SALDO.
SKNKK-UML01 = SKNKK-UML01 + SALDO-UML01.
SKNKK-UML02 = SKNKK-UML02 + SALDO-UML02.
SKNKK-UML03 = SKNKK-UML03 + SALDO-UML03.
SKNKK-UML04 = SKNKK-UML04 + SALDO-UML04.
SKNKK-UML05 = SKNKK-UML05 + SALDO-UML05.
SKNKK-UML06 = SKNKK-UML06 + SALDO-UML06.
SKNKK-UML07 = SKNKK-UML07 + SALDO-UML07.
SKNKK-UML08 = SKNKK-UML08 + SALDO-UML08.
SKNKK-UML09 = SKNKK-UML09 + SALDO-UML09.
SKNKK-UML10 = SKNKK-UML10 + SALDO-UML10.
SKNKK-UML11 = SKNKK-UML11 + SALDO-UML11.
SKNKK-UML12 = SKNKK-UML12 + SALDO-UML12.
ENDIF.
ENDLOOP.
ENDFORM. "
*& Form GET_SFIELDS
text
--> p1 text
<-- p2 text
FORM GET_SFIELDS .
sknkk-kunnr = S_CINFO-KUNNR.
**Clear target to store computed values
CLEAR: RF035.
**Compute Balance fields
PERFORM GET_CUST_BAL_INFO.
REFRESH: SALTAB.
SALTAB-LNUMM = '01'. SALTAB-SALDO = SKNKK-UML01. APPEND SALTAB.
SALTAB-LNUMM = '02'. SALTAB-SALDO = SKNKK-UML02. APPEND SALTAB.
SALTAB-LNUMM = '03'. SALTAB-SALDO = SKNKK-UML03. APPEND SALTAB.
SALTAB-LNUMM = '04'. SALTAB-SALDO = SKNKK-UML04. APPEND SALTAB.
SALTAB-LNUMM = '05'. SALTAB-SALDO = SKNKK-UML05. APPEND SALTAB.
SALTAB-LNUMM = '06'. SALTAB-SALDO = SKNKK-UML06. APPEND SALTAB.
SALTAB-LNUMM = '07'. SALTAB-SALDO = SKNKK-UML07. APPEND SALTAB.
SALTAB-LNUMM = '08'. SALTAB-SALDO = SKNKK-UML08. APPEND SALTAB.
SALTAB-LNUMM = '09'. SALTAB-SALDO = SKNKK-UML09. APPEND SALTAB.
SALTAB-LNUMM = '10'. SALTAB-SALDO = SKNKK-UML10. APPEND SALTAB.
SALTAB-LNUMM = '11'. SALTAB-SALDO = SKNKK-UML11. APPEND SALTAB.
SALTAB-LNUMM = '12'. SALTAB-SALDO = SKNKK-UML12. APPEND SALTAB.
READ TABLE SALTAB INDEX 1.
RF035-H06SA = SALTAB-SALDO.
RF035-H06MO = SALTAB-LNUMM.
RF035-H12SA = SALTAB-SALDO.
RF035-H12MO = SALTAB-LNUMM.
------ SALTAB ---------------------------------------------
LOOP AT SALTAB.
IF SALTAB-SALDO > RF035-H06SA
AND SY-TABIX < 7.
RF035-H06SA = SALTAB-SALDO.
RF035-H06MO = SALTAB-LNUMM.
ENDIF.
IF SALTAB-SALDO > RF035-H12SA
AND SY-TABIX < 13.
RF035-H12SA = SALTAB-SALDO.
RF035-H12MO = SALTAB-LNUMM.
ENDIF.
ENDLOOP.
------ Period--------------------
REFRESH LT_PERIODS.
CLEAR LD_COUNTER.
READ TABLE BUKTAB INDEX 1.
IF SY-SUBRC = 0.
READ TABLE GJATAB WITH KEY BUKTAB-PERIV.
DO GJATAB-MONAT TIMES
VARYING LD_PERIOD FROM LD_PERIODS(2) NEXT LD_PERIODS+2(2)
RANGE LD_PERIODS.
LT_PERIODS-GJAHR = GJATAB-GJAHR.
LT_PERIODS-PERIOD = LD_PERIOD.
LD_COUNTER = LD_COUNTER + 1.
APPEND LT_PERIODS.
ENDDO.
IF LD_COUNTER LT 12.
LD_GJAHR = GJATAB-GJAHR - 1.
CLEAR T009Y.
SELECT SINGLE * FROM T009Y WHERE PERIV = GJATAB-PERIV
AND GJAHR = LD_GJAHR.
DO GJATAB-ANZBP TIMES
VARYING LD_PERIOD FROM LD_PERIODS(2) NEXT LD_PERIODS+2(2)
RANGE LD_PERIODS.
IF T009Y-ANZBP > 0.
CHECK SY-INDEX <= T009Y-ANZBP.
ENDIF.
LD_COUNTER = LD_COUNTER + 1.
LT_PERIODS-GJAHR = LD_GJAHR.
LT_PERIODS-PERIOD = LD_PERIOD.
APPEND LT_PERIODS.
ENDDO.
ENDIF.
IF LD_COUNTER LT 12.
LD_GJAHR = LD_GJAHR - 1.
DO GJATAB-ANZBP TIMES
VARYING LD_PERIOD FROM LD_PERIODS(2) NEXT LD_PERIODS+2(2)
RANGE LD_PERIODS.
LD_COUNTER = LD_COUNTER + 1.
LT_PERIODS-GJAHR = LD_GJAHR.
LT_PERIODS-PERIOD = LD_PERIOD.
APPEND LT_PERIODS.
ENDDO.
ENDIF.
SORT LT_PERIODS BY GJAHR ASCENDING PERIOD ASCENDING.
LD_COUNTER = LD_COUNTER - 12.
DO LD_COUNTER TIMES.
DELETE LT_PERIODS INDEX 1.
ENDDO.
SORT LT_PERIODS BY GJAHR DESCENDING PERIOD DESCENDING.
READ TABLE LT_PERIODS INDEX RF035-H06MO.
RF035-H06MO = LT_PERIODS-PERIOD.
RF035-H06JA = LT_PERIODS-GJAHR.
READ TABLE LT_PERIODS INDEX RF035-H12MO.
RF035-H12MO = LT_PERIODS-PERIOD.
RF035-H12JA = LT_PERIODS-GJAHR.
ENDIF.
**Compute Due Dates fields
PERFORM GET_AGING_BUCKETS .
RF035-SFAE1 = SKNKK-SFAE1.
RF035-SFAE2 = SKNKK-SFAE2.
RF035-SFAE3 = SKNKK-SFAE3.
RF035-SFAE4 = SKNKK-SFAE4 .
RF035-SFAE5 = SKNKK-SFAE5.
ENDLOOP.
ENDFORM. " GET_BALANCE_SFIELDS
*& Form GET_AGING_BUCKETS
text
--> p1 text
<-- p2 text
FORM GET_AGING_BUCKETS .
DATA: BEGIN OF LT_BUKRS OCCURS 0,
BUKRS LIKE T001-BUKRS,
END OF LT_BUKRS.
DATA: BEGIN OF LT_BUKTAB OCCURS 0,
BUKRS LIKE T001-BUKRS,
WAERS LIKE T001-WAERS,
KKBER LIKE T014-KKBER,
END OF LT_BUKTAB.
DATA: LD_LINES LIKE SY-TABIX.
*...performance optimization: for more than one company codes check....*
*...if balances exist and avoid selection of open items, if they don't.*
*...exist..............................................................*
REFRESH LT_BUKRS.
REFRESH LT_BUKTAB.
DESCRIBE TABLE BUKTAB LINES LD_LINES.
IF LD_LINES GT 1.
SELECT DISTINCT BUKRS APPENDING CORRESPONDING FIELDS
OF TABLE LT_BUKRS
FROM KNC1 FOR ALL ENTRIES IN BUKTAB
WHERE BUKRS = BUKTAB-BUKRS AND
KUNNR = Sknkk-KUNNR.
SELECT DISTINCT BUKRS APPENDING CORRESPONDING FIELDS
OF TABLE LT_BUKRS
FROM KNC3 FOR ALL ENTRIES IN BUKTAB
WHERE BUKRS = BUKTAB-BUKRS AND
KUNNR = Sknkk-KUNNR.
SORT LT_BUKRS.
DELETE ADJACENT DUPLICATES FROM LT_BUKRS.
LOOP AT LT_BUKRS.
LOOP AT BUKTAB WHERE BUKRS = LT_BUKRS-BUKRS.
MOVE-CORRESPONDING BUKTAB TO LT_BUKTAB.
APPEND LT_BUKTAB.
ENDLOOP.
ENDLOOP.
ELSE.
READ TABLE BUKTAB INDEX 1.
MOVE-CORRESPONDING BUKTAB TO LT_BUKTAB.
APPEND LT_BUKTAB.
ENDIF.
*...process company codes for customer given by interface..........*
LOOP AT LT_BUKTAB WHERE KKBER = s_cinfo-KKBER.
CALL FUNCTION 'CUSTOMER_DUE_DATE_ANALYSIS'
EXPORTING BUKRS = LT_BUKTAB-BUKRS
KKBER = ' '
KKBER = s_cinfo-KKBER
KUNNR = Sknkk-KUNNR
RASID = RASID
IMPORTING SFAE1 = RF035-SFAE1
SFAE2 = RF035-SFAE2
SFAE3 = RF035-SFAE3
SFAE4 = RF035-SFAE4
SFAE5 = RF035-SFAE5
SFAEL = RF035-SFAEL
EXCEPTIONS NO_OPEN_ITEMS = 4.
IF SY-SUBRC = 0.
*-- RF035 -
SKNKK-SFAE1 = SKNKK-SFAE1 + RF035-SFAE1.
SKNKK-SFAE2 = SKNKK-SFAE2 + RF035-SFAE2.
SKNKK-SFAE3 = SKNKK-SFAE3 + RF035-SFAE3.
SKNKK-SFAE4 = SKNKK-SFAE4 + RF035-SFAE4.
SKNKK-SFAE5 = SKNKK-SFAE5 + RF035-SFAE5.
SKNKK-SFAE5 = SKNKK-SFAE5 + RF035-SFAE5.
SKNKK-SFAEL = SKNKK-SFAEL + RF035-SFAEL.
ENDIF.
ENDLOOP.
ENDFORM. " GET_AGING_BUCKETS
*& Form header
This Subroutine gets data for displaying title *
There are no interface parameters to be passed to this subroutine. *
FORM header .
wa_final-string = text-000. APPEND wa_final TO i_final.
wa_final-string = text-001. APPEND wa_final TO i_final.
wa_final-string = text-002. APPEND wa_final TO i_final.
wa_final-string = text-003. APPEND wa_final TO i_final.
wa_final-string = text-004. APPEND wa_final TO i_final.
wa_final-string = text-005. APPEND wa_final TO i_final.
wa_final-string = text-006. APPEND wa_final TO i_final.
wa_final-string = text-007. APPEND wa_final TO i_final.
wa_final-string = text-008. APPEND wa_final TO i_final.
wa_final-string = text-009. APPEND wa_final TO i_final.
wa_final-string = text-010. APPEND wa_final TO i_final.
wa_final-string = text-011. APPEND wa_final TO i_final.
wa_final-string = text-012. APPEND wa_final TO i_final.
wa_final-string = text-013. APPEND wa_final TO i_final.
wa_final-string = text-014. APPEND wa_final TO i_final.
wa_final-string = text-015. APPEND wa_final TO i_final.
wa_final-string = text-016. APPEND wa_final TO i_final.
wa_final-string = text-017. APPEND wa_final TO i_final.
wa_final-string = text-018. APPEND wa_final TO i_final.
wa_final-string = text-019. APPEND wa_final TO i_final.
wa_final-string = text-020. APPEND wa_final TO i_final.
wa_final-string = text-021. APPEND wa_final TO i_final.
wa_final-string = text-022. APPEND wa_final TO i_final.
wa_final-string = text-023. APPEND wa_final TO i_final.
wa_final-string = text-024. APPEND wa_final TO i_final.
ENDFORM. " header
*& Form DOWNLOADCREDITDATA
text
-->P_P_PATH text
FORM DOWNLOADCREDITDATA USING P_PATH.
DATA:
lw_file2 TYPE string . " File Path
lw_file2 = p_PATH.
CALL FUNCTION 'GUI_DOWNLOAD'
EXPORTING
BIN_FILESIZE = BIN_FILESIZE
filename = lw_file2
filetype = 'DBF'
APPEND = ' '
write_field_separator = ' '
HEADER = '00'
TRUNC_TRAILING_BLANKS = 'X'
WRITE_LF = 'X'
COL_SELECT = 'X'
COL_SELECT_MASK = ' '
DAT_MODE = 'X'
CONFIRM_OVERWRITE = ' '
NO_AUTH_CHECK = ' '
CODEPAGE = ' '
IGNORE_CERR = ABAP_TRUE
REPLACEMENT = '#'
WRITE_BOM = ' '
TRUNC_TRAILING_BLANKS_EOL = 'X'
WK1_N_FORMAT = '0'
WK1_N_SIZE = ' '
WK1_T_FORMAT = ' '
WK1_T_SIZE = ' '
IMPORTING
FILELENGTH = FILELENGTH
TABLES
data_tab = I_CINFO
fieldnames = i_final
EXCEPTIONS
file_write_error = 1
no_batch = 2
gui_refuse_filetransfer = 3
invalid_type = 4
no_authority = 5
unknown_error = 6
header_not_allowed = 7
separator_not_allowed = 8
filesize_not_allowed = 9
header_too_long = 10
dp_error_create = 11
dp_error_send = 12
dp_error_write = 13
unknown_dp_error = 14
access_denied = 15
dp_out_of_memory = 16
disk_full = 17
dp_timeout = 18
file_not_found = 19
dataprovider_exception = 20
control_flush_error = 21
IF sy-subrc <> 0.
Messege
ENDIF. " IF sy-subrc EQ 0
ENDFORM. " DOWNLOADCREDITDATA
*& Form DOWNLOAD_CREDIT_DATA
text
--> p1 text
<-- p2 text
FORM DOWNLOAD_CREDIT_DATA .
PERFORM HEADER.
PERFORM DOWNLOADCREDITDATA USING P_PATH.
ENDFORM. " DOWNLOAD_CREDIT_DATA
*& Form GET_PGRESS_INDICATOR
text
-->P_L_TEXT text
-->P_L_PCT text
FORM GET_PGRESS_INDICATOR USING L_TEXT
L_PCT.
CALL FUNCTION 'SAPGUI_PROGRESS_INDICATOR'
EXPORTING
PERCENTAGE = l_pct
TEXT = l_TEXT.
ENDFORM. " GET_PGRESS_INDICATORIf you are just Downloading to a Flat file then why dont you have logic in place for the program to dump the data read into the file to that point depending on any criteria like accounts or customer then clear the internal table and run it in the back ground.
try to use cursor to read the records from the table which will make it a bit more efficient than plain select stement. -
Performance issue in Report (getting time out error)
Hi experts,
I am doing Performance for a Report (getting time out error)
Please see the code below and .
while looping internal table IVBAP after 25 minutes its showing time out error at this poit ->
SELECT MAX( ERDAT ) .
please send alternate code for this .
Advance thanks
from
Nagendra
Get Sales Order Details
CLEAR IVBAP.
REFRESH IVBAP.
SELECT VBELN POSNR MATNR NETWR KWMENG WERKS FROM VBAP
INTO CORRESPONDING FIELDS OF TABLE IVBAP
FOR ALL ENTRIES IN IVBAK
WHERE VBELN = IVBAK-VBELN
AND MATNR IN Z_MATNR
AND WERKS IN Z_WERKS
AND ABGRU = ' '.
Check for Obsolete Materials - Get Product Hierarhy/Mat'l Description
SORT IVBAP BY MATNR WERKS.
CLEAR: WK_MATNR, WK_WERKS, WK_PRDHA, WK_MAKTX,
WK_BLOCK, WK_MMSTA, WK_MSTAE.
LOOP AT IVBAP.
CLEAR WK_INVDATE. "I6677.sn
SELECT MAX( ERDAT ) FROM VBRP INTO WK_INVDATE WHERE
AUBEL EQ IVBAP-VBELN AND
AUPOS EQ IVBAP-POSNR.
IF SY-SUBRC = 0.
MOVE WK_INVDATE TO IVBAP-INVDT.
MODIFY IVBAP.
ENDIF. "I6677.e n
SELECT SINGLE * FROM MBEW WHERE "I6759.sn
MATNR EQ IVBAP-MATNR AND
BWKEY EQ IVBAP-WERKS AND
BWTAR EQ SPACE.
IF SY-SUBRC = 0.
MOVE MBEW-STPRS TO IVBAP-STPRS.
IVBAP-TOT = MBEW-STPRS * IVBAP-KWMENG.
MODIFY IVBAP.
ENDIF. "I6759.en
IF IVBAP-MATNR NE WK_MATNR OR IVBAP-WERKS NE WK_WERKS.
CLEAR: WK_BLOCK, WK_MMSTA, WK_MSTAE, WK_PRDHA, WK_MAKTX.
MOVE IVBAP-MATNR TO WK_MATNR.
MOVE IVBAP-WERKS TO WK_WERKS.
SELECT SINGLE MMSTA FROM MARC INTO MARC-MMSTA
WHERE MATNR = WK_MATNR
AND WERKS = WK_WERKS.
IF NOT MARC-MMSTA IS INITIAL.
MOVE '*' TO WK_MMSTA.
ENDIF.
SELECT SINGLE LVORM PRDHA MSTAE MSTAV FROM MARA
INTO (MARA-LVORM, MARA-PRDHA, MARA-MSTAE, MARA-MSTAV)
WHERE MATNR = WK_MATNR.
IF ( NOT MARA-MSTAE IS INITIAL ) OR
( NOT MARA-MSTAV IS INITIAL ) OR
( NOT MARA-LVORM IS INITIAL ).
MOVE '*' TO WK_MSTAE.
ENDIF.
MOVE MARA-PRDHA TO WK_PRDHA.
SELECT SINGLE MAKTX FROM MAKT INTO WK_MAKTX
WHERE MATNR = WK_MATNR
AND SPRAS = SY-LANGU.
ENDIF.
IF Z_BLOCK EQ 'B'.
IF WK_MMSTA EQ ' ' AND WK_MSTAE EQ ' '.
DELETE IVBAP.
CONTINUE.
ENDIF.
ELSEIF Z_BLOCK EQ 'U'.
IF WK_MMSTA EQ '' OR WK_MSTAE EQ ''.
DELETE IVBAP.
CONTINUE.
ENDIF.
ELSE.
IF WK_MMSTA EQ '' OR WK_MSTAE EQ ''.
MOVE '*' TO WK_BLOCK.
ENDIF.
ENDIF.
IF WK_PRDHA IN Z_PRDHA. "I4792
MOVE WK_BLOCK TO IVBAP-BLOCK.
MOVE WK_PRDHA TO IVBAP-PRDHA.
MOVE WK_MAKTX TO IVBAP-MAKTX.
MODIFY IVBAP.
ELSE. "I4792
DELETE IVBAP. "I4792
ENDIF. "I4792
IF NOT Z_ALNUM[] IS INITIAL. "I9076
SELECT SINGLE * FROM MAEX "I9076
WHERE MATNR = IVBAP-MATNR "I9076
AND ALNUM IN Z_ALNUM. "I9076
IF SY-SUBRC <> 0. "I9076
DELETE IVBAP. "I9076
ENDIF. "I9076
ENDIF. "I9076
ENDLOOP.Hi Nagendra!
Get Sales Order Details
CLEAR IVBAP.
REFRESH IVBAP.
check ivbak is not initial
SELECT VBELN POSNR MATNR NETWR KWMENG WERKS FROM VBAP
INTO CORRESPONDING FIELDS OF TABLE IVBAP
FOR ALL ENTRIES IN IVBAK
WHERE VBELN = IVBAK-VBELN
AND MATNR IN Z_MATNR
AND WERKS IN Z_WERKS
AND ABGRU = ' '.
Check for Obsolete Materials - Get Product Hierarhy/Mat'l Description
SORT IVBAP BY MATNR WERKS.
CLEAR: WK_MATNR, WK_WERKS, WK_PRDHA, WK_MAKTX,
WK_BLOCK, WK_MMSTA, WK_MSTAE.
avoid select widin loop. instead do selection outside loop.u can use read statement......and then loop if required.
LOOP AT IVBAP.
CLEAR WK_INVDATE. "I6677.sn
SELECT MAX( ERDAT ) FROM VBRP INTO WK_INVDATE WHERE
AUBEL EQ IVBAP-VBELN AND
AUPOS EQ IVBAP-POSNR.
IF SY-SUBRC = 0.
MOVE WK_INVDATE TO IVBAP-INVDT.
MODIFY IVBAP.
ENDIF. "I6677.e n
SELECT SINGLE * FROM MBEW WHERE "I6759.sn
MATNR EQ IVBAP-MATNR AND
BWKEY EQ IVBAP-WERKS AND
BWTAR EQ SPACE.
IF SY-SUBRC = 0.
MOVE MBEW-STPRS TO IVBAP-STPRS.
IVBAP-TOT = MBEW-STPRS * IVBAP-KWMENG.
MODIFY IVBAP.
ENDIF. "I6759.en
IF IVBAP-MATNR NE WK_MATNR OR IVBAP-WERKS NE WK_WERKS.
CLEAR: WK_BLOCK, WK_MMSTA, WK_MSTAE, WK_PRDHA, WK_MAKTX.
MOVE IVBAP-MATNR TO WK_MATNR.
MOVE IVBAP-WERKS TO WK_WERKS.
SELECT SINGLE MMSTA FROM MARC INTO MARC-MMSTA
WHERE MATNR = WK_MATNR
AND WERKS = WK_WERKS.
IF NOT MARC-MMSTA IS INITIAL.
MOVE '*' TO WK_MMSTA.
ENDIF.
SELECT SINGLE LVORM PRDHA MSTAE MSTAV FROM MARA
INTO (MARA-LVORM, MARA-PRDHA, MARA-MSTAE, MARA-MSTAV)
WHERE MATNR = WK_MATNR.
IF ( NOT MARA-MSTAE IS INITIAL ) OR
( NOT MARA-MSTAV IS INITIAL ) OR
( NOT MARA-LVORM IS INITIAL ).
MOVE '*' TO WK_MSTAE.
ENDIF.
MOVE MARA-PRDHA TO WK_PRDHA.
SELECT SINGLE MAKTX FROM MAKT INTO WK_MAKTX
WHERE MATNR = WK_MATNR
AND SPRAS = SY-LANGU.
ENDIF.
IF Z_BLOCK EQ 'B'.
IF WK_MMSTA EQ ' ' AND WK_MSTAE EQ ' '.
DELETE IVBAP.
CONTINUE.
ENDIF.
ELSEIF Z_BLOCK EQ 'U'.
IF WK_MMSTA EQ '' OR WK_MSTAE EQ ''.
DELETE IVBAP.
CONTINUE.
ENDIF.
ELSE.
IF WK_MMSTA EQ '' OR WK_MSTAE EQ ''.
MOVE '*' TO WK_BLOCK.
ENDIF.
ENDIF.
IF WK_PRDHA IN Z_PRDHA. "I4792
MOVE WK_BLOCK TO IVBAP-BLOCK.
MOVE WK_PRDHA TO IVBAP-PRDHA.
MOVE WK_MAKTX TO IVBAP-MAKTX.
MODIFY IVBAP.
ELSE. "I4792
DELETE IVBAP. "I4792
ENDIF. "I4792
IF NOT Z_ALNUM[] IS INITIAL. "I9076
SELECT SINGLE * FROM MAEX "I9076
WHERE MATNR = IVBAP-MATNR "I9076
AND ALNUM IN Z_ALNUM. "I9076
IF SY-SUBRC 0. "I9076
DELETE IVBAP. "I9076
ENDIF. "I9076
ENDIF. "I9076
endloop.
U have used many select queries widin loop-endloop which is a big hindrance as far as performance is concerned.Avoid such practice.
Thanks
Deepika -
I just set up a new time capsule. it worked fine on my first macbook. But now I cannot backup my second macbook. Getting "Time Machine Error" "The backup disk image could not be created." Do I need to change settings on my time capsule to allow the second computer, or do I need to change something on the computer to allow time machine to work right?
Try #C9 in Pondini's Time Machine Troublshooting
http://pondini.org/TM/Troubleshooting.html -
Time Constraint Error when calling a Function module from Webdynpro ABAP
Any help will be greatly appreciated - Thanks RM
Time Constraint Error
Information on where terminated
Termination occurred in the ABAP program "SAPUP50R" - in
"CHECK_TIME_CONSTRAINT_S1".
The main program was "MP000000 ".
In the source code you have the termination point in line 1069
of the (Include) program "UP50RU01".
Error occurred during batch input processing
Source Code Extract
l_is_inconsistent = 'X'.
ENDIF.
Check if there are inverted time periods.
IF l_prelp_line-begda > l_prelp_line-endda.
l_is_inconsistent = 'X'.
ENDIF.
Check if there are overlaps or gaps.
IF NOT l_prelp_before IS INITIAL.
l_date_difference = l_prelp_line-begda - l_prelp_before-endda.
IF l_date_difference <> 1.
l_is_inconsistent = 'X'.
ENDIF.
ENDIF.
l_prelp_before = l_prelp_line.
ENDLOOP.
IF l_prelp_before-endda <> '99991231'.
l_is_inconsistent = 'X'.
ENDIF.
IF l_is_inconsistent = 'X'.
IF p_access_type = 'R'.
490 Datenbankschiefstand Personalnummer & Infotyp &
MESSAGE x490 WITH l_prelp_before-pernr l_prelp_before-infty.
ELSE.
491 Unzulässige Daten Personalnummer & Infotyp &
Line 1069 Error occcurs >>>> MESSAGE x491 WITH l_prelp_before-pernr l_prelp_before-infty.
ENDIF.
ENDIF.
ENDFORM. " CHECK_TIME_CONSTRAINT_S1 "XYVN0352581
*& Form clear_no_adapter_needed new "XREN844998
text
FORM clear_no_adapter_needed .
CLEAR no_adapter_needed.
ENDFORM. " clear_no_adapter_needed
*& Form set_no_adapter_needed new "XREN844998
text
FORM set_no_adapter_needed .
no_adapter_needed = 'X'.
ENDFORM. " clear_no_adapter_neededHi,
Well, are you trying to do a batch input on infotype 0000? If yes you need to check that the proposed values respects the time constraint, meaning no gap, no overlaps and no inversions. Also fields SUBTY, OBJPS, SPRPS and SEQNR must remain initial when processing IT0000...
Kr,
Manu.
Maybe you are looking for
-
When I receive text messages, it displays phone number instead of contact name.
I updated to iOS 5 on my iPhone 4 over the weekend. Since updating to iOS 5, all of my text messages show up with a phone number listed instead of the contacts name. I checked my contact info and all the contact information is listed and the numbers
-
Wired mouse pointer disappears?
The pointer on my wired mouse regularly disappears from the screen, making it rather difficult to continue to use Word Any suggestions as to the cause?
-
Cnr audio card and tv out card
I have a new tv out card and cnr card for the k7n420 and im looking to sell them together. If anyone is interested please email at [email protected] Im looking to get $45usd including shipping. (usa only) There brand new and never used.
-
Can I install Production Premium cs6 over cs5?
running Windows 7 on 64 bit system. I'm read you can have both versions of Photoshop at the same time, but do I want both versions? Ditto for Premiere Pro or Encore ... Thanks!!
-
Does upgrading erase video content on iPad?
I recently upgraded iPad iOS and seemed to have lost all my previously downloaded videos. Any ideas for where they are?