Excel population
Hello,
We have a spreadsheet which has several sheets...
The first sheet i.e. sheet1 is connected to the database which pulls data from a view on sql server.
The remaining sheets are just pivots based on the dataset which is populating sheet1...
When I run the view in the query analyser of sql server, it takes only a few seconds to return about 200,000 rows in the sql server.
Question:
On opening the excel file, it takes about an hour to open because it takes a longtime to be populated with data as explained above.
Do you know what is causing this to take such a long time in excel whereas it is quick in sql server?
Thank you
Question:
On opening the excel file, it takes about an hour to open because it takes a longtime to be populated with data as explained above.
Do you know what is causing this to take such a long time in excel whereas it is quick in sql server?
Hi arkiboys,
Please help to collect the following information regarding this issue, they are benefit for us to troubleshooting this issue:
What's the version of your SQL Server and Office Excel.
How many worksheets in your Excel file?
How many PivotTables in the Excel report?
In addition, have you try to detete other worksheets except worksheet1 and then monitor the performance?
If you have any feedback on our support, please click
here
Regards,
Elvis Long
TechNet Community Support
What's the version of your SQL Server and Office Excel. SQL Server 2008 R2 (SP1) - 10.50.2550.0 (X64)
excel 2013.
How many worksheets in your Excel file? now I have only one sheet which is the one that connects to the sql server to get the data using a view
How many PivotTables in the Excel report? Now I have taken out all the sheets which had pivotTables, so none.
Thanks
Similar Messages
-
Excel import to create forms with pre-populated fileds
Can/how do I create forms with pre-populated fields from an external data source like Excel? Example: I would like to create 100 forms with pre-populated name fields from an Excel document containing 100 names.
Hi,
Sorry, we don't currently support creating forms with pre-filled data.
Regards,
Brian -
Populating Drop down List in Excel Planning Layout
HI!
hopefully somebody can help me.
I have a simple planing function ( copy function: Version1 => Version2 ), Version2 the target version is a BEx Variable and a parameter of the copy planing function.
basicly i want to put a drop down list on a Excel Planing Layout to manipulate the BEx Variable (Version 2 - the target version). So that the user can fill the BEx Variable by selecting the version by the dropdown list.
In BW-BPS is quite simple -but unfortunately i dont know how it works in BW-IP.
Best Regards
Mike
Message was edited by:
Mike KhatibHello Mike,
First you create two Drop Down lists (Dimension Version, Read Mode Masterdata table) in your workbook. Now go to the Visual basic editor (alt+F11) and you will find the following code for each Drop Down list:
Public Sub DROPDOWN_22_LostFocus()
Dim lComboBoxName As String
Dim BEx1 As Object
On Error Resume Next
lComboBoxName = "DROPDOWN_22"
Set BEx1 = Application.Run("BExAnalyzer.xla!GetBEx")
Call BEx1.RaiseComboBoxChange(Parent.Name, lComboBoxName)
End Sub
Comment the last line and add a function to output the chosen value to a cell in the workbook
Public Sub DROPDOWN_22_LostFocus()
Dim lComboBoxName As String
Dim BEx1 As Object
Dim version As String
'Call Dropdown List
On Error Resume Next
lComboBoxName = "DROPDOWN_22"
Set BEx1 = Application.Run("BExAnalyzer.xla!GetBEx")
'Call BEx1.RaiseComboBoxChange(Parent.Name, lComboBoxName)
'get version
version = DROPDOWN_22.Text
'output chosen version to a cell in the workbook
Range("C801").FormulaR1C1 = version
End Sub
Now add a command range to your workbook (VAR_VALUE_1,1, <VERSION>). Thats it.
If you need further information dont hesitate to ask me!
Best regards
Johannes
PS: Please assign points if this information was helpful -
Populating InDesign templates with data from Excel or XML?
I have a client who does a weekly catalogue for computer parts. It’s very detailed and extremely time consuming, and we are looking at moving it to an automated InDesign workflow to save time and money in production. Once imported into InDesign, the resulting file can be exported as a formatted XML document to a webpage for auto formatting.
I know you can import XML directly into InDesign and vice versa. I have created some categories and tables in Excel and exported this as an .xml document. When I import that document into the View > Structure panel, it displays a whole list of attributes but not the actual text I was after.
Any help much appreciated. I’m using InDesign CS4 and doing some research on google at the moment.Hi CDesign2,
If I understood you correctly, you are either trying to
View your xml data in Adobe LiveCycle form to redit the form???
View your xml data in Adobe acrobat pro
Or wishing to collate updated(new) data into adobe (lifecycle) tracker and view the data set
I suspect points 2, 3 may be the case.
My experience with migrating excel data back to adobe is this.
If you created the original form with adobe, you have the option of distributing the form (file/form distribution..)
to recipients list (could include form creator).
This allows adobe to generate a distribution and form response file and therefore able to track returned forms either as pdf (preferably) or excel/xml converted back to pdf after saving it.
For Point 2 above,assuming your original data set were created using an adobe form you previously saved, open your original form in acrobat pro, go to menu/forms/manage form data/import data (usually as xml). It automatically repopulates the form.
OR
To view returned forms as a set, go to menu/forms/compile returned forms and this will bring up a window that
requires you
-to browse and locate your response file (essentially defining the index form),which is opened into the top row
-then find and add each new completed form into a list in the second row.
You then click ok and all returned forms are opened in a tracker window...
I just realised I am talking about liveCycle ES version8 and this forum refers to pre ES!
I am not sure if this helps but I hope it answers some of your questions. -
How Do I get SSIS To Stop Looping Through Excel Rows After Last Populated Record?
I have a package that loops through many excel files. Each Excel File has about 5000 rows. My problem is that after the 5000th row SSIS keeps looping through all the rows after the last row. There are nothing in these rows. This is a complete bottleneck
of my package because it takes forever when doing this. How do I stop this?
ThanksAnother way is to specify the range in select statement which can be done in two ways
http://getsetsql.blogspot.in/2012/01/using-ssis-load-data-to-excel-sheet-at.html
http://sqlserversolutions.blogspot.in/2009/02/selecting-excel-range-in-ssis.html
Please Mark This As Answer if it solved your issue
Please Vote This As Helpful if it helps to solve your issue
Visakh
My Wiki User Page
My MSDN Page
My Personal Blog
My Facebook Page -
Populating graph in excel using ole
Hi All,
I am able to populate the graph from abap into excel using OLE.
But I am not able to take x-axis and y-axis according to my requirement, its taking by its own as default. please see the below code:
<b>CALL METHOD OF GS_EXCEL 'Cells' = GS_CELL1
EXPORTING
#1 = GV_LINE_CNTR
#2 = 1.
CALL METHOD OF GS_EXCEL 'Cells' = GS_CELL2
EXPORTING
#1 = GV_LINNO1
#2 = GV_COLNO.
CALL METHOD OF GS_EXCEL 'Range' = GS_CELLS
EXPORTING
#1 = GS_CELL1
#2 = GS_CELL2.
CALL METHOD OF GS_CELLS 'Select' .
GET PROPERTY OF GS_APPLICATION 'Charts' = GS_CHARTS .
CALL METHOD OF GS_CHARTS 'Add' = GS_CHART .
CALL METHOD OF GS_CHART 'Activate' .
SET PROPERTY OF GS_CHART 'ChartType' = '93' .</b>Now I want to give my own range. But i am not able to.
I am also not able to give labels of x-axis and y-axis.
Please help, its very urgent............Hello,
try this code. It creates macro as a file, and than uses that macro to show the chart
Regards,
Naimesh
REPORT ZTEST_NP .
INCLUDE OLE2INCL. " OLE objects include
*export data variables
DATA: H_EXCEL TYPE OLE2_OBJECT, " Excel object
WORKBOOKS TYPE OLE2_OBJECT, " list of workbooks
THIS_WORKBOOK TYPE OLE2_OBJECT, " workbook
CELL TYPE OLE2_OBJECT, " cell
BOOK_FONT TYPE OLE2_OBJECT. " font
*chart creation DATA: variables
DATA: MODULE TYPE OLE2_OBJECT, "macro
NEWMODULE TYPE OLE2_OBJECT. "macrotab with VB source code
INternal tableTABLES: no_table.
DATA H TYPE I.
table that contains Visual Basic source code
DATA: BEGIN OF MACROFILE OCCURS 0,
LINE(80) ,
END OF MACROFILE.
*Internal table with Months and related Profits
DATA: BEGIN OF NO_TABLE OCCURS 10, "Internal table with no's
MONTH(8) TYPE C,
PROFIT(8) TYPE C,
END OF NO_TABLE.
*Months added to table as well as Profits
NO_TABLE-MONTH = 'June'.
NO_TABLE-PROFIT = '1000'. APPEND NO_TABLE. "Update table
NO_TABLE-MONTH = 'July'.
NO_TABLE-PROFIT = '4000'. APPEND NO_TABLE. "Update table
NO_TABLE-MONTH = 'August'.
NO_TABLE-PROFIT = '3000'. APPEND NO_TABLE. "Update table
NO_TABLE-MONTH = 'September'.
NO_TABLE-PROFIT = '7000'. APPEND NO_TABLE. "Update table
NO_TABLE-MONTH = 'October'.
NO_TABLE-PROFIT = '7000'. APPEND NO_TABLE. "Update table
NO_TABLE-MONTH = 'November'.
NO_TABLE-PROFIT = '6000'. APPEND NO_TABLE. "Update table
CALL METHOD OF THIS_WORKBOOK 'InsertFile'
EXPORTING #1 = 'C:\VBsource.tmp'.
*********Fill makro table with VB source code************************
the macro's name is draw_graph
MACROFILE-LINE = 'sub draw_graph()'. APPEND MACROFILE.
MACROFILE-LINE = 'Range("a1:a1").Font.Bold = True'.APPEND macrofile.
MACROFILE-LINE =
'Range("a1:a1").Value = "Net Profits for last few months.
"'. APPEND macrofile. "Bold heading at top of sheet.
MACROFILE-LINE = 'Range("A2:B7").Select'. APPEND macrofile.
MACROFILE-LINE = 'charts.add'. APPEND MACROFILE.
MACROFILE-LINE = 'activechart.charttype = xllinemarkersStacked
'. APPEND macrofile.
MACROFILE-LINE =
'Activechart.setsourcedata source:=sheets("Sheet1").range("A2:B7") ,
PLOTBY:= XLROWS'. APPEND macrofile.
MACROFILE-LINE = 'activechart.location where:=xllocationasobject, name:=
"sheet1"'. APPEND macrofile.
MACROFILE-LINE = 'With ActiveChart'. APPEND MACROFILE.
MACROFILE-LINE = '.hasLegend = false '. APPEND MACROFILE.
MACROFILE-LINE = ' .Axes(xlValue, xlPrimary).HasTitle = True'.
APPEND MACROFILE.
MACROFILE-LINE = '.axes(xlvalue, xlprimary).axistitle.characters.text =
"Net Profit ($)"'.
APPEND MACROFILE.
MACROFILE-LINE = 'End With'. APPEND MACROFILE.
MACROFILE-LINE = 'msgbox ("Chart completed!")'. APPEND macrofile.
MACROFILE-LINE = 'end sub '. APPEND MACROFILE.
*******************vb source code end********************************
***********create file with visual basic source code *******************
CALL FUNCTION 'WS_DOWNLOAD'
EXPORTING
FILENAME = 'c:\VBsource.tmp' "directory with temporary file
FILETYPE = 'ASC'
TABLES
DATA_TAB = MACROFILE
EXCEPTIONS
FILE_OPEN_ERROR = 1
FILE_WRITE_ERROR = 2
INVALID_FILESIZE = 3
INVALID_TABLE_WIDTH = 4
INVALID_TYPE = 5
NO_BATCH = 6
UNKNOWN_ERROR = 7
OTHERS = 8.
**********create file with visual basic source code end**************
**write info to screen (ABAP)
LOOP AT NO_TABLE.
WRITE: / SY-VLINE NO-GAP,
NO_TABLE-MONTH COLOR COL_KEY NO-GAP, SY-VLINE NO-GAP,
NO_TABLE-PROFIT COLOR COL_NORMAL NO-GAP, SY-VLINE NO-GAP.
ENDLOOP.
ULINE (61).
**********************START THE EXCEL APPLICATION*********************
CREATE OBJECT H_EXCEL 'EXCEL.APPLICATION'. "type of application
PERFORM CHECK_ERRORS.
SET PROPERTY OF H_EXCEL 'Visible' = 1.
PERFORM CHECK_ERRORS.
CALL METHOD OF H_EXCEL 'Workbooks' = WORKBOOKS.
PERFORM CHECK_ERRORS.
create a new workbook
CALL METHOD OF WORKBOOKS 'Add' = THIS_WORKBOOK.
PERFORM CHECK_ERRORS.
***********fill the Excel table with data*****************************
PERFORM FILL_EXC_TAB USING 1 1 1 'Profits:'(001). "initial heading
LOOP AT NO_TABLE.
H = SY-TABIX + 1.
PERFORM FILL_EXC_TAB USING H 1 0 NO_TABLE-MONTH.
ENDLOOP.
LOOP AT NO_TABLE.
H = SY-TABIX + 1.
PERFORM FILL_EXC_TAB USING H 2 0 NO_TABLE-PROFIT.
ENDLOOP.
***********fill the Excel table with data end*************************
************DRAW the CHART using the values exported *******************
CALL METHOD OF H_EXCEL 'Modules' = MODULE.
PERFORM CHECK_ERRORS.
CALL METHOD OF MODULE 'Add' = NEWMODULE. " the macro
PERFORM CHECK_ERRORS.
CALL METHOD OF NEWMODULE 'Activate'.
PERFORM CHECK_ERRORS.
get source code from temporary file
CALL METHOD OF NEWMODULE 'InsertFile' EXPORTING #1 = 'C:\VBsource.tmp'.
PERFORM CHECK_ERRORS.
executing VBA program code -> macro name = "draw_graph"
CALL METHOD OF H_EXCEL 'Run' EXPORTING #1 = 'draw_graph'.
PERFORM CHECK_ERRORS.
FREE OBJECT H_EXCEL. "free up memory
PERFORM CHECK_ERRORS.
FORM FILL_EXC_TAB USING I J BOLD VAL.
CALL METHOD OF H_EXCEL 'Cells' = CELL EXPORTING #1 = I #2 = J.
PERFORM CHECK_ERRORS.
SET PROPERTY OF CELL 'Value' = VAL .
PERFORM CHECK_ERRORS.
GET PROPERTY OF CELL 'Font' = BOOK_FONT.
PERFORM CHECK_ERRORS.
SET PROPERTY OF BOOK_FONT 'Bold' = BOLD .
PERFORM CHECK_ERRORS.
ENDFORM.
error handling subroutine
FORM CHECK_ERRORS.
IF SY-SUBRC NE 0.
WRITE: / 'OLE error:'(010), SY-SUBRC.
STOP.
ENDIF.
ENDFORM. -
Opening an Excel File using Excel 97 from a JSP populated page(Urgent)
Hello,
I am using a JSP Page to populate data from the DB.
When I am opening the same as an Excel File the JSP code is coming as the Excel page whenever Excel 97 is being used,but when Excel2000 or 2003 is being used then the data are coming as Excel formatted.I used the following code(JSP) :
<head>
<%
response.setContentType("application/vnd.ms-excel");
response.setHeader("Content-Disposition","inline; filename=ExtractData.xls");
%>
</head>I can't even tell what the difference is between "coming as the Excel page" and "coming as Excel formatted". But then when people make urgent posts they very rarely spend the time to describe the problem accurately. Why bother when it's so damn urgent?
-
Populating table from excel or other source
What is the easiest way to populate a table from an existing Word or Excel file? I am looking at a long list with name, address, phone, website fields and would like to avoid dragging and dropping or hand entering. Should the file be saved as a comma or tab separated ascii? Can someone point me in the right direction?
Thanks,
JoeHi Joe,
in addition to Mylenium's hint I want to show you this alternative Adobe-option, look here:
http://help.adobe.com/en_US/dreamweaver/cs/using/WSc78c5058ca073340dcda9110b1f693f21-7ce6a .html
In it finds this small restriction: Note: If you use Microsoft Office 97, you cannot import the contents of a Word or Excel document; you must insert a link to the document.
Hans-G. -
Issue with data populated in excel attachment
Hi Folks,
Im an emailing the report output as excel attachement. In the excel file, im getting only the header line and NOT the details, pls help me where im going wrong.
regds,
BGhi pls find the code im using as below.
TYPES : BEGIN OF ty_output,
no(18) TYPE c,
soh(13) TYPE c,
qty(13) TYPE c,
matnr TYPE mara-matnr,
maktx TYPE makt-maktx,
labst TYPE mard-labst,
avl_qty TYPE bapicm61v-wkbst,
END OF ty_output.
DATA:
docdata LIKE sodocchgi1,
objpack LIKE sopcklsti1 OCCURS 1 WITH HEADER LINE,
objtxt LIKE solisti1 OCCURS 10 WITH HEADER LINE,
objbin LIKE solisti1 OCCURS 10 WITH HEADER LINE,
reclist LIKE somlreci1 OCCURS 1 WITH HEADER LINE,
tab_lines TYPE sy-tabix.
DATA: lv_labst(13) TYPE c,
lv_avl_qty(13) TYPE c,
t_output TYPE STANDARD TABLE OF ty_output,
wa_output LIKE LINE OF t_output.
CONSTANTS: con_tab TYPE c VALUE cl_abap_char_utilities=>horizontal_tab,
con_cret TYPE c VALUE cl_abap_char_utilities=>cr_lf.
Body
docdata-obj_name = 'Mail_Excel_File'.
docdata-obj_descr = 'Excel file attachment'.
objtxt = 'Attached is the sample Excel file'.
APPEND objtxt.
DESCRIBE TABLE objtxt LINES tab_lines.
READ TABLE objtxt INDEX tab_lines.
docdata-doc_size = ( tab_lines - 1 ) * 255 + STRLEN( objtxt ).
CLEAR objpack-transf_bin.
objpack-head_start = 1.
objpack-head_num = 0.
objpack-body_start = 1.
objpack-body_num = tab_lines.
objpack-doc_type = 'RAW'.
APPEND objpack.
Attachment
*i_data-a = 'Sample'.
*i_data-b = 'File'.
*CONCATENATE i_data-a i_data-b INTO objbin.
*APPEND objbin.
CONCATENATE 'NO 'SOH'
'QTY' 'MATNR ' 'MAKTX'
'LABST' 'AVL_QTY' INTO objbin SEPARATED BY con_tab.
CONCATENATE con_cret objbin INTO objbin.
APPEND objbinst.
CLEAR objbin.ut
wa_output-no = '123456'.
wa_output-soh = '39000'.
wa_output-qty = '39000'.
wa_output-matnr = '123-456'.
wa_output-maktx = 'test'.
lv_labst = '39,000'.
lv_avl_qty = '39,000'.
CONCATENATE wa_output-no wa_output-soh
wa_output-qty wa_output-matnr
wa_output-maktx lv_labst
lv_avl_qty
INTO objbin SEPARATED BY con_tab.
CONCATENATE con_cret objbin INTO objbin.
APPEND objbin.
CLEAR objbin.
DESCRIBE TABLE objbin LINES tab_lines.
objpack-doc_size = tab_lines * 255.
objpack-transf_bin = 'X'.
objpack-head_start = 1.
objpack-head_num = 1.
objpack-body_start = 1.
objpack-body_num = tab_lines.
objpack-doc_type = 'XLS'.
docdata-obj_name = 'Excel_File_Attachment'.
objpack-obj_descr = 'Excel File Attachment'.
APPEND objpack.
Create the list of recipients
reclist-receiver = mail address.
reclist-rec_type = 'U'.
reclist-express = 'X'.
APPEND reclist.
Send the e-mail
CALL FUNCTION 'SO_NEW_DOCUMENT_ATT_SEND_API1'
EXPORTING
document_data = docdata
put_in_outbox = 'X'
commit_work = 'X'
TABLES
packing_list = objpack
contents_bin = objbin
contents_txt = objtxt
receivers = reclist
EXCEPTIONS
too_many_receivers = 1
document_not_sent = 2
document_type_not_exist = 3
operation_no_authorization = 4
parameter_error = 5
x_error = 6
enqueue_error = 7
OTHERS = 8.
COMMIT WORK. -
Manually populating Excel File
Guys,
For some reasons i need to manully export data (not by using export listener) as excel file format, how this can be acheived?
do we need to use any java excel API's or is there any best way to do in ADF?
Any suggestions welcome....Hi..
Yes,You can use Apache POI and
See
http://www.roseindia.net/tutorials/poi/ApachePoiCreateXlsx.shtmlIf you want to write excel to client machine do as follows
<af:fileDownloadActionListener> to get Outputstream for Excel
Check following ..
http://jdevadf.oracle.com/adf-richclient-demo/docs/tagdoc/af_fileDownloadActionListener.htmlhope this will helpful -
Excel 2007 and Smartview 11.1 file open slow
We are in the process of upgrading to HFM system 11.1 and smartview 11.1.1.3 and as part of this process we are starting to use Excel 2007. I am encountering an interesting problem when opening files in Excel 2007 using smartview 11.1 and I am wondering if any one else has seen this problem and found a solution.
First I converted an excel 2003 file to excel 2007 and saved the file as an xlsx file type. Then I am able to open the file and it would take about 30 seconds to open the file. The file has about 15,000 formulas on for spreadsheets. If I click on each spreadsheet individually and use the "Refersh" button I can save the file in about 10 seconds and then close the file. When I open the file again it will open in 30 seconds. Now using the same file I click "Refresh All" and the file processes fine. I am able to save and close the file in about 10 seconds. However, when I try to open the file again it takes about 20 minutes to open, and then 20 minutes to close.
This only happens with two or three files. I have another file that is 40 spreadsheets and about 3,000 formulas that is not affected when I click Refresh or Refresh All.
Any help would be apperciated.
RichHi
On metalink i found some notes about this issure
"Background
SmartView communicates over HTTP using .NET. This just means that requests and responses are sent in a standard XML format that is tucked in the HTTP headers. The mechanism is the same as when your internet browser requests a file or submits a form (simplification). A standard Microsoft component that is part of Internet Explorer is used for this.
There are three components (four if you include the network) in a SmartView refresh:
-the client
-the web server
-the HFM application server
It is easiest to troubleshoot when they are on separate machines. (Running SmartView on the server to see whether it works better is a useful test to see what effect the network is having, but doesn't show any other bottlenecks.) If you run Task Manager on these 3 machines showing the Performance tab, you will see initial activity on the client as Excel clears the cells and the request is converted into XML. Then you see the web server get busy as it receives and parses the request. Then the application server is busy as it send the data, then the web server is busy as it compiles the results into XML again, and finally the client parses the XML, pushes the data into cells and runs an Excel calculation. This last stage is the longest of all. Overall, it is typical to see the client doing 90-95% of the work, so client performance is a very important factor. Look out for Excel's memory usage increasing and RAM becoming in short supply. Often, user dissatisfaction with refresh times can be alleviated by giving them more RAM or a faster PC.
The situation we are dealing with here, however, is when the chain of events described above is interrupted. In this case, you will see the client or the web server wait in vain for a response from the next machine in the chain. The case of invalid XML is similar, but the response is truncated so that the XML is not well-formed when it arrives. XML consists of matching pairs of tags and is not well-formed when a closing tag is missing. This can be caused by certain network settings such as packet size (see later). The end result in either case is the same: as Excel cleared the cells before sending the request, cells are left blank or with zeroes.
Your job now is to work out why the particular component is failing.
Client
Check the HTTP time out in the registry:
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings]\
"ReceiveTimeout"=dword:00dbba00
"KeepAliveTimeout"=dword:002BF20
"ServerInfoTimeout"=dword:002BF20
The time-out limit is five minutes for versions 4.0 and 4.01 and is 60 minutes for versions 5.x and 6. Also, the time-out limit is 30 seconds for Windows Internet Explorer 7. To change the settings, add the above keys. The above values are hexadecimal, not decimal and correspond to 18000 milliseconds (3 minutes) and 240 minutes for the receive time-out. See
- http://support.microsoft.com/kb/813827
- http://support.microsoft.com/kb/181050
Once you make those changes, my recommendation is that you reboot the client machine.
Web server
Look for errors in logs showing that the web app didn't respond/disconnected or timed out waiting for another application (i.e. the HFM application server). Eliminate load balancers etc. during testing in order to isolate the problem and to ensure that the user always goes to the same web server otherwise, logs can be hard to interpret. See also the IIS Tuning Guide for IIS settings. We cannot recommend particular settings, as each client must establish the optimal settings for their own environment after performance testing. If necessary, engage the services of a suitably qualified consultant.
Application Server
HFM application server performance is very dependent on whether the data is already in RAM or not. One symptom, where the first refresh fails but the second one succeeds, is probably a sign that the cache needed to be populated and once that had been done (by the first refresh) it went faster. HFM loads whole subcubes (Scenario, Year, Value and Entity) into cache, so asking for lots of accounts in the same subcube is fast, but asking for lots of entities will inevitably slow things down as it runs out of RAM and starts unloading subcubes to make room for more. The HFM event log (HsvEventLog.log) shows this happening, but don't forget that the messages you see are a normal consequence of the way HFM works and are not a problem unless you see a hugely elevated number of them during the period the refresh occurs. Another sign would be page file thrashing.
If there are several servers in a cluster, use sticky sessions in HFM to make sure tests always go the same server, or hit one server directly rather than using the cluster.
Solutions here involve giving more RAM to the server (probably not possible because of the 2 GB limit) and changing the worksheet design to restrict the number of subcubes accessed. A separate consolidation server, so that reads are not competing with intensive consolidations and calculations, would be a good thing.
Network
To find out if packets get fragmented, use
ping -l size -f
to send a big packet with the 'don't fragment' flag. E.g.
Ping -l 1024 -f oracle.com
If you see a reply like Reply from 141.146.8.66: bytes=1024 time=200ms TTL=245 then the size you specified is below the packet limit of the network. But if you use, for example, 2000 in place of 1024, you get Packet needs to be fragmented but DF set, then you know you have exceeded the limit. Combine this investigation with a Fiddler trace (https://www.fiddler2.com/fiddler2/) to see what size data messages are being sent and received.
Troubleshooting Guidance
If you seriously want to go into this in more detail, then it will take a considerable effort on your and your IT Department's part. My general advice would be:
1. During this process, fix your environment so that it is predictable. Register a single HFM application server and connect to that. Use a single web server and don't go through Apache or any other redirector. Make sure we know which machine to go to for logs. This would be a temporary measure and it doesn't stop the other users using the full, load balanced system so long as it doesn't involve your server.
2. As far as possible keep other users from using it during testing, unless you are specifically testing for performance under load. We want to see what activity is due to SmartView and not random other jobs.
3. Use PerfMon on all three machines: client, web server and application server.
4. Clear Logs before testing and note the times of each test so the logs can be correlated.
5. Log CPU activity, memory usage, network throughput, page faults, thread count etc. I'm no expert on this so get advice from someone who is.
6. In addition to the performance logs, from the IIS Server get:
* HTTP.SYS Error Log - %windir%\System32\LogFiles\HTTPERR (Default location; configurable)
* IIS Website Log - %windir%\System32\LogFiles\W3SVC# (Default location; configurable)
* Event Log (both System and Application) in EVT and TXT (tab separated) formats
7. From HFM Application server get:
* HsvEventLog.log (in <HFM install>\Server working Folder)
* Event Log (both System and Application) in EVT and TXT (tab separated) formats
8. Be aware of all timeout settings in your environment (i.e. IIS & the network) and time your tests. This can show whether it is an ASP timeout, script timeout, client side timeout or whatever. Note that the Web Session Timeout setting for SmartView in HFM's Server and Web Configuration is a separate issue from IIS timeouts. Web Session Timeout controls the length of idle time before SmartView makes the user log in again. Default 20 mins.
9. Run Fiddler traces to directly observe the XML and check for HTTP failures.
Further resources
- Tuning IIS 6.0 for HFM
- SmartView Performance FAQ
Both are available from Support.
Author: Andrew Rowland
Version: 11.x (Fri, 30 October 2009)"
regards
Alexander -
.excel file takes lot of time to open after running Custom Program
DB:11.2.0.2.0
Oracle Apps:12.1.3
O/S:AIX 6.1
Hi All,
Issue Description:
When the report is submitted, the data gets populated into the table in less than 30secs and xml gets generated within a minute.
But the program takes some time in displaying the output around 5 mins but when we tried with html, it opens up quickly.
The template has a complex matrix, layout wherein, we are using nested FOR loops to display the data in the required format.
Yesterday, we ran the report “Custom GL STAT Trial Balance Report” in DEV Instance and for around 500+ records, it took around 5 mins.
The excel file is only 1 MB and xml generated is 245 KB
Moreover, recently we had increased the OPP jvm to 3GB to avoid java.lang.memory error what was occurring earlier.
select DEVELOPER_PARAMETERS
from FND_CP_SERVICES
where SERVICE_ID = (select MANAGER_TYPE from FND_CONCURRENT_QUEUES where
CONCURRENT_QUEUE_NAME = 'FNDCPOPP');
2 3 4
DEVELOPER_PARAMETERS
J:oracle.apps.fnd.cp.gsf.GSMServiceController:-mx3072m
Could this issue be due to JVM increase issue or something else?
How, could we monitor the jvm while the report is running to troubleshoot the issue?
Thanks for your time and help on this if anyone is willing to share such an experience faced before?
Regards,DB:11.2.0.2.0
Oracle Apps:12.1.3
O/S:AIX 6.1
Hi All,
Issue Description:
When the report is submitted, the data gets populated into the table in less than 30secs and xml gets generated within a minute.
But the program takes some time in displaying the output around 5 mins but when we tried with html, it opens up quickly.
The template has a complex matrix, layout wherein, we are using nested FOR loops to display the data in the required format.
Yesterday, we ran the report “Custom GL STAT Trial Balance Report” in DEV Instance and for around 500+ records, it took around 5 mins.
The excel file is only 1 MB and xml generated is 245 KB
Moreover, recently we had increased the OPP jvm to 3GB to avoid java.lang.memory error what was occurring earlier.
select DEVELOPER_PARAMETERS
from FND_CP_SERVICES
where SERVICE_ID = (select MANAGER_TYPE from FND_CONCURRENT_QUEUES where
CONCURRENT_QUEUE_NAME = 'FNDCPOPP');
2 3 4
DEVELOPER_PARAMETERS
J:oracle.apps.fnd.cp.gsf.GSMServiceController:-mx3072m
Could this issue be due to JVM increase issue or something else?
How, could we monitor the jvm while the report is running to troubleshoot the issue?
Thanks for your time and help on this if anyone is willing to share such an experience faced before?
Regards, -
How to show custom error message in WebADI Excel template?
Hi,
I've created a custom Web ADI integrator and associated it with a 'Procedure' based custom interface.
WebADI Interface API Returns is set to "Error Message".
I'm using raise_application_error(-20001, "Actual Error Message") for invalid rows,but custom error message from PL/SQL is not populated on the excel template.
Instead it is showing "SQL exception occurred during PL/SQL upload".
Am I missing anything? How to show custom error message from Pl/SQL procedure to WebADI Excel template?
TIA
NarasimhaThe custom API errors are visible in the BNE log but not on the Excel.
BNE Log=>
12/10/13 2:52 PM Web ADI Upload Job 13008 ERROR BnePLSQLUpload.doUpload: Exception while uploading to PL/SQL API. Error Code: 20001, Message: ORA-20001: -Please enter CONTAINER_ID - Enter PO_NO -
ORA-06512: at "APPS.XXPO_COSTFACTS_WEBADI_PKG", line 264
ORA-06512: at line 1
12/10/13 2:52 PM Web ADI Upload Job 13008 ERROR BnePLSQLUpload.doUpload: Stack trace: java.sql.SQLException: ORA-20001: -Please enter CONTAINER_ID - Enter PO_NO -
ORA-06512: at "APPS.XXPO_COSTFACTS_WEBADI_PKG", line 264
ORA-06512: at line 1
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:439)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:395)
at oracle.jdbc.driver.T4C8Oall.processError(T4C8Oall.java:802)
at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:436)
at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:186)
at oracle.jdbc.driver.T4C8Oall.doOALL(T4C8Oall.java:521)
at oracle.jdbc.driver.T4CCallableStatement.doOall8(T4CCallableStatement.java:202)
at oracle.jdbc.driver.T4CCallableStatement.executeForRows(T4CCallableStatement.java:1005)
at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1307)
at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3449)
at oracle.jdbc.driver.OraclePreparedStatement.execute(OraclePreparedStatement.java:3550)
at oracle.jdbc.driver.OracleCallableStatement.execute(OracleCallableStatement.java:4710)
at oracle.jdbc.driver.OraclePreparedStatementWrapper.execute(OraclePreparedStatementWrapper.java:1374)
at oracle.apps.bne.integrator.upload.BnePLSQLUpload.doUpload(BnePLSQLUpload.java:284)
at oracle.apps.bne.integrator.upload.BneSAXUploader.processDeepestLevel(BneSAXUploader.java:2346)
at oracle.apps.bne.integrator.upload.BneSAXUploader.startElement(BneSAXUploader.java:1182)
at oracle.xml.parser.v2.XMLContentHandler.startElement(XMLContentHandler.java:181)
at oracle.xml.parser.v2.NonValidatingParser.parseElement(NonValidatingParser.java:1288)
at oracle.xml.parser.v2.NonValidatingParser.parseRootElement(NonValidatingParser.java:336)
at oracle.xml.parser.v2.NonValidatingParser.parseDocument(NonValidatingParser.java:303)
at oracle.xml.parser.v2.XMLParser.parse(XMLParser.java:234)
at oracle.apps.bne.integrator.upload.BneUploader.processUpload(BneUploader.java:301)
at oracle.apps.bne.integrator.upload.BneAbstractUploader.processUpload(BneAbstractUploader.java:114)
at oracle.apps.bne.integrator.upload.async.BneAsyncUploadThread.run(BneAsyncUploadThread.java:140)
12/10/13 2:52 PM AJPRequestHandler-HTTPThreadGroup-5 WARNING BneOracleWebAppsContext.getTimeZone CLIENT_TIMEZONE_ID has not been set
12/10/13 2:52 PM AJPRequestHandler-HTTPThreadGroup-5 ERROR BneOracleWebAppsContext.getExtraJDBCConnection recieved the same connection as the base connection. There may be transaction problems.
How to show the same error in the excel template?
Here is the package:
CREATE OR REPLACE PACKAGE BODY APPS.XXPO_COSTFACTS_WEBADI_PKG
AS
PROCEDURE upload_data (
P_CONTAINER_ID IN VARCHAR2
, P_SAIL_DATE IN DATE
, P_PO_NO IN VARCHAR2
) IS
--declare
lv_err_msg VARCHAR2(240);
lf_err_flag NUMBER := 0;
ln_temp NUMBER;
BEGIN
--------------------- checking for mandatory parameters---------------------------
IF (P_CONTAINER_ID IS NULL) THEN
lf_err_flag := 1;
lv_err_msg := lv_err_msg||'-'||'Please enter CONTAINER_ID - ';
END IF;
-------------Validation for Sail Date Format----------------------
IF (P_SAIL_DATE IS NULL) THEN
lf_err_flag := 1;
lv_err_msg := lv_err_msg || ' ' || 'Enter Sail Date - ';
ELSE
BEGIN
SELECT 1
INTO ln_temp
FROM DUAL
WHERE P_SAIL_DATE = TO_DATE (TO_CHAR (P_SAIL_DATE, 'DD-MON-YYYY'), 'DD-MM-YYYY');
EXCEPTION
WHEN NO_DATA_FOUND THEN
lf_err_flag := 1;
lv_err_msg := lv_err_msg || ' Enter Sail date in DD-MON-YYYY Format';
WHEN OTHERS THEN
lf_err_flag := 1;
lv_err_msg := lv_err_msg || ' Enter Sail date in DD-MON-YYYY Format'|| SQLERRM;
END;
END IF;
-------------Validation for PO_Number----------------------
IF (P_PO_NO IS NULL) THEN
lf_err_flag := 1;
lv_err_msg := lv_err_msg || ' ' || 'Enter PO_NO - ';
ELSE
BEGIN
SELECT count(1)
INTO ln_temp
FROM PO_HEADERS
WHERE Attribute4 = P_PO_NO;
EXCEPTION
WHEN NO_DATA_FOUND THEN
lf_err_flag := 1;
lv_err_msg := lv_err_msg || ' No Oracle PO for Biceps PO#'||P_PO_NO;
WHEN OTHERS THEN
lf_err_flag := 1;
lv_err_msg := lv_err_msg || ' Error getting the Oracle PO for Bicpes PO#'||P_PO_NO||' Error-' || SQLERRM;
END;
END IF;
-----------------------Insert Record----------------------------
IF lv_err_msg is NULL THEN
BEGIN
INSERT
INTO XXP2P_HW_COST_FACTORS_STG
CONTAINER_ID
,SAIL_DATE
,PO_NO
, ERROR_FLAG
, ERROR_MSG
,CREATED_BY
,CREATION_DATE
,LAST_UPDATED_BY
,LAST_UPDATE_DATE
,LAST_UPDATE_LOGIN
VALUES
P_CONTAINER_ID
,P_SAIL_DATE
,P_PO_NO
,lf_err_flag
,lv_err_msg
,FND_GLOBAL.USER_ID
, trunc (sysdate)
,FND_GLOBAL.USER_ID
, trunc (sysdate)
,FND_GLOBAL.LOGIN_ID
-- commit;
DBMS_OUTPUT.put_line
'-' || 'After ap_invoices_interface'
EXCEPTION
WHEN OTHERS THEN
ROLLBACK;
lf_err_flag := 1;
lv_err_msg := lv_err_msg || ' ' || 'error loading CONTAINER_ID-' || P_CONTAINER_ID || SQLERRM;
raise_application_error(-20001, lv_err_msg);
END;
ELSE
raise_application_error(-20001, lv_err_msg);
END IF;
END upload_data;
END XXPO_COSTFACTS_WEBADI_PKG; -
How to generate an excel spreadsheet from an Oracle Application forms runni
I need URGENT generate an Excel spreadsheet with rows and columns populated from a forms that is running on Oracle Application R11.5 and open this worksheet for the User save.
I want to include a PL*SQL code on a button and this button to run the spreadsheet open save for the User.
Sorry my poor English, thanks for the comprehension909356 wrote:
I need URGENT generate an Excel spreadsheet with rows and columns populated from a forms that is running on Oracle Application R11.5 and open this worksheet for the User save.
I want to include a PL*SQL code on a button and this button to run the spreadsheet open save for the User. This functionality is already available in the application (File > Export) and you do not need to write a code to do that.
How To Export Form Data To a CSV Format File [ID 779079.1]
How To Setup Action Export Functionality in Release 11i [ID 136074.1]
Thanks,
Hussein -
I'm about to explode, trying to figure out why this problem is happening. I have two users who are opening
an Excel file from the same location, and they're doing their own modifications/saves. When one user opens the document and prints, the Print Preview shows 12 pages, and there are no problems. When the other user opens the same file and prints, there are 18
pages.
Throughout those 18 pages, there are several blank pages interspersed with populated ones, and there are also
a couple of pages with one line or so, from the end of a previous page. If I go to View>>Page Break Preview, this extended document shows little slivers of extra pages. The top of those little "pages" are dashed, and the bottom line is the
solid page-break, for the next page.
Why would this be happening to one user, but not the other? They're both opening the exact same page/template.
Oh, and as a side note, I'm also getting 18 pages with blanks/single-lines, when I open the file. Is there an advanced setting that the 12-page user has checked in Excel that I'm missing? Am I providing enough information?
Any help is massively appreciated.
- ThanksIt's probably caused by a difference in printers. Excel uses the printer settings to place page breaks
Some printers, e.g. inkjet printers, have a smaller printable area than others, e.g. laser printers. As a result, less information will fit on a page.
The worksheet apparently also has manually set page breaks.
Let's take a simple example: the used area of the worksheet has 94 used rows, and a manual page break has been set below row 47. I'll assume that the used area is rather narrow.
On printer A, 48 rows fit on a page. So the first 47 rows will be printed on page 1, and the next 47 rows on page 2.
On printer B, only 46 rows fit on a page because it has a smaller printable area. So the first 46 rows will be printed on page 1, the 47th row on page 2 (not more, because there is a manual page break below row 47). The next 46 rows will be printed on page
3, and the 94th and last row on page 4.
Regards, Hans Vogelaar (http://www.eileenslounge.com)
Maybe you are looking for
-
Encyption of credit card in Sales Order
Hi, Scenario : Customers are ordering against Credit card on the web .Once the customers orders on web it gets cerated in CRM and subsequnly replicated in R/3. Issue:after getting reautorisation from clearing house ,we deleted credit card informatio
-
Navigation control only with my custom buttons
I'm using Captivate 4 and I'd like to create an eLearning course that navigation control goes only through the cutom buttons I create. No auto continue to the next slide, etc. I've deleted the full screen invisible button with continue on it, and I d
-
When I reboot the system, the monitor comes up blank. I have tried the tips on the Apple site, and the one that works is to shutdown the computer, unplug the monitor from the device and the power. Let it sit a few hours. Plug it back in and start it
-
[J2EE Deployment SPI:260003]Feature not available when in disconnected mode
hi am am having this error when trying to deploy my application in portal [04:40:27 PM] #### Deployment incomplete. #### [04:40:27 PM] [J2EE Deployment SPI:260003]Feature not available when in disconnected mode. #### Cannot run application HR-Porta
-
Updating price conditions using CRM_ORDER_MAINTAIN
Hello everyone! Could anyone help me out with respect to price updation using "CRM_ORDER_MAINTAIN"? I am supposed to do the following: I obtain the current unit price for a sales order item using "CRM_ORDER_READ". The feild et_pridoc-pric_cond-kbetr