Bi cats datasource
Hi Gurus I am working on the BI development, I had an issue regarding the CATS datasource, which was active , we had created new records in R/3, these values were not reflecting in the datasource when it is viewed in the Extract Checker. Can anyone help me out of this, points will be awarded for the best suggestions.
increase the number of records being pulled by RSA3 by increasing the value in the box Data Records / Calls and Display Extr. Calls
by default it will only 1000 records so if you have more than 1000 records than increase the setting accordingly
Edited by: sam hennry on Mar 13, 2008 11:20 AM
Similar Messages
-
How the data extraction happens from HR datasources from R/3 to BW system.
Hello All
How the data extraction happens from HR datasources from R/3 to BW system.Incase of delta records ( for CATS datasources ) ,Is there any flow like LO .
Incase of Full and delta loads how does the data will be taken from R/3 to BW,DO we need to fill setup tables ?
Searched forum but couldnt able to find the relevant one.
Thankyou
ShankarHi Shankar.
HR Datasources do not have setup tables . Though before implementation, certain customizations should be done and the delta loads have dependency on other data sources. Also you must have implemented Support Package SAPKH46C32, or have made the relevant corrections in SAP Note 509592.
Follow this link for details on customization and dependencies for all CATS datasources.
http://help.sap.com/saphelp_nw70/helpdata/en/86/1f5f3c0fdea575e10000000a114084/frameset.htm
Regards,
Swati -
Need help with an innerjoin issue
Hello;
I am writting a small app for my web site and have run into
an issue with an innerjoin. Let me explain what the function is for
this so maybe you can understand what I am doing.
There are 2 pages to this. Page 1, is a category selection
page. It loads all the categories on the page with a link that
passes a category ID to page 2. Page 2, then allows you to view all
the projects that are associated to the specific category. There is
a numbered navigation on this page, kind of like google, 1 2 3 4
More> Next>
Now what I am trying to do it create a select function that
allows you to choose another category to look through on page 2 so
you don't have to go back to page 1 and select another category
there.
Right now, I have the innerjoin working well with page 1
going to page 2 and the numbered nav, it is doing what it is
supposed to. BUT the select function is working off the where
clause and not working independantly from what the numbered nav and
body is supposed to be doing. There is also a spot I added to this
page that kind of works like the select function, it puts the name
of the category your viewing on the page.
What is happening with the select function and this name
function is lets say there are 5 project records tied to the
category you selected, then the select function gets 5 names of the
same category in it and so does the category name function.
(Follow this?)
Let me post the code for page 1 and page 2. also will add
what the tables are in the db.
DB tables:
Table1: Categories
Name (this is the actual category name), MYFile(the file that
give an image of the category), Description(a description of this
category), CategoryID (this is added to the projects table for each
project that is connected to each category)
Table 2: Projects
ProjectID (this is the ID of the projects), Name (this is the
name of the project) Body (thi sis the description and picture of
the project), CategoryID (this is the id of what category the
project falls under, also assigned to tproject from the categories
table)
There is a lot of code that goes in this, so I am going to
post the code that is pertinent to this question, 90% of it is
working at this time, just not the select function and category
name on page 2.
Page1 Code:
<CFQUERY name="GetRecord"
datasource="#APPLICATION.dataSource#">
select Name, MYFile, Description, CategoryID
FROM Categories
</CFQUERY>
<head>
</head>
<body>
<cfloop query="GetRecord" startRow="#URL.startRow#"
endRow="#endRow#"><cfoutput>
<img src="../img/cat/#MYFile#" width="50" height="50">
<a
href="portfolio-detail.cfm?CategoryID=#CategoryID#">#Name#</a>
#Description#
</cfoutput></cfloop>
<!--- there is a numbered nav on this page, it works nice
so I didn't add the code, that is why I am using a cfloop --->
Page2 code:
<CFQUERY name="getProjects"
datasource="#APPLICATION.dataSource#">
SELECT Projects.ProjectID, Projects.Name, Projects.Body,
Projects.CategoryID,
Categories.CategoryID AS catID, Categories.Name AS cat_name
FROM Projects
INNER JOIN Categories
ON Categories.CategoryID = Projects.CategoryID
WHERE Projects.CategoryID = #categoryID#
ORDER BY ProjectID
</CFQUERY>
<cfif getProjects.recordCount is 0>
No projects in this category.
<cfabort>
</cfif>
<head>
<!--- this script is for the select function so when you
make a selection, it goes to the next category without having to
hit a submit button --->
<script language="Javascript">
function changeRecord(){
document.category.submit();
</script>
</head>
<body>
<!--- here are the Category name and select functions that
aren't working properly yet --->
<cfoutput
query="getProjects">#cat_name#</cfoutput>
<form Name="category" method="post"
Action="portfolio-detail.cfm?CategoryID=true">
<select name="CategoryID" size="1"
onChange="category.submit();">
<option value=""> --Select a Category--
</option>
<CFOUTPUT query= "getProjects">
<option value="#CategoryID#">#cat_name#</option>
</CFOUTPUT>
</select>
</form>
<!--- this part is working properly, it also has a
numbered nav, like google that is working properly at this point
--->
<cfoutput query="GetProjects" startRow="#startRow#"
maxRows="#maxRows#">
#Name#
#Body#
</cfoutput>
<!--- next is the cfmodule for the nav, the nav is a lot
of code, a whole page on it's own so I am not posting it --->
<cfmodule
template="../CFdocs/PageNav.cfm"
totalItems="#numRows#"
numPerPage="#maxRows#"
startRow="#startRow#"
url="#cgi.script_name#?categoryID=#categoryID#&startRow=#startRow#">
The main part that is not working properly is the select, and
category name. How to I get those to work independantly from my
where clause? (I need the where clause for the numbered nav and
cycling through the projects tied to the category you called up
from page 1.
Can someone help me tweek my code from this point? I am
stumped, I looked at the cf docs and I can't find a solution. I am
using CF 8.
Any help would be appreciated. Thank you!
CFmongerI fixed a lot of this since I posted it this morning. Now all
that isn't working properly is the select, it isn't passing the
proper variable to make the query work.
This is what I have now:
Page 2:
<CFQUERY name="getProjects"
datasource="#APPLICATION.dataSource#">
SELECT Projects.ProjectID, Projects.Name, Projects.Body,
Projects.CategoryID,
Categories.CategoryID AS catID, Categories.Name AS cat_name
FROM Projects
INNER JOIN Categories
ON Categories.CategoryID = Projects.CategoryID
WHERE Projects.CategoryID = #categoryID#
ORDER BY ProjectID
</CFQUERY>
<!--- I will add the <cfqueryparam> in a bit --->
<cfif getProjects.recordCount is 0>
No projects in this category.
<cfabort>
</cfif>
<!--- This query populates the select nav --->
<CFQUERY name="cata"
datasource="#APPLICATION.dataSource#">
select Name, MYFile, Description, CategoryID
FROM Categories
</CFQUERY>
<head>
<script language="Javascript">
function changeRecord(){
document.category.submit();
</script>
</head>
<body>
<!--- this output works well now, gives me what I need and
changes when you select a category from page 1 --->
<cfoutput query="getProjects"
maxrows="1">#cat_name#</cfoutput>
<!-- the select isn't passing the CategoryID properly, it
is now throwing an error --->
<form Name="category" method="post"
Action="portfolio-detail.cfm?CategoryID=#CategoryID#">
<select name="CategoryID" size="1"
onChange="category.submit();">
<option value=""> --Select a Category--
</option>
<CFOUTPUT query= "cata">
<option value="#CategoryID#">#Name#</option>
</CFOUTPUT>
</select>
</form>
<!-- the rest of the code goes after this, it ias all
working --->
The error I get when using the select is this:
Error Executing Database Query.
[Macromedia][SequeLink JDBC Driver][ODBC
Socket][Microsoft][ODBC Microsoft Access Driver] Syntax error
(missing operator) in query expression 'Projects.CategoryID ='.
The error occurred in C:\Websites\folio\portfolio-detail.cfm:
line 12
10 : INNER JOIN Categories
11 : ON Categories.CategoryID = Projects.CategoryID
12 : WHERE Projects.CategoryID = #categoryID#
13 : ORDER BY ProjectID
14 : </CFQUERY>
I also tried doing it this way:
<form Name="category" method="post"
Action="portfolio-detail.cfm?CategoryID=true"
This way didn't work at all, it only made the numbered nav on
the page cycle through all the projects in all the categories.
What do I need to change to pass the proper variable from the
select nav to the innerjoin query and my where statement? -
Hi wanna display as 3 in table row
Hi, Still in categories and subcategories: my below component
is displaying the code as tree menu:
<cfcomponent name="Categories">
<cffunction name="getCats">
<!--- Parent ID --->
<cfargument name="parent" type="numeric">
<!--- Query for Children of Parent --->
<cfquery name="cats" datasource="#request.dsn#">
SELECT * FROM
categories
WHERE parentid = <cfqueryparam cfsqltype="cf_sql_numeric"
value="#arguments.parent#">
</cfquery>
<!--- Create Output --->
<cfif cats.recordcount GT 0>
<cfset output = "<ul>">
<!--- Loop over all items --->
<cfloop query="cats">
<cfset output = "#output# <li><a
href='a.cfm?id=#cats.catID#'>#cats.category#</a>">
<!--- Check Children of this item --->
<cfif cats.recordcount GT 0>
<cfset output = "#output# #CreateObject('component',
'wrap').getCats(cats.catid)#">
</cfif>
<cfset output = "#output#</li>">
</cfloop>
<cfset output = "#output#</ul>">
<cfreturn output />
</cfif>
</cffunction>
</cfcomponent>
And what i was tryng is that for every category a <td>
should be created and then i should add something like <cfif
query.currentRow MOD 3>
it should move to the next <td> TAG.
Till Here but the problem is i am trying to doin may be say
stupid way.
under category in one <TD> if that category have
subcats. then it should display them as ul and li. and like this:
i created a table generation but getting into problems while
plugging it in the cfc:
here is of my auto table generation:
<table align="center" width="100%" border="0">
<cfif variables.newrow EQ true>
<tr>
</cfif>
<td>My CFC Code Goes Here</td>
<cfif query.currentRow MOD 4 EQ 0>
</tr>
<cfset variables.newrow = true>
<cfelse>
<cfset variables.newrow = false>
</cfif>
<tr>
</table>
</div>
</cfoutput>It would be much simpler if you got all your data before you
attempt to display it. Plus it appears that you can get all the
data you need with a single query. -
Adding an if / cfswitch statement to a query missing peramiters
Hello;
I'm trying to add a feature into a page I made. It has a lot going on, so I'll try and give you the basic function I'm trying to add.. and as little of the other logic as possible.
I want to add a dropdown menu to this page, I have 2 querys running it. one, runs the dropdown.. here is the code for that:
<CFQUERY name="cata" datasource="#APPLICATION.dataSource#" cachedwithin="#CreateTimeSpan(0, 6, 0, 0)#">
select subName, subID
FROM merchSubCat
ORDER BY subName
</CFQUERY>
<form Name="category" method="get" Action="wallProduct.cfm?id=#subID#">
<select name="CategoryID" size="1" class="selectstyle" onChange="category.submit();">
<option value=""> --Select a Category-- </option>
<CFOUTPUT query= "cata">
<option value="#subID#">#subName#</option>
</CFOUTPUT>
</select></form>
ok, simple enough. It takes the info from my db and makes a little menu out of it. click on one of the selections, and it will pass a url.id to the same page. This query is the main query that runs the page. I need it to serve up the first set of records by default, and if you select from the drop down, the according records will be brough up. here is my query to add this feature.
<cfquery name="getMerch" datasource="#APPLICATION.dataSource#">
SELECT merchID, MerchName, MerchDescription, MerchPrice, MYFile, subID, CategoryID
FROM Merchandise
WHERE
<cfif isDefined ("#url.id#")>
<cfswitch expression="#url.id#">
<cfcase value="1">subID = 1</cfcase>
<cfcase value="2">subID = 2</cfcase>
<cfcase value="3">subID = 3</cfcase>
</cfswitch>
<cfelse>
subID = 1
</cfif>
</cfquery>
When my page loads, there is no ID in the url, and my code is not liking this and throwing an erro as such:
Element ID is undefined in URL.
The error occurred in C:\Websites\187914kg3\magWall\wallProduct.cfm: line 19
17 : FROM Merchandise
18 : WHERE
19 : <cfif isDefined ("#url.id#")>
20 : <cfswitch expression="#url.id#">
21 : <cfcase value="1">subID = 1</cfcase>
This is my problem, and I'm sure it's something silly I'm forgetting ehre. I've done this b4. How do I make this work so that by default, subID = 1 is shown when the page loads, and the others are shown when you use the dropdown menu.
I also spoke of other logic on this page. there is a next n button running this query, as well as a cfswitch to switch the order of the records, using the ORDERBY in my query. But I want to get this dropdown menu working before I add in all this other logic.
can anyone help me? I'm having a mental block on this problem.
thank you.Ken, yours works nice. I thought of the cfparam afte
r I posted, but left the default blank, so it threw an error.
Now my problem is an error with my dropdown menu. It says sudID is undefined in the form variables for this select. here is the
error, and code.. I tried a few different approaches on this and right now, nothig is fixing it.
My error:
Variable SUBID is undefined.
The error occurred in C:\Websites\187914kg3\magWall\wallProduct.cfm: line 89
87 : <table width="100%" border="0" cellspacing="0" cellpadding="0">
88 : <tr>
89 : <td colspan="3" align="center" valign="top"><form Name="category" method="get" Action="wallProduct.cfm?ID=#subID#">
90 : <select name="subID" size="1" class="selectstyle" onChange="category.submit();">
91 : <option value=""> --Select a Category-- </option>
My code:
<CFQUERY name="cata" datasource="#APPLICATION.dataSource#">
select subName, subID
FROM merchSubCat
ORDER BY subName
</CFQUERY>
<form Name="category" method="get" Action="wallProduct.cfm?ID=#subID#">
<select name="subID" size="1" class="selectstyle" onChange="category.submit();">
<option value=""> --Select a Category-- </option>
<CFOUTPUT query= "cata">
<option value="#subID#">#subName#</option>
</CFOUTPUT>
</select></form>
am I missing something here? -
Hello;
I am trying to write a little nav using a select menue. This page is a dynamic page, you can only get to it when there is an URL.ID, if there is not one, it kicks you back to the page that spawns the details page. I have it locked down pretty well with the url.ID, I added the select nav on the detail page so people won't have to go back to the main page for the list of records in that part of the db, and they won't have to cycle through number 1-12 to find a record they want to pull up.I have 2 queries running this. I will comment it out and mainly focus on the select function.
This is the MAIN query, this one runs the page and outputs the info for the details of the records I am bring up. This works fine from the main page link using url.id
<cfquery name="GetRecordevent" datasource="#APPLICATION.dataSource#">
SELECT events.display AS ViewField1, events.title AS ViewField2, events.eventDate AS ViewField3, events.eventTime AS ViewField4, events.location AS ViewField5, events.contact AS ViewField6, events.phone AS ViewField7, events.fax AS ViewField8, events.email AS ViewField9, events.URL AS ViewField10, events.sponsor AS ViewField11, events.Body AS htmlList, events.ID AS ID
FROM events
WHERE events.ID =<cfqueryparam value="#URL.ID#" cfsqltype="cf_sql_integer">
</cfquery>
now this is the tag that locks down the detail page:
<cfif (isDefined ("URL.ID")) OR (isDefined ("value.id"))>
they get the info on this page
<cfelse>
<cflocation url="index.cfm" addtoken="no">
</cfif>
this is the select function and query that populates it with the titles of records and the id
<CFQUERY name="cata" datasource="#APPLICATION.dataSource#" cachedwithin="#CreateTimeSpan(0, 6, 0, 0)#">
SELECT events.title AS ViewField2, events.ID AS ID
FROM events
</CFQUERY>
<cfform Name="eventnav" method="post" Action="detail.cfm?value=#ID#">
<select name="ID" size="1" class="selectstyle" onChange="eventnav.submit();">
<option value=""> --Select an Event-- </option>
<CFOUTPUT query= "cata">
<option value="#ID#">#ViewField2#</option>
</CFOUTPUT>
</select>
</cfform>
now my query is not recognizing the value.id in the url from the select function action part of the form. I tried adding a AND statement and changed it to an OR statement, neither one works. What do I need to do to either change the select function to match a url.id or add to my main query that the select function needs to pull a record?I'm a little confused, my lockdown works as it is with teh OR in it. But my main query is not liking what I am doing.Can anyone help me figure out how to make this work properly?Thank you.CodemongerCFmonger wrote:
<cfform Name="eventnav" method="post" Action="detail.cfm?value=#ID#">
method="post" means that the data will be submitted as post data in the request which will populate the FORM structure which is different from the URL structure that comes from get data in a request.
The fastest way to fix this would be to change the method parameter to "get" in your cfform tag.
There are also frameworks out there that blend the form and url scopes together so that you do not have to worry about which the data came from. Fusebox is one such framework. But doing something like that would be a lot of re-engineering if you have a lot of existing code.
Otherwise you could work your logic to look for the ID value in either the URL or the FORM scopes.
P.S. the ?value=#ID# I just noticed in the action parameter will be populated with the current ID on the page, not the new ID selected by the user from the select control. So this form is going to submit both POST and GET data with ID values, but those values will be distinct and often different. -
Accidentally abandoned and not closed connections
Tome cat datasource can close abandoned connections. can weblogic data source implement
this? If not how can webligic connection pool deal with these accidentally abandoned
and not closed connections?zorro wrote:
connection is retrived by this function.
public Connection createConnection()throws Exception{
try{
InitialContext ictx=new InitialContext();
DataSource ds=(DataSource)ictx.lookup("jdbc/Oracle");
return ds.getConnection();
catch(NamingException e){
logger.error("failed to get connection:"+e);
return null;
And most of us use it in the way as follow. But I am not sure that there is no
connection leak in the code of the other programmers. If connection leak steadily
and seldom occur, what will happan when the weblogic server works for a long time?
I know that tomcat datasource handal the connection leak very well.The code below is correct. As soon as GC finds an abandoned connection, it will
be closed and returned to the pool. You can also turn on leak checking, which will
print out where the leaked connection was reserved, to help you find the code tp fix.
Joe
>
>
Connection conn=null;
try{
conn=createConnection();
catch(Exception e ){
finally{
try{
if(conn!=null)conn.close();
catch(Exception e ){} -
Error when Fetching CATs Data to BI
Hi,
I have created data source in R/3 System (Source System) for CATS data and extracting data Using function Module. Using transaction RSA3 it is fetching all the desired records in R/3 System.
In BI System extracting Full Data and when monitoring it is throwing Error.
Error 7 when sending an IDoc
Error when opening an RFC connection 2
Error when opening an RFC connection
Errors in source system
Function Module for fetching CATS Data
FUNCTION ZLBTIME_GET_CATSREC.
*"*"Local Interface:
*" IMPORTING
*" VALUE(I_REQUNR) TYPE SRSC_S_IF_SIMPLE-REQUNR
*" VALUE(I_DSOURCE) TYPE SRSC_S_IF_SIMPLE-DSOURCE OPTIONAL
*" VALUE(I_MAXSIZE) TYPE SRSC_S_IF_SIMPLE-MAXSIZE OPTIONAL
*" VALUE(I_INITFLAG) TYPE SRSC_S_IF_SIMPLE-INITFLAG OPTIONAL
*" VALUE(I_READ_ONLY) TYPE SRSC_S_IF_SIMPLE-READONLY OPTIONAL
*" VALUE(I_REMOTE_CALL) TYPE SBIWA_FLAG DEFAULT SBIWA_C_FLAG_OFF
*" TABLES
*" I_T_SELECT TYPE SRSC_S_IF_SIMPLE-T_SELECT OPTIONAL
*" I_T_FIELDS TYPE SRSC_S_IF_SIMPLE-T_FIELDS OPTIONAL
*" E_T_DATA STRUCTURE ZLSCATS OPTIONAL
*" EXCEPTIONS
*" NO_MORE_DATA
*" ERROR_PASSED_TO_MESS_HANDLER
* Example: DataSource for table SFLIGHT
* TABLES: SFLIGHT.
* Auxiliary Selection criteria structure
DATA: L_S_SELECT TYPE SRSC_S_SELECT.
* Maximum number of lines for DB table
STATICS: S_S_IF TYPE SRSC_S_IF_SIMPLE,
* counter
S_COUNTER_DATAPAKID LIKE SY-TABIX,
* cursor
S_CURSOR TYPE CURSOR.
* Select ranges
** RANGES: L_R_CARRID FOR SFLIGHT-CARRID,
** L_R_CONNID FOR SFLIGHT-CONNID.
* Initialization mode (first call by SAPI) or data transfer mode
* (following calls) ?
IF I_INITFLAG = SBIWA_C_FLAG_ON.
* Initialization: check input parameters
* buffer input parameters
* prepare data selection
* Check DataSource validity
CASE I_DSOURCE.
WHEN 'ZLTIME_DS_3'.
WHEN OTHERS.
IF 1 = 2. MESSAGE E009(R3). ENDIF.
* this is a typical log call. Please write every error message like this
LOG_WRITE 'E' "message type
'R3' "message class
'009' "message number
I_DSOURCE "message variable 1
' '. "message variable 2
RAISE ERROR_PASSED_TO_MESS_HANDLER.
ENDCASE.
APPEND LINES OF I_T_SELECT TO S_S_IF-T_SELECT.
* Fill parameter buffer for data extraction calls
S_S_IF-REQUNR = I_REQUNR.
S_S_IF-DSOURCE = I_DSOURCE.
S_S_IF-MAXSIZE = I_MAXSIZE.
* Fill field list table for an optimized select statement
* (in case that there is no 1:1 relation between InfoSource fields
* and database table fields this may be far from beeing trivial)
APPEND LINES OF I_T_FIELDS TO S_S_IF-T_FIELDS.
ELSE. "Initialization mode or data extraction ?
* Data transfer: First Call OPEN CURSOR + FETCH
* Following Calls FETCH only
* First data package -> OPEN CURSOR
IF S_COUNTER_DATAPAKID = 0.
* Fill range tables BW will only pass down simple selection criteria
* of the type SIGN = 'I' and OPTION = 'EQ' or OPTION = 'BT'.
** LOOP AT S_S_IF-T_SELECT INTO L_S_SELECT WHERE FIELDNM = 'CARRID'.
** MOVE-CORRESPONDING L_S_SELECT TO L_R_CARRID.
** APPEND L_R_CARRID.
** ENDLOOP.
** LOOP AT S_S_IF-T_SELECT INTO L_S_SELECT WHERE FIELDNM = 'CONNID'.
** MOVE-CORRESPONDING L_S_SELECT TO L_R_CONNID.
** APPEND L_R_CONNID.
** ENDLOOP.
* Determine number of database records to be read per FETCH statement
* from input parameter I_MAXSIZE. If there is a one to one relation
* between DataSource table lines and database entries, this is trivial.
* In other cases, it may be impossible and some estimated value has to
* be determined.
** OPEN CURSOR WITH HOLD S_CURSOR FOR
** SELECT (S_S_IF-T_FIELDS) FROM SFLIGHT
** WHERE CARRID IN L_R_CARRID AND
** CONNID IN L_R_CONNID.
OPEN CURSOR WITH HOLD s_cursor FOR
* SELECT * FROM zlvctmbw.
SELECT a~counter a~pernr a~workdate a~skostl a~lstar a~rproj a~awart a~kokrs a~meinh a~tcurr a~price
a~unit a~bukrs a~ersda a~erstm a~ernam a~laeda a~laetm a~status a~refcounter a~reason a~belnr
a~catshours a~act1 a~act2 a~task a~lang1 a~narr1 a~lang2 a~narr2 a~cmnt a~clst a~plchl
b~ltxa1 b~transfer b~hrkostl b~hrlstar b~hrcostasg b~statkeyfig b~catsquantity b~bemot
c~pspnr c~pspid
d~kunnr
FROM catsdb AS a
LEFT OUTER JOIN catsco AS b ON a~counter = b~counter
JOIN prps AS p ON p~pspnr = a~rproj
JOIN proj AS c ON c~pspnr = p~psphi
JOIN zltproj AS d ON d~pspnr = c~pspnr.
ENDIF. "First data package ?
* Fetch records into interface table.
* named E_T_'Name of extract structure'.
FETCH NEXT CURSOR S_CURSOR
APPENDING CORRESPONDING FIELDS
OF TABLE E_T_DATA
PACKAGE SIZE S_S_IF-MAXSIZE.
IF SY-SUBRC <> 0.
CLOSE CURSOR S_CURSOR.
RAISE NO_MORE_DATA.
ENDIF.
S_COUNTER_DATAPAKID = S_COUNTER_DATAPAKID + 1.
ENDIF. "Initialization mode or data extraction ?
ENDFUNCTION.
When fetching data using VIEW in source system it works fine.
When testing for fetching data of SFLIGHT using function module ZRSAX_BIW_GET_DATA_SIMPLE
made a copy of RSAX_BIW_GET_DATA_SIMPLE, it is working fine.
Pls suggest the cause of error.
Regards
VishalHello Praveen,
Connection is fine as I tried fetching data of SFLIGHT using standard template function module which works fine and in transaction sm58 I do not any data.
Regards
Vishal -
How to include key field in classification datasource?
Hello,
How can I include key fields in a new classification datasource?
When i try to generate my classification datasource i get this error:
No key field found for creation of DataSource
Diagnosis
During generation of a classification or configuration DataSource, only those key fields for the object table (field "Obj.Tabelle") that are already present in the basis DataSource transferred to the extract structure. This is the case when none of the key fields of the object table were found in the structure of the basis DataSource.
Hence the datasource does not get generated.
Thank you very much and regards.Hello Prem,
Yes, the characteristisc are in the system. I also saved these charateristics, they are in N status at the moment.
The problem is when i click on Datasouce buttom to generate the datasource, this is when I get the error message i mention above.
I tried to do an example with 0MATERIAL_ATTR with obj. table MARA and class cat 001 and i had no problem.
Then i try to do it with 0PLANT_ATTR obj table BETR and class cat 030 and i get this key problem.
Can this be related to the fact that MARA table has got a key and BETR does not have one?
Thank you and Regards. -
WebLogic Datasources : Automatically Shutdown and Start up
Hi there,
I have a problem with my datasources, I have WLST script which shutdown and start automatically some datasources in my environment, all of them in my crontab !
Follow exactly my script !
[weblogic@wls_server restartDS]$ cat shutdownDS1.py | more
connect('weblogic','password','t3://server:10000')
domainConfig()
servers = cmo.getServers()
domainRuntime()
for server in servers:
try:
print 'check ' + server.getName()
print '/ServerRuntimes/' + server.getName() + '/JDBCServiceRuntime/' + server.getName() + '/JDBCDataSourceRuntimeMBeans/MYDATASOURCE-XA1'
cd('ServerRuntimes/' + server.getName() + '/JDBCServiceRuntime/' + server.getName() + '/JDBCDataSourceRuntimeMBeans/MYDATASOURCE-XA1')
objectArray = jarray.array([], java.lang.Object)
stringArray = jarray.array([], java.lang.String)
invoke('shutdown', objectArray, stringArray)
except WLSTException,e:
print server.getName() + 'is not running.'
for server in servers:
try:
print 'check ' + server.getName()
print '/ServerRuntimes/' + server.getName() + '/JDBCServiceRuntime/' + server.getName() + '/JDBCDataSourceRuntimeMBeans/MYDATASOURCE-XA2'
cd('ServerRuntimes/' + server.getName() + '/JDBCServiceRuntime/' + server.getName() + '/JDBCDataSourceRuntimeMBeans/MYDATASOURCE-XA2')
objectArray = jarray.array([], java.lang.Object)
stringArray = jarray.array([], java.lang.String)
invoke('shutdown', objectArray, stringArray)
except WLSTException,e:
print server.getName() + 'is not running.'
exit()
Don´t worry, I have another script which kill XA3 and XA4 datasources as well, so, this way, I have load balancing here !
It works with CRONTAB !
The problem here is : Doesn´t matter if datasources are running or not, simply , datasources automatically shutdown and after that, start it! But I would like to improve this, I would like to implement datasource status condition, I mean, when datasource it become overloaded, it kill automatically , this way, I would not use crontab, but another kind of trigger |!
Did you see this before ?
I would like to improve this workaround !
Just keep in mind, me and my team, didn´t discover the root cause yet, so, this automatically datasource restart is a kind of workaround!
Thanks in advance !
EdsonHmm. what was the problem app?
Force a shut down by holding the power button for an extended amount.
Reboot into SafeBoot mode to clear cache files, then reboot as normal.
SafeBoot http://support.apple.com/kb/HT1564 -
Datasource as a function module
hi,
I am looking for a sample code to use function module as a datasource.
Is there any document which i can use for this ?
Thanks in advance.Hi
Please have a look into the following link.
https://www.sdn.sap.com/irj/sdn/advancedsearch?cat=sdn_all&query=genericdatasourcefromfunction+module&adv=false&sortby=cm_rnd_rankvalue
hope it helps
Thanks,
Teja -
Hi all,
Can i add some more selection criteria to a standard source. Im using 0FI_GL_4 and would like to add GL Account HKONT to my selection when extracting data (InfoPackage).
Also can i add an additional field BUZID to this datasource? How?
How can i do that?
Thanks
Edited by: SAPPER BI on Apr 22, 2008 3:31 AMDear SAPPER BI
Enhancement means in the SAP given datasource If you want to add extra fields.
Go Through this
http://www.bridgeport.edu/sed/projects/cs597/Fall_2003/vijaykse/step_by_step.htm
Follow these simple steps too
The procedure is like below.
Take the datasource in which you enhance.
1. If you enhancing in the LO datasaource, take the aprapriate communication strucute append the structure in that structure add the fields you wnat enhance.
If you are enhancing other than LO you take extract structure append the structure and add the fields in that structure.
2. Goto LBWE Tcode take the option called "Maintain Extract structure" take the fields which you enhanced from pool take push in to extract strucure.
If you enhancing other than LO no need to do this.
3. Goto RSA6, take datasource, goto change mode. The enhanced fields Hide option checked, reomove that tick and save it.
4. Goto "CMODE" tcode, If project is already created for that enhancement goto disply mode. If the project is not created give the project name created and give the enhancemet name as "RSAP0001" and save it.
in the component you can find 4 Function modules
EXIT_SAPLRSAP_001 -> Transaction Data
EXIT_SAPLRSAP_002 -> masterdata attributes
EXIT_SAPLRSAP_003 -> Master data Texts
EXIT_SAPLRSAP_004 -> Masterdata Hirarchies.
Take the apprapriate FM and double click on it
there you can find Include name. If you double click on it you can find ABAP editor.
there we have to write the code
example code will be like below.
data: l_s_icctrcst like icctrcst,
l_s_icctract like icctract,
l_s_icctrsta like icctrsta,
l_tabix like sy-tabix.
case i_datasource. */ in BW 1.2B case i_isource.
when '0CO_OM_CCA_1'.
loop at c_t_data into l_s_icctrcst.
l_tabix = sy-tabix.
select single * from z0001 where kokrs = l_s_icctrcst-kok
and kostl = l_s_icctrcst-kostl.
if sy-subrc = 0.
l_s_icctrcst-zfield1 = z0001-zfield1.
l_s_icctrcst-zfield2 = z0001-zfield2.
modify c_t_data from l_s_icctrcst index l_tabix.
endif.
endloop.
when '0CO_OM_CCA_2'.
when '0CO_OM_CCA_3'.
when others.
exit.
endcase.
This is example code.
Also go through this link for more information
https://www.sdn.sap.com/irj/sdn/advancedsearch?cat=sdn_all&query=procedureTOENHANCEdATASOURCE&adv=false&sortby=cm_rnd_rankvalue
If ur doing the replication first time, then do the following steps:
1. Verify the R3 connection in SM59.
2. Check all the required authorization is having for ur background user.
3. Check whether ur data source is active in RSA6. If it is not active then activate from RSA5. Take best practice for activate the delta things like setup table deletion and initialization, etc.,
4. Replicate the data source now in BW side.
5. Activate all the corresponding transfer rules and update rules and info providers.
If everything already available and now ur getting this error, then it may be RFC error or background user or R3 side Datasource problem.
Try to extract the 2lis_01_s260 data in R3 itself (RSA3). And check whether data is extracting fine or not.
Hope it helps you,Revert me back if you have any queries
Assign ponts if helpful
Regards
Bala -
When I generate a datasource in transaction CTBW it is only generating the text datasource, for example
1CL_AMIL010
1CL_AMIL011
1CL_AMIL012 and so on, but the datasource for attributes 1CL_OMAT001 is not being genereted, and i don't know why.
I'm using 0MATERIAL_ATTR as base datasource, cat class = 01, Table MARA.
do you know why this attr datasource 1CL_OMAT001 is not being generated ? The system ask me for a password of developer user, but i don't have one.Hi Sachin Vij.
Thanks for your answer, I finally generate the datasource 1CL_OMAT0001 but now when I go to transaction RSA3 and test the extractor, it is not bringing me any information.
I'm using 0material_attr as datasource of reference, with category class = 01 and table MARA to genereta the datasource, but it is not bringing me any information.
I want to extract some material characteristics that are linked to tables CABN, CAWN, CAWNT, on field ATWRT.
I already assign the characteristics to the datasource 1CL_OMAT001 and it generates new datasources like: 1CL_AMIL001, 1CL_AMIL002.
My problem is that 1CL_OMAT001 is not bringing me any information, and i need this datasource to load the new attributes to the infosource 0MATERIAL_ATTR.
ANY IDEA OF WHAT TO DO ???
THANKS IN ADVANCED. -
Enhancing the Classification Datasources . Tcode - CTBW
Hi Guys,
we need to use customer exit for populating certaing classification field values in the Classification datasources ( tcode - CTBW).
could you please provide any document or info that whether it is possible to use the customer exit using CMOD for deriving the value for the calssification field.
Thanks
lnv.Thank you for the document KJ, it was veryhelpful.
I just have one more question ?? When I generate the datasource in transaction CTBW it is only generating the text datasource, for example
1CL_AMIL010
1CL_AMIL011
1CL_AMIL012 and so on, but the datasource for attributes 1CL_OMAT001 is not being genereted, and i don't know why.
I'm using 0MATERIAL_ATTR as base datasource, cat class = 01, Table MARA.
do you know why this attr datasource 1CL_OMAT001 is not being generated ? The system ask me for a password of developer user, but i don't have one. -
Help with ComboBox, datasource from database
Hi there,
i am new to Flex technology and desperately need help with
combobox.
I have a combobox in my app and the datasource comes from
MySQL database. I use a PHP script to populate the combobox. Say in
the datatabse table, I have the following result:
id name
1 dog
2 cat
3 horse
In the app, the combobox will have the list as the name of
the animals: dog, cat, horse. But when the user selects dog, how do
I get the selected id 1 instead of the label "dog".
Any help/suggestion will be appreciated.Hi again,
the xml for the combobox datasource is as follows
<animals>
<animal>
<id>1</id>
<name>dog</name>
</animal>
<animal>
<id>2</id>
<name>cat</name>
</animal>
<animal>
<id>3</id>
<name>horse</name>
</animal>
</animals>
and my <mx:HTTPService> is:
<mx:HTTPService id="dropDown" useProxy="false" url="
http://localhost/~ronnyk/combobox.php"
resultFormat="e4x" result="get_drop_down(event)" />
public function get_drop_down(e:ResultEvent):void{
var dropArr:XML = e.result as XML;
cb.dataProvider = dropArr.animal;
cb.labelField = "name";
cb.data = "id";
public function clickme():void{
txtinput.text = cb.selectedItem as String;
I can't figure out which part I did wrong, in order to get
the id instead of the name when the user clicks the button
Maybe you are looking for
-
I am an Adobe CC member and am trying to install the CC Desktop app. I down load it ok then run the installer. It asks me for my Apple id to make changes but then a pop up window appears asking me to give my Adobe id and password. Unfortunately this
-
Clearing Open Items In G/L Account
FI Gurus, I need to clear some entries in a G/L account, the account does not equal to zero, as it is a clearing account use for accruals, got goods receipt. However I have all items open, I need to get a detail of only items that are truly open. Doe
-
Date fields do not accept 12-AUG-00
I am using forms 6.0.8.11.3. When I enter a date like 12-JUL-00 (dd-MON-yy format) in a date field I get ORA 66502 FRM 50003 error "Year must be 00-99 or 1000-4712". Please help! Thanks in advance.
-
Are there any security risks in opening ports for IChat AV?
Hi all, I'm trying to get the network admin on a primarily Windows network to open the ports needed to get iChat AV working, but he is saying it's dangerous to have those ports open, not knowing what kind of effects there would be on a Windows networ
-
Improvements for control center
Please put a switch for the enabling cellular data in the control center. I would use a great deal to try to save the most of the battery on my iPhone. Thanks