How the standard BW3.5 DataSource used in BI7
Hi,
In BI Content, there are huge amount of standard BW3.5 DataSource.
They can be activated from R/3 side and replicated to BI.
Is there anyone know if these DataSources are BW3.x? and if I would like to use the new BI7 transformation technical to these DataSources, what should I do? currently there is an error message when using these 3.x datasource with transformation. for example, for datasource 2LIS_12_VCITM.
Many Thanks
Jonathan
Hi,
All the standard SAP datasources in BI content are 3.x datasources. which means that if you only activate them you cant create a transformation on them. Only update and transfer rules are possible. You'll need to install these datasources and then migrate and activate them inorder to convert them to a 7 datasource. To migrate them, first install them, then right click and choose the migrate option.
Also while migrating choose the migrate with export option, so that you'll be able to restore them to the older versions incase of any problems.
Hope this helps.
Regards.
Similar Messages
-
What are the standard Application tool bars used in reports
Hi All,
What are the standard application tool bars used in the report/program?
Thanks in advance
Regards
ChakriHi,
Goto SE41,
Programs : SAPLKKBL
Status : STANDARD
Thanks,
Best regards,
Prashant -
How the user credentials are transported using OBIEE webservice
Hi, we're trying to using the OBIEE web service api to interface with OBIEE, and would like to know in detail how the user credentials being passed with the web services request?. Which mechanism (protocol, technology) do this WebService use to provide security for the user credentials?
Thanks.The Oracle BI Web Services API is a SOAP-based API therefore all the information is sent via HTTP requests containing XML messages. By default OBIEE will run the Presentation Services Web App server in non-secure mode. Therefore all the user credentials will be basically sent in clear text and will be subject to "a man in the middle" attack. It is possible to setup the Presentation Services to run in securely using HTTPS but I am unsure if the API will work over HTTPS.
-
How the user credentials are transported using BusinessObjects SDK
Hi, I would like to know in detail how the user credentials is passed with the java call (logon). Are they encrypted during the transport? Which mechanism (protocol, technology) does the sdk use to provide security for the user credentials?
ThanksThe BusinessObjects Enterprise SDK communicates with BusinessObjects Enterprise servers using a proprietary CORBA framework via TCP/IP.
This is so inter-server and server-client communication can be done transparently from the perspective of the API whether all services are on one or multiple machines.
You can configure BusinessObjects Enterprise services to use SSL through this communication. How you would do so is described in the Admin Guide.
You'd configure the SDK as you would the servers in as described in the Admin Guide.
For the BusinessObjects Enterprise Java SDK, that means specifying the four Java System Properties (as you would for Java InfoView) to point to the SSL configuration files.
That takes care of the connection from the SDK to Enterprise.
Set-up of secure communication from web browser to web app using the SDK is a separate matter.
By the way, the BusinessObjects Enterprise SDK is fully tested an supported only when used in a web application. Desktop and standalone apps using the Enterprise SDK are untested.
Sincerely,
Ted Ueda -
I have an extension for clearing cache and it has a convenient button on my toolbar. But, the button is larger than the other buttons on the toolbar, even with "use small icons" turned on. Can I talk to the button in the userChrome.css or some other way to scale it down?
Which extension did you install?
This one:
*Clear Cache Button: https://addons.mozilla.org/en-US/firefox/addon/clear-cache-button/
<pre><nowiki>#clearcache-toolbarbutton .toolbarbutton-icon {
height: 16px !important;
width: 16px !important;
}</nowiki></pre> -
Just wondering how the best way to work using 2 computers and 2 people.
If you have 2 computers, a main one doing creative changes and the other person on a second computer doing metadata and keywords, is it possible to keep them synced, so the keyword info etc is kept up to date on the main computer? Would it just be to export the new keywords for that catalogue each time?
It is a big Library of 300,000 images that needs to be keyworded to find images easily. I am new to this but trying to help someone sort out their Library.
Many thanks for your help.I don't know the answer. But here's what I do know:
Brainstorming, not well-organized thoughts...:
In general, you need to make sure the image developer is not working on the same images at the same time as the keyworder. Lightroom considers keywords and develop settings on a par (and will overwrite both or neither when syncing, importing, ...), so however you do it, unless you discover some clever workaround, the 2 people will need to coordinate which images are off-limits while the other is working on them. That said, here are some ideas:
* Figure out a way to strip settings/metadata of one type before doing the sync (e.g. from the xmp).
* Save develop settings (as snapshot), sync with keyworder's versions, restore develop settings (by re-selecting the snapshot). Unfortunately, this would need to be done on a per-image basis, since there is no way to apply a snapshot in any automated or bulk fashion.
Note: this would be an easy plugin, but would have some (probably deal-breaking) limitations:
1. Save develop settings in ram.
2. Read xmp from keyworder (which will update keywords, but also overwrite develop settings).
3. Restore develop settings from ram.
The problem is that the SDK is missing a few develop settings, e.g. crop is missing, as is tone-curve enable/disable, and orientation. So, if developer had changed any of these things, they would not be restored after syncing keywords from xmp - not good, and one of the reasons I lobby with Adobe to make develop settings (available to plugins) complete.
If plugins had access to snapshots for applying, that would also make a plugin solution a piece of cake.
Another idea:
- Export jpegs for keywording, with a special token in the filename, like "for-keywording" (I recommend PreviewExporter for fastest exporting).
- Use John Beardy's Syncomatic to synchronize keywords from jpeg to original.
Optional, instead of exporting, just make a physical copy using OS, and have keyworder import those and apply keywords. All else would be the same (syncomatic).
(consider deleting exports/copies created just for keywording purpose, after syncing keywords...).
This would also be a piece of cake for SQLiteroom, if you were willing to do some SQL+Lua programming:
- Use SQL to query 2ndary catalog with keywords.
- Use Lua to assign keywords to photos in master catalog.
R -
ipad
beenycrocker,
I can understand having a phone that is in good working condition. I am sorry to hear about the SD card getting formatted. I use my phone as my digital camera now days. Have you tried to perform a factory reset on the device to see if that will help with the speed of the phone?
Good news! You can always upgrade to a new phone without having to sign a 2 year contact. We do have the great program that is called EDGE. With this program you would get a brand new device at full retail cost of the phone. But those payments are split up into 24 months. Once you have paid off more than 50% of the phone and had the EDGE for longer than 30 days you can trade in that phone and get a brand new device. You can see the full details on that plan here: www.verizonwireless.com/edge Please keep us posted.
Kevin_R
Follow us on Twitter @VZWSupport -
How the heck do you start using the app
Juts started usine apple products, iPhone 5c and iPad mini. Heard that the iCloud was great, but I can not get it so that I can use it.
General question - Where is a good resource for getting to grips with apple products and workflow?
My wife and I have had apple products for a long time but never upgraded past 10.5.8 (mainly due to laziness and being happy with it). In the last month though she has bought a new MBAir and I've got an ipad air. To be honest they're very nice but I don't believe for a minute we're getting the most out of them. Where's a good place to start?
For instance she's been given an iphone for work and when she takes a picture it sometimes turns up on her MBA sometimes doesn't. Now this is probably down to us not understanding the icloud, photostream/roll etc. so a beginners guide would be useful.
I think I need an 'explain it like I'm five' for apple's new way of working... -
How can we use the indicator FERC_IND in the standard transactions of KS01
The fields are provided for each object (Cost Ctr, IO, WBS) but the user exits which are available will force us to use another field .(a Z field ).
Is there any way in which we can use this fields directly .
We would like to use the FERC_IND fields provided by the standard functionality, instead of using the Z field.Hi
You can use the Function module LDB_PROCESS to use the Standard LDB in your Z custome program for further details about using the Standard LDB and accessing the LDB in to the program search SDN
http://help.sap.com/saphelp_nw04/helpdata/en/64/237f8cd43711d1950b0000e8353423/content.htm
http://help.sap.com/saphelp_nw04/helpdata/en/97/b3edb8163111d2953c0000e8353423/frameset.htm -
Tables of the Standard Datasource
Gurus,
How to find out the tables used by the standard (not generic) datasources,
because all of them seems to use function module and going thru the code is
very tedious. Is there an easy way to find out?
Thankshi geni,
u can get that information in ur source system itself.
for example if u r using R/3, then LBWE screen click maintain datasource on ur DS
then it will open one window there u can c communication structure on right hand side above u can pooled tables list will be there like MCVBAK MCVBUK.
hope it helps
bhaskar -
How the Object Oriented Concepts can be used in ALV
Hi guys,
Please tell me, how the Object Oriented Concepts are used in ALV? I request if someone can illustrate it by an example.
Thnx
SidHi,
Check this example.
REPORT ZTEST_ALV_OO MESSAGE-ID ZZ .
DATA: G_GRID TYPE REF TO CL_GUI_ALV_GRID, "First
G_GRID1 TYPE REF TO CL_GUI_ALV_GRID. "Second
DATA: L_VALID TYPE C,
V_FLAG,
V_DATA_CHANGE,
V_ROW TYPE LVC_S_ROW,
V_COLUMN TYPE LVC_S_COL,
V_ROW_NUM TYPE LVC_S_ROID.
DATA: OK_CODE LIKE SY-UCOMM,
SAVE_OK LIKE SY-UCOMM,
G_CONTAINER1 TYPE SCRFNAME VALUE 'TEST', "First Container
G_CONTAINER2 TYPE SCRFNAME VALUE 'TEST1',"Second container
GS_LAYOUT TYPE LVC_S_LAYO.
DATA:BEGIN OF ITAB OCCURS 0,
VBELN LIKE LIKP-VBELN,
POSNR LIKE LIPS-POSNR,
LFDAT like lips-vfdat,
BOX(1),
HANDLE_STYLE TYPE LVC_T_STYL,
END OF ITAB.
* CLASS lcl_event_handler DEFINITION
CLASS LCL_EVENT_HANDLER DEFINITION .
PUBLIC SECTION .
METHODS:
**Hot spot Handler
HANDLE_HOTSPOT_CLICK FOR EVENT HOTSPOT_CLICK OF CL_GUI_ALV_GRID
IMPORTING E_ROW_ID E_COLUMN_ID ES_ROW_NO,
**Handler to Check the Data Change
HANDLE_DATA_CHANGED FOR EVENT DATA_CHANGED
OF CL_GUI_ALV_GRID
IMPORTING ER_DATA_CHANGED
E_ONF4
E_ONF4_BEFORE
E_ONF4_AFTER,
**Double Click Handler
HANDLE_DOUBLE_CLICK FOR EVENT DOUBLE_CLICK OF CL_GUI_ALV_GRID
IMPORTING E_ROW E_COLUMN ES_ROW_NO.
ENDCLASS. "lcl_event_handler DEFINITION
* CLASS lcl_event_handler IMPLEMENTATION
CLASS LCL_EVENT_HANDLER IMPLEMENTATION.
*Handle Hotspot Click
METHOD HANDLE_HOTSPOT_CLICK .
CLEAR: V_ROW,V_COLUMN,V_ROW_NUM.
V_ROW = E_ROW_ID.
V_COLUMN = E_COLUMN_ID.
V_ROW_NUM = ES_ROW_NO.
MESSAGE I000 WITH V_ROW 'clicked'.
ENDMETHOD. "lcl_event_handler
*Handle Double Click
METHOD HANDLE_DOUBLE_CLICK.
CLEAR: V_ROW,V_COLUMN,V_ROW_NUM.
V_ROW = E_ROW.
V_COLUMN = E_COLUMN.
V_ROW_NUM = ES_ROW_NO.
IF E_COLUMN = 'VBELN'.
SET PARAMETER ID 'VL' FIELD ITAB-VBELN.
CALL TRANSACTION 'VL03N' AND SKIP FIRST SCREEN.
ENDIF.
IF E_COLUMN = 'POSNR'.
MESSAGE I000 WITH 'Click on POSNR row number ' E_ROW.
"with this row num you can get the data
ENDIF.
ENDMETHOD. "handle_double_click
**Handle Data Change
METHOD HANDLE_DATA_CHANGED.
data:stable type LVC_S_STBL.
stable-row = 'X'.
stable-col = 'X'.
call method g_grid->refresh_table_display
EXPORTING
IS_STABLE = stable
EXCEPTIONS
FINISHED = 1
others = 2
if sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
endif.
ENDMETHOD. "HANDLE_DATA_CHANGED
ENDCLASS. "LCL_EVENT_HANDLER IMPLEMENTATION
*& Global Definitions
DATA: G_CUSTOM_CONTAINER TYPE REF TO CL_GUI_CUSTOM_CONTAINER,"Container1
G_HANDLER TYPE REF TO LCL_EVENT_HANDLER, "handler
G_CUSTOM_CONTAINER1 TYPE REF TO CL_GUI_CUSTOM_CONTAINER. "Container2
*- Fieldcatalog for First and second Report
DATA: IT_FIELDCAT TYPE LVC_T_FCAT,
X_FIELDCAT TYPE LVC_S_FCAT,
LS_VARI TYPE DISVARIANT.
* START-OF_SELECTION
START-OF-SELECTION.
SELECT VBELN
POSNR
FROM LIPS
UP TO 20 ROWS
INTO CORRESPONDING FIELDS OF TABLE ITAB.
END-OF-SELECTION.
IF NOT ITAB[] IS INITIAL.
CALL SCREEN 100.
ELSE.
MESSAGE I002 WITH 'NO DATA FOR THE SELECTION'(004).
ENDIF.
*& Form CREATE_AND_INIT_ALV
* text
FORM CREATE_AND_INIT_ALV .
DATA: LT_EXCLUDE TYPE UI_FUNCTIONS.
"First Grid
CREATE OBJECT G_CUSTOM_CONTAINER
EXPORTING CONTAINER_NAME = G_CONTAINER1.
CREATE OBJECT G_GRID
EXPORTING I_PARENT = G_CUSTOM_CONTAINER.
"Second Grid
CREATE OBJECT G_CUSTOM_CONTAINER1
EXPORTING CONTAINER_NAME = G_CONTAINER2.
CREATE OBJECT G_GRID1
EXPORTING I_PARENT = G_CUSTOM_CONTAINER1.
* Set a titlebar for the grid control
CLEAR GS_LAYOUT.
GS_LAYOUT-GRID_TITLE = TEXT-003.
GS_LAYOUT-ZEBRA = SPACE.
GS_LAYOUT-CWIDTH_OPT = 'X'.
GS_LAYOUT-NO_ROWMARK = 'X'.
GS_LAYOUT-BOX_FNAME = 'BOX'.
GS_LAYOUT-CTAB_FNAME = 'CELLCOLOR'.
GS_LAYOUT-STYLEFNAME = 'HANDLE_STYLE'.
CALL METHOD G_GRID->REGISTER_EDIT_EVENT
EXPORTING
I_EVENT_ID = CL_GUI_ALV_GRID=>MC_EVT_MODIFIED.
CREATE OBJECT G_HANDLER.
SET HANDLER G_HANDLER->HANDLE_DOUBLE_CLICK FOR G_GRID.
* SET HANDLER G_HANDLER->HANDLE_HOTSPOT_CLICK FOR G_GRID.
SET HANDLER G_HANDLER->HANDLE_DATA_CHANGED FOR G_GRID.
data: ls_outatb like line of itab,
v_index type sy-tabix.
DATA: LS_EDIT TYPE LVC_S_STYL,
LT_EDIT TYPE LVC_T_STYL.
LOOP AT ITAB INTO ls_outatb WHERE POSNR = '000010'.
V_INDEX = SY-TABIX.
LS_EDIT-FIELDNAME = 'VBELN'.
LS_EDIT-STYLE = CL_GUI_ALV_GRID=>MC_STYLE_DISABLED.
LS_EDIT-STYLE2 = SPACE.
LS_EDIT-STYLE3 = SPACE.
LS_EDIT-STYLE4 = SPACE.
LS_EDIT-MAXLEN = 8.
INSERT LS_EDIT INTO TABLE LT_EDIT.
INSERT LINES OF LT_EDIT INTO TABLE ls_outatb-handle_style.
MODIFY ITAB INDEX V_INDEX FROM ls_outatb TRANSPORTING
HANDLE_STYLE.
ENDLOOP.
* setting focus for created grid control
CALL METHOD CL_GUI_CONTROL=>SET_FOCUS
EXPORTING
CONTROL = G_GRID.
* Build fieldcat and set editable for date and reason code
* edit enabled. Assign a handle for the dropdown listbox.
PERFORM BUILD_FIELDCAT.
* Optionally restrict generic functions to 'change only'.
* (The user shall not be able to add new lines).
PERFORM EXCLUDE_TB_FUNCTIONS CHANGING LT_EXCLUDE.
**Vaiant to save the layout
LS_VARI-REPORT = SY-REPID.
LS_VARI-HANDLE = SPACE.
LS_VARI-LOG_GROUP = SPACE.
LS_VARI-USERNAME = SPACE.
LS_VARI-VARIANT = SPACE.
LS_VARI-TEXT = SPACE.
LS_VARI-DEPENDVARS = SPACE.
CALL METHOD G_GRID->REGISTER_EDIT_EVENT
EXPORTING
I_EVENT_ID = CL_GUI_ALV_GRID=>MC_EVT_MODIFIED.
**Calling the Method for ALV output for First Grid
CALL METHOD G_GRID->SET_TABLE_FOR_FIRST_DISPLAY
EXPORTING
IT_TOOLBAR_EXCLUDING = LT_EXCLUDE
IS_VARIANT = LS_VARI
IS_LAYOUT = GS_LAYOUT
I_SAVE = 'A'
CHANGING
IT_FIELDCATALOG = IT_FIELDCAT
IT_OUTTAB = ITAB[].
**Calling the Method for ALV output for Second Grid
CALL METHOD G_GRID1->SET_TABLE_FOR_FIRST_DISPLAY
* EXPORTING
* IT_TOOLBAR_EXCLUDING = LT_EXCLUDE
CHANGING
IT_FIELDCATALOG = IT_FIELDCAT
IT_OUTTAB = ITAB[].
* Set editable cells to ready for input initially
CALL METHOD G_GRID->SET_READY_FOR_INPUT
EXPORTING
I_READY_FOR_INPUT = 1.
ENDFORM. "CREATE_AND_INIT_ALV
*& Form EXCLUDE_TB_FUNCTIONS
* text
* -->PT_EXCLUDE text
FORM EXCLUDE_TB_FUNCTIONS CHANGING PT_EXCLUDE TYPE UI_FUNCTIONS.
* Only allow to change data not to create new entries (exclude
* generic functions).
DATA LS_EXCLUDE TYPE UI_FUNC.
LS_EXCLUDE = CL_GUI_ALV_GRID=>MC_FC_LOC_COPY_ROW.
APPEND LS_EXCLUDE TO PT_EXCLUDE.
LS_EXCLUDE = CL_GUI_ALV_GRID=>MC_FC_LOC_DELETE_ROW.
APPEND LS_EXCLUDE TO PT_EXCLUDE.
LS_EXCLUDE = CL_GUI_ALV_GRID=>MC_FC_LOC_APPEND_ROW.
APPEND LS_EXCLUDE TO PT_EXCLUDE.
LS_EXCLUDE = CL_GUI_ALV_GRID=>MC_FC_LOC_INSERT_ROW.
APPEND LS_EXCLUDE TO PT_EXCLUDE.
LS_EXCLUDE = CL_GUI_ALV_GRID=>MC_FC_LOC_MOVE_ROW.
APPEND LS_EXCLUDE TO PT_EXCLUDE.
LS_EXCLUDE = CL_GUI_ALV_GRID=>MC_FC_LOC_COPY.
APPEND LS_EXCLUDE TO PT_EXCLUDE.
LS_EXCLUDE = CL_GUI_ALV_GRID=>MC_FC_LOC_CUT.
APPEND LS_EXCLUDE TO PT_EXCLUDE.
LS_EXCLUDE = CL_GUI_ALV_GRID=>MC_FC_LOC_PASTE.
APPEND LS_EXCLUDE TO PT_EXCLUDE.
LS_EXCLUDE = CL_GUI_ALV_GRID=>MC_FC_LOC_PASTE_NEW_ROW.
APPEND LS_EXCLUDE TO PT_EXCLUDE.
LS_EXCLUDE = CL_GUI_ALV_GRID=>MC_FC_LOC_UNDO.
APPEND LS_EXCLUDE TO PT_EXCLUDE.
ENDFORM. " EXCLUDE_TB_FUNCTIONS
*& Form build_fieldcat
* Fieldcatalog
FORM BUILD_FIELDCAT .
DATA: L_POS TYPE I.
L_POS = L_POS + 1.
X_FIELDCAT-SCRTEXT_M = 'Delivery'(024).
X_FIELDCAT-FIELDNAME = 'VBELN'.
X_FIELDCAT-TABNAME = 'ITAB'.
X_FIELDCAT-COL_POS = L_POS.
X_FIELDCAT-NO_ZERO = 'X'.
X_FIELDCAT-EDIT = 'X'.
X_FIELDCAT-OUTPUTLEN = '10'.
APPEND X_FIELDCAT TO IT_FIELDCAT.
CLEAR X_FIELDCAT.
L_POS = L_POS + 1.
X_FIELDCAT-SCRTEXT_M = 'Item'(025).
X_FIELDCAT-FIELDNAME = 'POSNR'.
X_FIELDCAT-TABNAME = 'ITAB'.
X_FIELDCAT-COL_POS = L_POS.
X_FIELDCAT-OUTPUTLEN = '5'.
APPEND X_FIELDCAT TO IT_FIELDCAT.
CLEAR X_FIELDCAT.
L_POS = L_POS + 1.
X_FIELDCAT-SCRTEXT_M = 'Del Date'(015).
X_FIELDCAT-FIELDNAME = 'LFDAT'.
X_FIELDCAT-TABNAME = 'ITAB'.
X_FIELDCAT-COL_POS = L_POS.
X_FIELDCAT-OUTPUTLEN = '10'.
APPEND X_FIELDCAT TO IT_FIELDCAT.
CLEAR X_FIELDCAT.
L_POS = L_POS + 1.
ENDFORM. " build_fieldcat
*& Module STATUS_0100 OUTPUT
* text
MODULE STATUS_0100 OUTPUT.
SET PF-STATUS 'MAIN100'.
SET TITLEBAR 'MAIN100'.
IF G_CUSTOM_CONTAINER IS INITIAL.
**Initializing the grid and calling the fm to Display the O/P
PERFORM CREATE_AND_INIT_ALV.
ENDIF.
ENDMODULE. " STATUS_0100 OUTPUT
*& Module USER_COMMAND_0100 INPUT
* text
MODULE USER_COMMAND_0100 INPUT.
CASE SY-UCOMM.
WHEN 'BACK'.
LEAVE TO SCREEN 0.
ENDCASE.
ENDMODULE. " USER_COMMAND_0100 INPUT
Regards
vijay -
Problem regarding the creation of sales order using bapi.
Hai all,
I am creating sales order using bapi but i am, get following error messages :
TYPE ID NUMBER MESSAGE
E VP 112 Please enter sold-to party or ship-to party
E V4 219 Sales document was not changed
I have entered all the parameters.
my program is as follows :
*& Report ZSD_SALES_ORDER
REPORT ZSD_SALES_ORDER.
Tables
*table definitions
TABLES:vbak, "Sales Document: Header Data
knvv, "Customer Master Sales Data
mara, "General Material Data
t001l, "Plants/Branches
mvke, "Sales Data for Material
vbap, "Sales Document: Item Data
konv. "Conditions (Transaction Data)
Types
*type for upload data
TYPES :BEGIN OF ty_upload,
matnr(20) TYPE c, " Old material number
quantity(20) TYPE c, " Cumulative order quantity in sales units
VALUE TYPE BAPIKWERT1,
value(20) TYPE c, " Condition value
value TYPE konv-kwert, " Condition value
END OF ty_upload.
*type for final output table
TYPES :BEGIN OF ty_main,
bismt TYPE mara-bismt, "Old material number
matnr TYPE vbap-matnr, "Material Number
kunnr TYPE vbak-kunnr, "customer number
auart TYPE vbak-auart, "Sales Document Type
vkorg TYPE vbak-vkorg, "Sales Organization
vtweg TYPE vbak-vtweg, "Distribution Channel
spart TYPE vbak-spart, "Division
vbeln TYPE vbak-vbeln, "Sales document
werks TYPE marc-werks, " Plant
lgort TYPE mard-lgort, "Storage Location
posnr TYPE vbap-posnr, "Sales Document Item
parvw TYPE vbpa-parvw, "Partner function
kwmeng TYPE vbap-kwmeng, "Cumulative order quantity in sales units
kschl TYPE konv-kschl, "Condition type
kwert TYPE konv-kwert, "Condition value
KWERT TYPE BAPIKWERT1,
kwert(20) TYPE c, "Condition value
waers TYPE konv-waers, "Currency
END OF ty_main.
*type for old material number
TYPES: BEGIN OF ty_matnr,
matnr TYPE mara-matnr,
bismt TYPE mara-bismt,
END OF ty_matnr.
*type for order number
TYPES :BEGIN OF ty_output,
vbeln TYPE vbak-vbeln, "Sales Document
END OF ty_output.
Constants Begin with C_ *
CONSTANTS:
c_zpmu(4) TYPE c VALUE 'ZPMU',
c_zpmm(4) TYPE c VALUE 'ZPMM'.
DATA: c_ch(1) TYPE c VALUE 'X'.
Data Begin with W_ *
*global data for validations
DATA: w_count TYPE i,
w_vkorg TYPE vbak-vkorg,
w_vtweg TYPE vbak-vtweg,
w_spart TYPE vbak-spart,
w_werks TYPE t001l-werks,
w_check TYPE c,
w_itemno TYPE posnr_va,
W_COND TYPE C.
w_cond(3) TYPE c.
Internal tables Begin with IT_ *
*internal table definitions
DATA : it_upload TYPE STANDARD TABLE OF ty_upload ,
wa_upload TYPE ty_upload.
DATA : it_main TYPE STANDARD TABLE OF ty_main,
wa_main TYPE ty_main.
DATA: it_matnr TYPE STANDARD TABLE OF ty_matnr,
wa_matnr TYPE ty_matnr.
DATA : it_output TYPE STANDARD TABLE OF ty_output.
Internal table for BAPI.
DATA: it_bapisdhd1 TYPE STANDARD TABLE OF bapisdhd1, "Sales and Distribution Document Header
wa_bapisdhd1 TYPE bapisdhd1.
DATA: it_bapisditm TYPE STANDARD TABLE OF bapisditm , "Sales and Distribution Document Item
wa_bapisditm TYPE bapisditm.
DATA: it_bapiparnr TYPE STANDARD TABLE OF bapiparnr, "SD Document Partner: WWW
wa_bapiparnr TYPE bapiparnr.
DATA: it_bapischdl TYPE STANDARD TABLE OF bapischdl, "Schedule Lines
wa_bapischdl TYPE bapischdl.
DATA: it_bapicond TYPE STANDARD TABLE OF bapicond, "Communication Fields for Maintaining Conditions in the Order
wa_bapicond TYPE bapicond.
DATA: it_bapiret2 TYPE STANDARD TABLE OF bapiret2, "Return Parameter
wa_bapiret2 TYPE bapiret2.
Parameters Begin with PR_ *
*selection screen definition
SELECTION-SCREEN BEGIN OF BLOCK blk1 WITH FRAME .
PARAMETERS: pr_vkorg TYPE vbak-vkorg OBLIGATORY,
pr_vtweg TYPE vbak-vtweg OBLIGATORY,
pr_spart TYPE vbak-spart OBLIGATORY,
pr_kunnr TYPE kna1-kunnr OBLIGATORY,
pr_werks TYPE marc-werks OBLIGATORY,
pr_lgort TYPE mard-lgort OBLIGATORY.
PARAMETERS: pr_auart TYPE vbak-auart OBLIGATORY,
PR_AUGRU TYPE VBAK-AUGRU OBLIGATORY.
pr_augru TYPE vbak-augru.
SELECTION-SCREEN END OF BLOCK blk1.
SELECTION-SCREEN BEGIN OF BLOCK blk2 WITH FRAME.
PARAMETERS : pr_file TYPE ibipparms-path OBLIGATORY.
SELECTION-SCREEN END OF BLOCK blk2.
At selection-screen *
AT SELECTION-SCREEN.
PERFORM f006_validate_vkorg.
PERFORM f007_validate_vtweg.
PERFORM f008_validate_spart.
PERFORM f009_validate_kunnr.
PERFORM f010_validate_werks.
PERFORM f011_validate_lgort.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR pr_file.
*for f4 help----
PERFORM f003_f4_help.
S T A R T O F S E L E C T I O N *
START-OF-SELECTION.
*for material ,quantity and value upload
PERFORM f001_upload_file.
*get data
PERFORM f003_get_data.
*for check the data
PERFORM f002_check_data .
PERFORM f004_process.
*for posting
PERFORM f005_posting.
END-OF-SELECTION.
E N D O F S E L E C T I O N *
*& Form f001_upload_file
upload file
FORM f001_upload_file .
DATA : lw_fname TYPE string.
CLEAR lw_fname.
lw_fname = pr_file.
REFRESH it_upload.
CALL FUNCTION 'GUI_UPLOAD'
EXPORTING
filename = lw_fname
filetype = 'ASC'
has_field_separator = c_ch
TABLES
data_tab = it_upload
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.
LOOP AT it_upload INTO wa_upload.
wa_upload-value = ( wa_upload-value ) / 10.
MODIFY it_upload FROM wa_upload.
ENDLOOP.
ENDFORM. "F001_UPLOAD_FILE
*& Form f003_f4_help
f4 help
FORM f003_f4_help .
CALL FUNCTION 'F4_FILENAME'
EXPORTING
program_name = syst-cprog
dynpro_number = syst-dynnr
field_name = ' '
IMPORTING
file_name = pr_file.
ENDFORM. " f003_f4_help
*& Form check_data
text
FORM f002_check_data .
DATA: lw_lines TYPE i.
DESCRIBE TABLE it_main LINES lw_lines.
IF lw_lines LE 0.
RETURN.
ENDIF.
SELECT a~matnr
a~bismt FROM mara AS a INNER JOIN mvke AS b
ON amatnr = bmatnr
INTO CORRESPONDING FIELDS OF TABLE it_matnr
FOR ALL ENTRIES IN it_main
WHERE a~bismt = it_main-bismt.
IF sy-subrc = 0.
LOOP AT it_main INTO wa_main.
CLEAR : wa_matnr.
READ TABLE it_matnr INTO wa_matnr WITH KEY bismt = wa_main-bismt.
IF sy-subrc = 0.
MOVE: wa_matnr-matnr TO wa_main-matnr.
ENDIF.
MODIFY it_main FROM wa_main TRANSPORTING matnr WHERE bismt = wa_main-bismt.
ENDLOOP.
ELSE.
MESSAGE e000(zmsd) WITH text-001.
ENDIF.
ENDFORM. "CHECK_DATA
*& Form F009_validate_vkorg
text
FORM f006_validate_vkorg .
CLEAR w_vkorg.
SELECT SINGLE vkorg
INTO w_vkorg FROM tvko
WHERE vkorg EQ pr_vkorg.
IF sy-subrc <> 0.
MESSAGE e000(zmsd) WITH text-012 pr_vkorg.
ENDIF.
ENDFORM. " F009_validate_vkorg
*& Form f007_validate_vtweg
text
FORM f007_validate_vtweg .
CLEAR:w_vtweg.
SELECT SINGLE vtweg
INTO w_vtweg FROM tvtw
WHERE vtweg EQ pr_vtweg.
IF sy-subrc <> 0.
MESSAGE e089(zmsd).
ENDIF.
ENDFORM. " f007_validate_vtweg
*& Form f008_validate_spart
text
FORM f008_validate_spart .
CLEAR:w_spart.
SELECT SINGLE spart
INTO w_spart FROM tspa
WHERE spart EQ pr_spart.
IF sy-subrc <> 0.
MESSAGE e087(zmsd).
ENDIF.
ENDFORM. " f008_validate_spart
*& Form F010_validate_kunnr
text
FORM f009_validate_kunnr .
DATA: l_kunnr TYPE kunnr.
CLEAR: w_vkorg, w_vtweg,w_spart.
SELECT SINGLE kunnr FROM knvv
INTO l_kunnr
WHERE kunnr = pr_kunnr
AND vkorg = pr_vkorg
AND vtweg = pr_vtweg
AND spart = pr_spart.
IF sy-subrc <> 0.
MESSAGE e000(zmsd) WITH text-010 pr_kunnr text-011 pr_vkorg .
ENDIF.
ENDFORM. " F010_validate_kunnr
*& Form f010_validate_werks
text
FORM f010_validate_werks .
CLEAR:w_werks.
SELECT SINGLE werks
INTO w_werks FROM t001w
WHERE werks EQ pr_werks.
IF sy-subrc <> 0.
MESSAGE e088(zmsd).
ENDIF.
ENDFORM. " f010_validate_werks
*& Form F011_validate_lgort
text
FORM f011_validate_lgort .
CLEAR:w_werks .
SELECT SINGLE werks FROM t001l
INTO w_werks
WHERE werks = pr_werks
AND lgort = pr_lgort.
IF sy-subrc <> 0.
MESSAGE e000(zmsd) WITH text-007 pr_lgort text-008 pr_werks .
ENDIF.
ENDFORM. " F011_validate_lgort
*& Form f003_get_data
text
FORM f003_get_data .
CLEAR wa_main.
REFRESH it_main.
LOOP AT it_upload INTO wa_upload.
CLEAR : wa_main.
MOVE: wa_upload-matnr TO wa_main-bismt,
wa_upload-quantity TO wa_main-kwmeng,
wa_upload-value TO wa_main-kwert,
pr_vkorg TO wa_main-vkorg,
pr_vtweg TO wa_main-vtweg,
pr_spart TO wa_main-spart,
pr_kunnr TO wa_main-kunnr,
pr_werks TO wa_main-werks,
pr_lgort TO wa_main-lgort.
APPEND wa_main TO it_main.
ENDLOOP.
ENDFORM. " f003_get_data
*& Form f004_process
text
FORM f004_process .
CLEAR w_check.
LOOP AT it_main INTO wa_main.
IF wa_main-matnr = ''.
WRITE:/ text-006,
wa_main-bismt.
w_check = 1.
ENDIF.
IF wa_main-kwmeng = 0.
WRITE:/ text-005,
wa_main-bismt.
w_check = 1.
ENDIF.
IF pr_auart <> 'ZM01'.
IF wa_main-kwert IS INITIAL.
WRITE:/ text-004,
wa_main-bismt.
w_check = 1.
ENDIF.
ENDIF.
ENDLOOP.
ENDFORM. " f004_process
*& Form f005_posting
text
FORM f005_posting .
CLEAR: w_itemno,
w_cond.
w_itemno = 10.
w_cond = 1.
IF w_check = '' OR w_check = 1.
wa_bapisdhd1-doc_type = pr_auart.
wa_bapisdhd1-ord_reason = pr_augru.
LOOP AT it_main INTO wa_main.
IF w_cond = 1.
CLEAR: it_bapiret2,
it_bapisditm,
it_bapiparnr,
it_bapischdl,
it_bapicond.
REFRESH:it_bapiret2,
it_bapisditm,
it_bapiparnr,
it_bapischdl,
it_bapicond.
MOVE: wa_main-vkorg TO wa_bapisdhd1-sales_org,
wa_main-vtweg TO wa_bapisdhd1-distr_chan,
wa_main-spart TO wa_bapisdhd1-division.
wa_bapisdhd1-wbs_eleM = 'Y561.1'.
CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT'
EXPORTING
INPUT = pr_kunnr
IMPORTING
OUTPUT = pr_kunnr.
wa_bapisdhd1-PURCH_NO_S = pr_kunnr.
wa_bapisdhd1-PURCH_NO_C = pr_kunnr.
ENDIF.
MOVE: w_itemno TO wa_bapisditm-itm_number,
wa_main-matnr TO wa_bapisditm-material,
wa_main-BISMT TO wa_bapisditm-material,
wa_main-werks TO wa_bapisditm-plant,
wa_main-lgort TO wa_bapisditm-store_loc.
wa_bapisditm-target_qty = '10'.
wa_bapisditm-PURCH_NO_S = pr_kunnr.
wa_bapisditm-PURCH_NO_C = pr_kunnr.
APPEND wa_bapisditm TO it_bapisditm.
IF w_cond = 1.
wa_bapiparnr-partn_numb = pr_kunnr.
wa_bapiparnr-itm_number = 10.
wa_bapiparnr-partn_role = 'SP'.
APPEND wa_bapiparnr TO it_bapiparnr.
wa_bapiparnr-partn_role = 'AG'.
APPEND wa_bapiparnr TO it_bapiparnr.
CLEAR wa_bapiparnr-partn_role.
wa_bapiparnr-partn_numb = pr_kunnr.
wa_bapiparnr-partn_role = 'RE'.
APPEND wa_bapiparnr TO it_bapiparnr.
CLEAR wa_bapiparnr-partn_role.
wa_bapiparnr-partn_numb = pr_kunnr.
wa_bapiparnr-partn_role = 'RG'.
APPEND wa_bapiparnr TO it_bapiparnr.
CLEAR wa_bapiparnr-partn_role.
wa_bapiparnr-partn_numb = pr_kunnr.
wa_bapiparnr-partn_role = 'WE'.
APPEND wa_bapiparnr TO it_bapiparnr.
ENDIF.
wa_bapischdl-itm_number = w_itemno.
wa_bapischdl-req_qty = wa_main-kwmeng.
wa_bapischdl-PURCH_NO_S = pr_kunnr.
APPEND wa_bapischdl TO it_bapischdl.
wa_bapicond-itm_number = w_itemno.
wa_bapicond-cond_type = 'ZECL'.
IF ( wa_bapisdhd1-doc_type = 'ZPMU' ) OR ( wa_bapisdhd1-doc_type = 'ZPMM' ).
wa_bapicond-cond_type = 'ZVAL'.
ELSE.
wa_bapicond-cond_type = 'ZMRP'. "+PK12122006
ENDIF.
wa_bapicond-cond_value = wa_main-kwert.
APPEND wa_bapicond TO it_bapicond.
w_itemno = w_itemno + 10.
w_cond = w_cond + 1.
ENDLOOP.
data : SALESDOCUMENTIN like BAPIVBELN-VBELN.
CALL FUNCTION 'BAPI_SALESORDER_CREATEFROMDAT2'
EXPORTING
order_header_in = wa_bapisdhd1
IMPORTING
salesdocument = SALESDOCUMENTIN
TABLES
return = it_bapiret2
order_items_in = it_bapisditm
order_partners = it_bapiparnr
order_schedules_in = it_bapischdl
order_conditions_in = it_bapicond.
CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
EXPORTING
wait = c_ch.
ENDIF.
LOOP AT it_bapiret2 INTO wa_bapiret2.
DATA : w_err(100) TYPE c,
w_matnr TYPE matnr.
IF wa_bapiret2-type = 'E' AND wa_bapiret2-id = 'V1' AND wa_bapiret2-number = 392.
UNPACK wa_bapiret2-message_v1 TO w_matnr.
READ TABLE it_matnr INTO wa_matnr WITH KEY matnr = w_matnr.
IF sy-subrc EQ 0.
CONCATENATE text-013 wa_matnr-bismt INTO w_err SEPARATED BY space.
MESSAGE w_err TYPE 'S'.
ENDIF.
ENDIF.
IF WA_BAPIRET2-TYPE = 'S'. " Comment
WRITE: 40 TEXT-009, WA_BAPIRET2-MESSAGE_V2+0(10).
ENDIF.
ENDLOOP.
ENDFORM. " f005_posting
I have given all the necessary parameters. it is telling that error is in parameter
sales_header_in.
I have checked it.
i have assigned purch_no_s and purch_no_c of the structure BAPISDHD1(ORDER_HEADER_IN)
in the bapi with customer number.
and also i have assigned the partnumber of the structure BAPIPARNR ORDER_PARTNERS
in the bapi with customer number.
but still , it is diplaying the error message, please enter the sold to or ship to party number.
how to resolve this error.
this is urgent requirement.
points will be awarded.
thanking u in advance,
a.srinivas.Hi,
Did u have a look at the standard programs which make use of BAPI_SALESORDER_CREATEFROMDAT1
Heres a list...
LWSSOU08
MV45WF0S
MWWMJF21_BAPI_SALESORDER_CREAT
RBUS2032
Regards,
Tanveer.
<b>Please mark helpful answers</b> -
What are the pros and cons of using a port system.
Hello All,
I'm a new explorer in the OS X UNIX world, and have installed macports, and, for the most part, succeeded in building and using a number of scientific applications.
I have noted a somewhat negative attitude by some on the use of port systems, while others seem quite content with them.
When making my decision to use macports, these "selling points" seemed desirable to me:
¤ Confines ported software to a private “sandbox” that keeps it from intermingling with your operating system and its vendor-supplied software to prevent them from becoming corrupted.
¤ Allows you to create pre-compiled binary installers of ported applications to quickly install software on remote computers without compiling from source code.
Especially the first point seems valuable, but am I deluding myself? Or, am I losing functionality/ flexibility? Or, am I just missing out on manually installing lots of dependents?
_I'm not trying to start a feud, here._
I'm just looking for some pointers (preferably well-substantiated) from those more knowledgeable than me, before I am any further committed to a choice I might later regret.
Thanks,
PWKThe biggest drawback/complaint I have is that you're bound by the implementation/installation policy of whoever built the port.
For example, take the installation issue - all software gets installed into some specific directory which is great one one hand - fewer compatibility issues with conflicting versions from what Apple provide. The downside, though, is that nothing on your machine will use these versions unless/until you tweak them.
For example, maybe you want to install the MacPorts version of PHP, great, but the standard Apache won't use that, so you either need to install the MacPorts version of Apache, or tweak your Apache installation to use the non-standard PHP version.
Well, what about PATHs, I hear you ask? well, sure, you could prepend the MacPorts/fink/whatever directory to your $PATH, but then you always use the MacPorts/fink/whatever version of any installed software which might not be what you want.
This becomes more of an issue in a multi-server environment where you have multiple systems that all need tweaking/maintaining - nothing worse than setting up a new server by copying an existing installation, only to find that it depends on MacPorts/fink/whatever being installed.
The corollary to this is that these package managers often install ancillary software that you do not need, nor want. It might have improved since I last looked, but installing either MacPorts or fink, for example, installs whole new versions of perl, GNU tools (gzip/gunzip, etc.), curl, and more - they even install new copies of openssl/ssh.
I don't want these. These already exist on my system so what are they needed for? Why can't they use the standard copies? Are they 'tweaked' in some way? How? why?
The secondary issue is that you are limited to the port's implementation - especially compile options - which may not be ideal for your machine.
Unlike most GUI-based software, much open-source software uses compile-time options to configure the executable. Now the port installer might do a reasonable job of tweaking the installation, but it's not psychic so there will be cases where you end up with sub-optimal installations. Sure, they might work well enough, but that doesn't beat knowing what those options are up-front and building your own.
Now there have been cases where I've tried to install software and almost given up when faced with a daunting list of dependencies (try RRD, or PHP w/ GD, for example) and have almost given up, but when you succeed the satisfaction of getting it working, plus the fact you now know how to do it counts for a lot.
Now, do I wish that Apple would do a better job of keeping up with the latest versions of the open source software they include in Mac OS X? absolutely - isn't that what Software Update is all about??). But I also wish the port maintainers would spend more of their time updating the original source configure and make scripts to incorporate whatever changes they're making to the code so that Mac users can easily use the same source distribution as other UNIX flavors.
And right there is the final rub IMHO - all the while the port managers create their distributions of common tools Mac OS X is treated like a poor step-child that's kept in the cellar. OK, maybe not that bad, but there's no reason why anyone who wants to install open source software on a Mac should need much more than:
(download>
./configure
make
sudo make install
it really isn't all that hard. Too often the port managers perpetuate the myth that Mac OS X is too different from other UNIX systems to work with the standard tools that everyone else knows.
Now, maybe I'm also too old for this game since you always downloaded and built tools yourself when I started, and maybe package managers on Linux (which may have the same issues I've complained about) have helped elevate Linux in the mindset of a younger generation who are looking for a quick fix. All I can say to that is…
GET OFF MY LAWN! :-D -
How the PS Capex works in SAP R/3 Finance
Hi All,
how the secondary cost element is used in SAP for PS capex settlement ..
how the PS Capex works in SAP R/3 Finance
when the secondary cost elements starting with 9 and PS will accoounted in PS Capex Settlement
will the sencondary cost element be zero with regarding to PS Capex settlement postings.
Thanks & Regards
Nandhafor ECCN numbers we did a LSMW or you can do a BDC program
-
How to display top Position Level using conditions / Exception Aggregation
Hello,
I have the following problem where I need to list out the row with the highest POSITION LEVEL (with reference to BUSINESS PARTNER). I have tried out all possibilities including Conditions and Exception Aggregation (MAX) but nothing seems to work. Conditions work to an extent i.e. it shows the top position level but unfortunately for the entire query result i.e. only one row is displayed in the result (the first row to satisfy the condition) instead of all the rows for each Business Partner. POSITION LEVEL is a KEY FIGURE value. It also exists as a CHARACTERISTIC under a diferent name in the cube. How can I solve this? Pls help.
This is how the report looks at present...
First Name Last Name Business Partner Nr. Date of Birth Postalcode City Position Level
Testfallini Enzweiler 3000000020 21.10.1990 63674 New York 1
Tamara Dimmer 3000179274 10.09.1987 54689 Chicago 2
Tamara Dimmer 3000179274 10.09.1987 54689 Chicago 1
Tamara Dimmer 3000179274 10.09.1987 54689 Chicago 1
Thu-Ha Tran 3000069951 25.12.1988 93047 Atlanta 2
Thu-Ha Tran 3000069951 25.12.1988 93047 Atlanta 1
This is how the report looks when I use conditions...
First Name Last Name Business Partner Nr. Date of Birth Postalcode City Position Level
Tamara Dimmer 3000179274 10.09.1987 54689 Chicago 2
This is how the report should look...
First Name Last Name Business Partner Nr. Date of Birth Postalcode City Position Level
Testfallini Enzweiler 3000000020 21.10.1990 63674 New York 1
Tamara Dimmer 3000179274 10.09.1987 54689 Chicago 2
Thu-Ha Tran 3000069951 25.12.1988 93047 Atlanta 2
Thanks in advance,
SDHi Sebastian,
I thought you need to display all the records with the highest position level at top. But now I realize your requirement.
It should only display only the maximum position level for each level.
You can try using the Condition for the position level KF, with Top N operator and value = '1'
And then go to char assignement tab in the exception and select Most Detail Chars along Rows/Individual Chars. and combinations for the required combination of Chars.
[List Condition for All Characteristics in Drilldown Independent|http://help.sap.com/saphelp_nw04/helpdata/en/86/dfc405ab60524ea0d3e89db15fb2e7/content.htm]
[Defining Conditions |http://help.sap.com/saphelp_nw04/helpdata/en/73/702e39074dc93de10000000a114084/frameset.htm]
Hope this helps....
Rgs,
Ravikanth.
Maybe you are looking for
-
ICloud backup works but displays incorrect Apple ID
I only have 1 Apple ID that I use for everything. I set up iCloud and can backup from iPhone to iCloud successfully. I can log into iCloud from my Mac. But when I log into iCloud on my Mac using my one and only Apple ID, then I click on my Account In
-
Can I backup the contents of an external drive to a network location using Time Machine?
I have just installed a Lacie Thunderbolt external drive as I want the speed to access large volumes of photographs. If I configure it as RAID 0 I will need to back up the data on that drive. I have a NAS drive which I already use for Time Machine
-
Random crashes on start-up and failure of registration details to stick
I've just bought Final Cut Express 4 HD and am having severe problems with it. The biggest single problem is simply that each time I start up, it asks for all the registration details and the serial number. I've updated to the latest version, cleared
-
Pages (iWork) is not displaying fonts correctly
I'm using the popular font Ubuntu (as this is our corporate font) in Pages (5.2). Everytime I type an apostrophe it turns it into a little superscript 9. If I type single quotes these become superscript 8's and 9's. Sample below: Obviously, it is the
-
Hi all: Is there a standard role called end user role which can not be found in our system ? if yes, can you please tell me what actions should be assigned to the role? thank you very much Edited by: jingying Sony on May 11, 2010 4:01 AM