How to use "GetPanelHandleFromTabPage" in certain situation
關於GetPanelHandleFromTabPage想要請教各位前輩們
如果我在PANEL 底下產生一個TAB物件(TAB1)
然後又在此TAB物件的第二個page產生另一個TAB(TAB2)
這麼一來,我要怎麼取得TAB2第二個page的handle?
麻煩前輩們指點迷津~謝謝~
Solved!
Go to Solution.
I already fix it~!
here is the method to get multilayer tab page handle:
static int TABhandle1, TABhandle2;
GetPanelHandleFromTabPage(panelHandle,PANEL_TAB,0,TABhandle1); // Get layer one TAB "page 1" handle
GetPanelHandleFromTabPage(TABhandle1,TABPANEL_2_TAB,0,TABhandle2); // Get layer two TAB "page 1" handle
Taht's it~
Thank you~
Jamie
Similar Messages
-
HOW TO use DBDataSource in this situation?
hi all,
I add a Matrix on system Form(eg:BOM Form),then I want to use Matrix.LoadFromDataSource() to load data.
the simple code is :
SAPbobsCOM.Recordset oRecordset = (SAPbobsCOM.Recordset)SBO_Company.GetBusinessObject(SAPbobsCOM.BoObjectTypes.BoRecordset);
oRecordset.DoQuery("select ItemCode,ItemName from OITM ");
SAPbouiCOM.Matrix oMatrix = (SAPbouiCOM.Matrix)m_SboForm.Items.Item("MatrixFormUID").Specific;
SAPbouiCOM.DBDataSource oDBData = m_SboForm.DataSources.DBDataSources.Item("tablename");//this dbdatasource is added before
oDBData.Clear();//error occur in this code:Operation is not supported in system Form
oRecordset.MoveFirst();
while (!oRecordset.EoF)
oMatrix.LoadFromDataSource();
how to use LoadFromDataSource() in this situation?if evaluate every control,the speed is too slow.
thanksThe quick way is as I wrote you - bind it to datasource (you fill it cell by cell). The code is something like:
omatrix.Clear()
oColumn = oColumns.Item("Column name 1")
oColumn.DataBind.SetBound(True, "table name", "itemcode")
oColumn = oColumns.Item("Column name 2")
oColumn.DataBind.SetBound(True, "table name", "itemname")
oMatrix.LoadFromDataSource();
There isn`t necessary the while (!oRecordset.EoF) cycle -
How can I detect a certain text within a field within CASE using IF
Dear all,
for a transformation / generation of values receiving from R/3 into BW I try to
manupulate three fields. I have a problem detecting a string in a field.
I am using a CASE with several WHEN clauses on one field. Depending on the
value, an IF is integrated. There I look into another field evaluating, if it contains
a certain string. E.g. IF STRING CP 'xyz' OR 'abc'.
System gives error for the locigal expression. I also tried CS, but same error.
How can I detect a certain text within a field and which is the right logical
expression.
Many thanks in advance!!!
ClaudiaHi,
Folow the blow example...
May be it helps....
DATA: hex1 TYPE string,
hex2 TYPE string.
hex1 = 'FFFF'.
hex2 = '123FF'.
IF hex1 CP hex2.
ENDIF.
Cheers,
SImha. -
How to search for a certain cross reference using its name in FM 11?
How to search for a certain cross reference using its name in FM 11?
Well, thank you. I am only using Find dialog box. By "name", I'd like to give an example. The background is FM 11 structured. I have an element "xref" which is used to make cross reference. Now In Chapter 1, there is a sentence like "This is an ODU for ...". I made a cross ref of the word "ODU" to its full name "outdoor unit" in Chapter 2 (in the same book). After this, the word "ODU" in the sentence in Chapter 1 will no longer be a plain text. So I no longer can use the find dialog box to search for "ODU" because it is already an xref rather than text. I am not if it's clear.
-
Hi. I have an iPhone and a Mac,and my sister has iPad2 and iPhone also.we both use a pc to sync our devices and use one App ID in our devices.but we want to use personal iCloud to achieve our personal files.how can I use iCloud in this situation?
You will need to setup a new Apple ID for your sister. You have to have an Apple ID and iDevice connected and using that account to get an iCloud account.
-
how can i safely segregate certain cookies (such as my bank's) so that i can use the delete all cookies feature but preserve those cookies? windows xp, firefox 13.0.1
You can't delete all cookies if you want to preserve some of them.
You will have to let all cookies expire when you close Firefox and create an allow exception for cookies that you want to keep and only clear cookies manually and not via Clear Recent History.
*Tools > Options > Privacy : History: [X] Clear history when Firefox closes > Settings
*https://support.mozilla.org/kb/Clear+Recent+History
You can also consider to access website in Private Browsing mode if you do not want to store data to disk form those websites.
*https://support.mozilla.org/kb/Private+Browsing -
Hi, I'm new to using mac laptop, i just got one 1 month a go, i was downloading adobe flash player and it asked me for a password for the computer and i never created one, how do i over pass this situation?
It is asking for your computer administrator account password to make system changes. You "should" have an administrator account password.
HTH -
Every time I hit the globe when sending a text it tells me how to use alternate keyboards. Please tell me how to turn this off.
That's not what I meant. I know how to send a text, but when I try to insert and emoji the same alert comes up.
-
How to use the selection profile and status profile for production order?
Hi expert,
I want to know how to use the selection profile and status profile for production order. what's the usage for these two selection profile and status profile ?
Please help me.
thanks in advance.
george.shiHi George,
There are are two types of statuses.One is system status and second one is user status.These statuses will tell us current situation of an order.
We can't change system statuses.But we can create our own statuses through status profile.With this profile we can control user statuses.
In this status profile,
1.We define the sequence in which user statuses can be activated,
2.We define initial statuses
3. Allow or prohibit certain business transactions.
Selection profiles are used to select the objects (say production orders) with different status combinations.We assign status profiles to selection profiles in BS42 T-Code.
Regards,
Raja.
Edited by: Rajarao on Oct 30, 2008 6:21 AM
Edited by: Rajarao on Oct 30, 2008 6:22 AM -
How to use BAPI_MATERIAL_AVAILABILITY Function Module....
Hi Experts,
I want to know actual free available quantity (ATP Qty.) for mass materials,
How to use BAPI_MATERIAL_AVAILABILITY function module ?
I have select all material from MARA and inserted in itab.
LOOP AT ITAB.
CALL FUNCTION 'BAPI_MATERIAL_AVAILABILITY'
EXPORTING
PLANT =
MATERIAL =
UNIT =
CHECK_RULE =
STGE_LOC =
BATCH =
CUSTOMER =
DOC_NUMBER =
ITM_NUMBER =
WBS_ELEM =
STOCK_IND =
DEC_FOR_ROUNDING =
DEC_FOR_ROUNDING_X =
READ_ATP_LOCK =
READ_ATP_LOCK_X =
IMPORTING
ENDLEADTME =
AV_QTY_PLT =
DIALOGFLAG =
RETURN =
TABLES
WMDVSX =
WMDVEX =
I dont know how to use it.
pl. guide us.
YusufHi,
data: iwmdvsx type table of bapiwmdvs with header line,
iwmdvex type table of bapiwmdve with header line.
parameters: p_matnr type mara-matnr,
p_werks type marc-werks,
p_meins type mara-meins.
call function 'BAPI_MATERIAL_AVAILABILITY'
exporting
plant = p_werks
material = p_matnr
unit = p_meins
CHECK_RULE =
STGE_LOC =
BATCH =
CUSTOMER =
DOC_NUMBER =
ITM_NUMBER =
WBS_ELEM =
STOCK_IND =
IMPORTING
ENDLEADTME =
AV_QTY_PLT =
DIALOGFLAG =
RETURN =
tables
wmdvsx = iwmdvsx
wmdvex = iwmdvex.
check sy-subrc = 0.
Text
ATP information
Functionality
Using this function module, you can determine the receipt quantity still available for a particular material in a certain plant according to ATP logic (MRPII).
The availability check is carried out on transferring the material number, the plant and the input table (WMDVSX). The scope of the check, that is, which stocks, receipts and issues are to be included in the check is defined by the combination of checking group (material master) and cheking rule. In the function module, the system uses the checking rule defined in Sales & Distribution (A). You can overrule this checking rule by using an interface or a user-exit (exit_saplw61v_001). A similar procedure is also valid for the plant parameters. The customer number in the user-exit means that the plant selection can be controlled via the customer. If no plant parameters are given via the interface, the system uses the parameter 'WRK' saved in the user's fixed values.
The results of the availability check are recorded in the output table (WMDVEX). This table contains dates and available receipt quantities (ATP quantities). The results of the check depends on the following entries:
If no date and no quantity is transferred, the system displays the ATP situation from today's date into the future as the result.
If only a date and no quantity is transferred, the system displays the ATP situation from the corresponding date as the result.
If both a date and a quantity are transferred, the system calculates the availability situation for the quantity specified.
In the last two cases, the parameter 'DIALOGFLAG' is supplied. This can result in the following:
' ' (blank) <=> quantity completely available
'X' <=> only partial quantity available or not available at
all
'N' <=> Material not included in the availability check
(Material not relevant to the availability check)
The system also displays the end of the replenishment lead time (ENDLEADTME).
regards -
How to use table control in bdc, plz somebody tell me.
Hi Gurus,
Ples tell me
how to use table control in bdc, plz somebody tell me.
And send Sample CODE also. Thnaks in advance.hi,
Table control / step loop in BDC
Steploop and table contol is inevitable in certain transactions. When we run BDC for such transactions, we will face the situation: how many visible lines of steploop/tablecontrol are on the screen?
Although we can always find certain method to deal with it, such as function code 'NP', 'POPO', considering some extreme situation: there is only one line visible one the screen, our BDC program should display an error message. (See transaction 'ME21', we you resize your screen to let only one row visible, you can not enter mutiple lines on this screen even you use 'NP')
we can determine the number of visible lines on Transaction Screen from our Calling BDC program.
Demo ABAP code has two purposes:
1. how to determine number of visible lines and how to calculte page number;
(the 'calpage' routine has been modify to meet general purpose usage)
2. using field symbol in BDC program, please pay special attention to the difference
in Static ASSIGN and Dynamic ASSIGN.
Step1: go to screen painter to display the screen 121, then we can count the fixed line on this screen, there is 7 lines above the steploop and 2 lines below the steploop, so there are total 9 fixed lines on this screen. This means except these 9 lines, all the other line is for step loop.
Then have a look at steploop itselp, one entry of it will occupy two lines.
(Be careful, for table control, the head and the bottom scroll bar will possess another two fixed lines, and there is a maximum number for table line)
Now we have : FixedLine = 9
LoopLine = 2(for table control, LoopLine is always equal to 1)
Step2: go to transaction itself(ME21) to see how it roll page, in ME21, the first line of new page is always occupied by the last line of last page, so it begin with index '02', but in some other case, fisrt line is empty and ready for input.
Now we have: FirstLine = 0
or FirstLine = 1 ( in our case, FirstLine is 1 because the first line of new page is fulfilled)
Step3: write a subroutine calcalculating number of pages
(here, the name of actual parameter is the same as formal parameter)
global data: FixedLine type i, " number of fixed line on a certain screen
LoopLine type i, " the number of lines occupied by one steploop item
FirstLine type i, " possbile value 0 or 1, 0 stand for the first line of new " scrolling screen is empty, otherwise is 1
Dataline type i, " number of items you will use in BDC, using DESCRIBE to get
pageno type i, " you need to scroll screen how many times.
line type i, " number of lines appears on the screen.
index(2) type N, " the screen index for certain item
begin type i, " from parameter of loop
end type i. " to parameter of loop
*in code sample, the DataTable-linindex stands for the table index number of this line
form calpage using FixedLine type i (see step 1)
LoopLine type i (see step 1)
FirstLine type i (see step 2)
DataLine type i ( this is the item number you will enter in transaction)
changing pageno type i (return the number of page, depends on run-time visible line in table control/ Step Loop)
changing line type i.(visible lines one the screen)
data: midd type i,
vline type i, "visible lines
if DataLine eq 0.
Message eXXX.
endif.
vline = ( sy-srows - FixedLine ) div LoopLine.
*for table control, you should compare vline with maximum line of
*table control, then take the small one that is min(vline, maximum)
*here only illustrate step loop
if FirstLine eq 0.
pageno = DataLine div vline.
if pageno eq 0.
pageno = pageno + 1.
endif.
elseif FirstLine eq 1.
pageno = ( DataLine - 1 ) div ( vline - 1 ) + 1.
midd = ( DataLine - 1 ) mod ( vline - 1).
if midd = 0 and DataLine gt 1.
pageno = pageno - 1.
endif.
endif.
line = vline.
endform.
Step4 write a subroutine to calculate the line index for each item.
form calindex using Line type i (visible lines on the screen)
FirstLine type i(see step 2)
LineIndex type i(item index)
changing Index type n. (index on the screen)
if FirstLine = 0.
index = LineIndex mod Line.
if index = '00'.
index = Line.
endif.
elseif FirstLine = 1.
index = LineIndex mod ( Line - 1 ).
if ( index between 1 and 0 ) and LineIndex gt 1.
index = index + Line - 1.
endif.
if Line = 2.
index = index + Line - 1.
endif.
endif.
endform.
Step5 write a subroutine to calculate the loop range.
form calrange using Line type i ( visible lines on the screen)
DataLine type i
FirstLine type i
loopindex like sy-index
changing begin type i
end type i.
If FirstLine = 0.
if loopindex = 1.
begin = 1.
if DataLine <= Line.
end = DataLine.
else.
end = Line.
endif.
elseif loopindex gt 1.
begin = Line * ( loopindex - 1 ) + 1.
end = Line * loopindex.
if end gt DataLine.
end = DataLine.
endif.
endif.
elseif FirstLine = 1.
if loopindex = 1.
begin = 1.
if DataLine <= Line.
end = DataLine.
else.
end = Line.
endif.
elseif loop index gt 1.
begin = ( Line - 1 ) * ( loopindex - 1 ) + 2.
end = ( Line - 1 ) * ( loopindex - 1 ) + Line.
if end gt DataLine.
end = DataLine.
endif.
endif.
endif.
endform.
Step6
using field sysbol in your BDC, for example: in ME21, but you should calculate each item will correponding to which index in steploop/Table Control
form creat_bdc.
field-symbols: , , .
data: name1(14) value 'EKPO-EMATN(XX)',
name2(14) value 'EKPO-MENGE(XX)',
name3(15) value 'RM06E-SELKZ(XX)'.
assign: name1 to ,
name2 to ,
name3 to .
do pageno times.
if sy-index gt 1
*insert scroll page ok_code"
endif.
perform calrange using Line DataLine FirstLine sy-index
changing begin end.
loop at DataTable from begin to end.
perform calindex using Line FirstLine DataTable-LineIndex changing Index.
name1+11(2) = Index.
name2+11(2) = Index.
name3+12(2) = Index.
perform bdcfield using DataTable-matnr.
perform bdcfield using DataTable-menge.
perform bdcfield using DataTable-indicator.
endloop.
enddo.
example 1
BDC table control is an area on the screen in which you can display data in tabular form. You process it using a loop. Table controls are comparable to step loop tables. While a table control consists of a single definition row, step loop blocks may extend over more than one row. Table controls are more flexible than step loops, and are intended to replace them
When you need to handle a scenario like in sales order,it may contain more than one material,if you have more than one material We have to use table control,it will have number of columns and number of rows.
Table controls allow you to enter, display, and modify tabular data easily on the screen
Check this code,
PARAMETERS: file1 LIKE rlgrap-filename.
*Internal Table Declarations
DATA: BEGIN OF itab OCCURS 0,
matnr(18) TYPE c, "MaterialNumber
werks(4) TYPE c, "Plant
vdatu(10) TYPE c, "Valid From Date
bdatu(10) TYPE c, "Valid To Date
lifnr(10) TYPE c, "Vendor Number
ekorg(4) TYPE c, "Purchasing Organization
feskz TYPE c, "Fixed
autet TYPE c, "MRP Indicator
END OF itab.
DATA: bdcdata LIKE TABLE OF bdcdata WITH HEADER LINE.
*VARIABLES Declarations
DATA: wa1 LIKE LINE OF itab. "Workarea for ITAB
DATA: n TYPE i, "Check
count TYPE i.
DATA: cnt(2), "Counter
wa(15). "Workarea to hold concatenatedvalue
DATA v_msg(100).
DATA: flag.
DATA: file TYPE string.
*Initialization event
INITIALIZATION.
*At-selection-screen event
*To provide Input help for file name
AT SELECTION-SCREEN ON VALUE-REQUEST FOR file1.
CALL FUNCTION 'F4_FILENAME'
EXPORTING
program_name = syst-cprog
dynpro_number = syst-dynnr
IMPORTING
file_name = file1.
*START-OF-SELECTION EVENT
START-OF-SELECTION.
MOVE file1 TO file.
CALL FUNCTION 'GUI_UPLOAD'
EXPORTING
filename = file
filetype = 'ASC'
has_field_separator = 'X'
TABLES
data_tab = itab
EXCEPTIONS
file_open_error = 1
file_read_error = 2
no_batch = 3
gui_refuse_filetransfer = 4
invalid_type = 5
no_authority = 6
unknown_error = 7
bad_data_format = 8
header_not_allowed = 9
separator_not_allowed = 10
header_too_long = 11
unknown_dp_error = 12
access_denied = 13
dp_out_of_memory = 14
disk_full = 15
dp_timeout = 16
OTHERS = 17.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
*To populate BDCDATA and start data transfer
LOOP AT itab .
To validate Plant range
IF itab-werks = '1000' OR itab-werks = '2000'
OR itab-werks = '1008'.
AT NEW werks.
CLEAR: n.
cnt = 1.
PERFORM bdc_dynpro USING 'SAPLMEOR' '0200'.
PERFORM bdc_field USING 'BDC_CURSOR'
'EORD-MATNR'.
PERFORM bdc_field USING 'BDC_OKCODE'
'/00'.
PERFORM bdc_field USING 'EORD-MATNR'
itab-matnr.
PERFORM bdc_field USING 'EORD-WERKS'
itab-werks.
PERFORM bdc_dynpro USING 'SAPLMEOR' '0205'.
CONCATENATE 'EORD-EKORG(' cnt ')' INTO wa.
PERFORM bdc_field USING 'BDC_CURSOR'
wa.
PERFORM bdc_field USING 'BDC_OKCODE'
'=BU'.
ENDAT.
IF n = 12.
READ TABLE bdcdata WITH KEY fval = '=BU'.
bdcdata-fval = '=NS'.
MODIFY bdcdata INDEX sy-tabix TRANSPORTING fval.
PERFORM bdc_dynpro USING 'SAPLMEOR' '0205'.
PERFORM bdc_field USING 'BDC_CURSOR'
'EORD-VDATU(01)'.
PERFORM bdc_field USING 'BDC_OKCODE'
'=BU'.
cnt = 2.
n = 2.
ENDIF.
CONCATENATE 'EORD-VDATU(' cnt ')' INTO wa.
PERFORM bdc_field USING wa
itab-vdatu.
CONCATENATE 'EORD-BDATU(' cnt ')' INTO wa.
PERFORM bdc_field USING wa
itab-bdatu.
CONCATENATE 'EORD-LIFNR(' cnt ')' INTO wa.
PERFORM bdc_field USING wa
itab-lifnr.
CONCATENATE 'EORD-EKORG(' cnt ')' INTO wa.
PERFORM bdc_field USING wa
itab-ekorg.
CONCATENATE 'RM06W-FESKZ(' cnt ')' INTO wa.
PERFORM bdc_field USING wa
itab-feskz.
CONCATENATE 'EORD-AUTET(' cnt ')' INTO wa.
PERFORM bdc_field USING wa
itab-autet.
IF n <> 12.
n = cnt.
ENDIF.
cnt = cnt + 1.
AT END OF werks.
CALL TRANSACTION 'ME01' USING bdcdata
UPDATE 'S'
MODE 'A'.
CLEAR:bdcdata,bdcdata[].
CALL FUNCTION 'FORMAT_MESSAGE'
EXPORTING
id = sy-msgid
lang = 'EN'
no = sy-msgno
v1 = sy-msgv1
v2 = sy-msgv2
v3 = sy-msgv3
v4 = sy-msgv4
IMPORTING
msg = v_msg.
WRITE:/ v_msg.
CLEAR: bdcdata,bdcdata[],flag.
ENDAT.
ENDIF.
ENDLOOP.
Start new screen *
FORM bdc_dynpro USING program dynpro.
CLEAR bdcdata.
bdcdata-program = program.
bdcdata-dynpro = dynpro.
bdcdata-dynbegin = 'X'.
APPEND bdcdata.
ENDFORM.
Insert field values
FORM bdc_field USING fnam fval.
IF NOT fval IS INITIAL.
CLEAR bdcdata.
bdcdata-fnam = fnam.
bdcdata-fval = fval.
APPEND bdcdata.
ENDIF.
CLEAR wa.
ENDFORM.
Sample code 2
THis is example to upload the Bank details of the Vendor which has the TC.
REPORT zprataptable2
NO STANDARD PAGE HEADING LINE-SIZE 255.
DATA : BEGIN OF itab OCCURS 0,
i1 TYPE i,
lifnr LIKE rf02k-lifnr,
bukrs LIKE rf02k-bukrs,
ekorg LIKE rf02k-ekorg,
ktokk LIKE rf02k-ktokk,
anred LIKE lfa1-anred,
name1 LIKE lfa1-name1,
sortl LIKE lfa1-sortl,
land1 LIKE lfa1-land1,
akont LIKE lfb1-akont,
fdgrv LIKE lfb1-fdgrv,
waers LIKE lfm1-waers,
END OF itab.
DATA : BEGIN OF jtab OCCURS 0,
j1 TYPE i,
banks LIKE lfbk-banks,
bankl LIKE lfbk-bankl,
bankn LIKE lfbk-bankn,
END OF jtab.
DATA : cnt(4) TYPE n.
DATA : fdt(20) TYPE c.
DATA : c TYPE i.
INCLUDE bdcrecx1.
START-OF-SELECTION.
CALL FUNCTION 'WS_UPLOAD'
EXPORTING
filename = 'C:\first1.txt'
filetype = 'DAT'
TABLES
data_tab = itab.
CALL FUNCTION 'WS_UPLOAD'
EXPORTING
filename = 'C:\second.txt'
filetype = 'DAT'
TABLES
data_tab = jtab.
LOOP AT itab.
PERFORM bdc_dynpro USING 'SAPMF02K' '0100'.
PERFORM bdc_field USING 'BDC_CURSOR'
'RF02K-KTOKK'.
PERFORM bdc_field USING 'BDC_OKCODE'
'/00'.
PERFORM bdc_field USING 'RF02K-LIFNR'
itab-lifnr.
PERFORM bdc_field USING 'RF02K-BUKRS'
itab-bukrs.
PERFORM bdc_field USING 'RF02K-EKORG'
itab-ekorg.
PERFORM bdc_field USING 'RF02K-KTOKK'
itab-ktokk.
PERFORM bdc_dynpro USING 'SAPMF02K' '0110'.
PERFORM bdc_field USING 'BDC_CURSOR'
'LFA1-LAND1'.
PERFORM bdc_field USING 'BDC_OKCODE'
'/00'.
PERFORM bdc_field USING 'LFA1-ANRED'
itab-anred.
PERFORM bdc_field USING 'LFA1-NAME1'
itab-name1.
PERFORM bdc_field USING 'LFA1-SORTL'
itab-sortl.
PERFORM bdc_field USING 'LFA1-LAND1'
itab-land1.
PERFORM bdc_dynpro USING 'SAPMF02K' '0120'.
PERFORM bdc_field USING 'BDC_CURSOR'
'LFA1-KUNNR'.
PERFORM bdc_field USING 'BDC_OKCODE'
'/00'.
PERFORM bdc_dynpro USING 'SAPMF02K' '0130'.
PERFORM bdc_field USING 'BDC_CURSOR'
'LFBK-BANKN(01)'.
PERFORM bdc_field USING 'BDC_OKCODE'
'=ENTR'.
cnt = 0.
LOOP AT jtab WHERE j1 = itab-i1.
cnt = cnt + 1.
CONCATENATE 'LFBK-BANKS(' cnt ')' INTO fdt.
PERFORM bdc_field USING fdt jtab-banks.
CONCATENATE 'LFBK-BANKL(' cnt ')' INTO fdt.
PERFORM bdc_field USING fdt jtab-bankl.
CONCATENATE 'LFBK-BANKN(' cnt ')' INTO fdt.
PERFORM bdc_field USING fdt jtab-bankn.
IF cnt = 5.
cnt = 0.
PERFORM bdc_dynpro USING 'SAPMF02K' '0130'.
PERFORM bdc_field USING 'BDC_CURSOR'
'LFBK-BANKS(01)'.
PERFORM bdc_field USING 'BDC_OKCODE'
'=P+'.
PERFORM bdc_dynpro USING 'SAPMF02K' '0130'.
PERFORM bdc_field USING 'BDC_CURSOR'
'LFBK-BANKN(02)'.
PERFORM bdc_field USING 'BDC_OKCODE'
'=ENTR'.
ENDIF.
ENDLOOP.
PERFORM bdc_dynpro USING 'SAPMF02K' '0130'.
PERFORM bdc_field USING 'BDC_CURSOR'
'LFBK-BANKS(01)'.
PERFORM bdc_field USING 'BDC_OKCODE'
'=ENTR'.
PERFORM bdc_dynpro USING 'SAPMF02K' '0210'.
PERFORM bdc_field USING 'BDC_CURSOR'
'LFB1-FDGRV'.
PERFORM bdc_field USING 'BDC_OKCODE'
'/00'.
PERFORM bdc_field USING 'LFB1-AKONT'
itab-akont.
PERFORM bdc_field USING 'LFB1-FDGRV'
itab-fdgrv.
PERFORM bdc_dynpro USING 'SAPMF02K' '0215'.
PERFORM bdc_field USING 'BDC_CURSOR'
'LFB1-ZTERM'.
PERFORM bdc_field USING 'BDC_OKCODE'
'/00'.
PERFORM bdc_dynpro USING 'SAPMF02K' '0220'.
PERFORM bdc_field USING 'BDC_CURSOR'
'LFB5-MAHNA'.
PERFORM bdc_field USING 'BDC_OKCODE'
'/00'.
PERFORM bdc_dynpro USING 'SAPMF02K' '0310'.
PERFORM bdc_field USING 'BDC_CURSOR'
'LFM1-WAERS'.
PERFORM bdc_field USING 'BDC_OKCODE'
'/00'.
PERFORM bdc_field USING 'LFM1-WAERS'
itab-waers.
PERFORM bdc_dynpro USING 'SAPMF02K' '0320'.
PERFORM bdc_field USING 'BDC_CURSOR'
'RF02K-LIFNR'.
PERFORM bdc_field USING 'BDC_OKCODE'
'=ENTR'.
PERFORM bdc_dynpro USING 'SAPLSPO1' '0300'.
PERFORM bdc_field USING 'BDC_OKCODE'
'=YES'.
PERFORM bdc_transaction USING 'XK01'.
ENDLOOP.
PERFORM close_group.
Header file:
1 63190 0001 0001 0001 mr bal188 b in 31000 a1 inr
2 63191 0001 0001 0001 mr bal189 b in 31000 a1 inr
TC file:
1 in sb 11000
1 in sb 12000
1 in sb 13000
1 in sb 14000
1 in sb 15000
1 in sb 16000
1 in sb 17000
1 in sb 18000
1 in sb 19000
1 in sb 20000
1 in sb 21000
1 in sb 22000
2 in sb 21000
2 in sb 22000
Regards -
MSI GX660, Power Input Broken, How To Use Warranty? OCC Doesn't Reply
Quoting what I wroteto OCC (Online Customer Service)
Quote
Power Input Broken, MSI GX660
Last September I bought an MSI GX660 laptop/notebook. A few weeks ago, I had problems charging it, as I had to adjust the alignment of the cable to get it to charge. The case got worse and worse, until it stopped charging completely last week. I have tried using another MSI charger, and it still does not charge, so I assume that the error is that the input for power has broken. How do I proceed with getting my notebook repaired on warranty?
It's been a week now, and no reply. I'm getting pretty damn mad about having a very good computer which is perfectly functional except for the fact I can't power it. Even more mad am I becoming at the fact that this should very well be included in the warranty, but MSI give very scarce information of how to use this warranty, thus disallowing me from getting my computer repaired. What I've managed to figure out is that I need this to be deemed by an MSI engineer or something as a valid case, and then I get a ticket which I can use when I send my computer to the nearest repair central, but how the hell am I supposed to get this warranty ticket? I thought it was through OCC?
Can anyone please help before I buy a plane ticket and personally shoot the one who arranged customer support in this extraordinarily stupid way? How am I supposed to make use of my warranty, and what have I understood wrong? Thanks on beforehand.
EDIT: Looked through another thread, where I found this link. http://support.msi.eu/en/contact.php
I have never seen that site before, and wonder why it can't be accessed from the main MSI webpage!
Since I live in Sweden, am I support to contact the given company in order to get my warranty, or is there a step inbetween with msi that I have to take?Excuse the threath, it was supposed to be a joke. I just found the information given on how to handle the situation to be very scarce and insufficient. It made me frustrated, and I joked about how frustrated I was. I will refrain from such actions.
I called the company representing MSI repairs today, and found out that they were in fact the ones to contact, something not made very clear on the MSI website. I sent in a report, they accepted it, and my laptop is on the mail now. So much (unneccessary) waiting could've been skipped with better info.
About the error, I assure you that it is no act of violence that caused it. I only had the charger plugged in while the computer was placed on a table, and always transferred the computer in a belkin laptop backpack, with the charger in a separate storage on the bag. I can't see how any physical trauma/extensive pressure could've occured, especially since the problem kind of sneaked up on me. I have no idea how this issue was caused (production error seems somewhat unlikely, as you mentioned, but could still be a posibility), but it certainly was not because of me. Most apparently the repairing company saw it the same way as me as they accepted my warranty repair request, and that's really all that matter to me right now.
The point of this thread was however help with contacting warranty, support, etc. and I managed to figure that out by myself, even though you didn't really answer to that question. Thanks for your reply and your time, though. -
Can anybody please send me a small program on How to Use Dynamic SQL.
How to execute and run give details.
Thanks
nullYou can certainly use the INTO (and USING) clauses of EXECUTE IMMEDIATE to pass in and return data, i.e.
EXECUTE IMMEDIATE sqlStmt
USING variable1, variable2
INTO output1, output2The more complex the statement, however, the more appropriate DBMS_SQL is. DBMS_SQL also has the potential to allow you to use bind variables rather than reparsing the statement many times.
Justin
Distributed Database Consulting, Inc.
http://www.ddbcinc.com/askDDBC -
I have many songs and playlists in my iTunes account. I do not want all of them synced to my iPhone 5S, but that has happened via iCloud, and it has caused a storage problem on my phone. How do I select only certain playlists to be synced to my iPhone?
You need to start over with Music. On the iPhone Music screen uncheck sync music. Also, on the Summary screen uncheck "Manually manage music and videos", then sync and it should clear off your phone.
Next, choose the music you want to sync. If you want to fit more on check "Convert higher bit rate songs to 128 kbps AAC". This will reduce quality slightly, but it won't be noticable unless you are using $300 headphones. -
How to Use document.Lines.SetCurrentLine
Hi there, due to an enormous amount of time spent on this issue, I thought I would share how to use the SetCurrentLine method as posted to me by SAP support:
It seems very cumbersome, as I have now to do an extra Recorset look up to get all the lines if I want to get the correct index - but at least it works (hopefully).
Daniel
SUPPORTS MESSAGE ****
the way the SetCurrentLine works is as following:
You do not have to use neither the LineNum nor the VisOrder as your
parameterfor the setCurrentLine method.
The system will use the corresponding index (starting at zero)linked to
that line when running a query on the database and sorting the lines by
LineNum.
#,,DocEntry,, Item ,,LineNum,,Price,,VisOrder
1,,11669,, A1001,,,, 600,00,,
2,,11669,, A1003,,2,, 3,00,, 2
3,,11669,, A1005,,3,, 600,00,,1
See example above, that is the result of querying the database on that
sales order and sorting by LineNum.
The order in which the items are displayed in the application is based
on the VisOrder. In this example items are displayed A1001, A1005 amd
A1003.
In order to update Item A1005 I will need to create a recordset, query
the database and then loop the recordset to find the corresponding item
and then use that index from the recordset to set the value for the
SetCurrentLine method. In the example above index 0 from recordset
points at item A1001, index 1 points at item A1003 and index 2 points at
A1005 so your code should use setCurrentLine(2) to update item A1005.
If you try to use LineNum (3 in this case) you will get an error message
as index 3 does not exist in the recordset collection ( only 3 items
with indexes 0,1 and 2). If you use visOrder 1(for item A1005) then the
system will update item A1003 as 1 is the index for A1003 in the
recordset.
END OF SUPPORTS MESSAGE ********Hi Curtis,
Your situation sounds a little different to mine, in that I know the LinNum of the documentline that I need to update - that is what the lineNumber variable is...
To update all the rows, I guess you would just iterate through all the lines sequencially (ie starting at 0 and ending at document.lines.count:
for(int i = 0; i < doc.Lines.Count; i++)
doc.Lines.SetCurrentLine(i);
// do your thing here...
How do you know what lines you want to update??
Dan
Maybe you are looking for
-
body background="watermark.gif" not working!!!
hi, i am new to JSF.i have a code(Login) but when i put <body> tag with a bg image, i am not able to view that picture. Y? here is my code. <%@ taglib uri="http://java.sun.com/jsf/html" prefix="h" %> <%@ taglib uri="http://java.sun.com/jsf/core" pref
-
Dequeueing message from xmltype queue
I have the queue build upon the XMLType (too complex to use it as a payload). When I'm trying to dequeue messages with ESB AQ Adapter they are not passing through. When building the service adapter I've specified the same schema file as destination p
-
Hello! i have trouble in app store when i tried update GarageBand, Imovie, Iphoto (error 20 in App Store). Other application i can download and install without any problem. I search any solution for my question but is wasn't work. Please help me, i b
-
Will there be a refresh of Airport Express?
I want to get a Airport Express but heard that Apple is going to have a refresh on the product. So wonder if this is true so I can wait and get the latest product.
-
Regular expression breaks with \00 in input string
I wrote the following code to illustrate the problem. Clearly the match should occur in both cases, but it does not occur if \00 is in the input string (within the < > ). I am not even searching for \00 or \01. This makes the regular expression match