Adding to the report
How do you add a popup to TS4 that asks the operator for his clock number ( must store it?) then prints it out ( in the report) at the end of the Test seq?? You'd want to ask for the clock # 1x until the operator logs out. I'm thinking just before the call to ask for the serial number in Test UUTs.
Thanks,
Clint
Clint Eastwood wrote:
[...]The clock num is stored in step.result.response.[...]
Clint,
this is no good. Since you are not in a running execution, keeping the value "clock num" in a runstateproperty is worthless. The most simple thing is storing it into a StationGlobal i guess.
But please note that you should document this in order to know in several years why there is such a StationGlobal and how it is written....
hope this helps,
Norbert
CEO: What exactly is stopping us from doing this?
Expert: Geometry
Marketing Manager: Just ignore it.
Similar Messages
-
Custom aggregate "Apply to Open Report" does not add the item to the report
When I create a custom aggegate and click on "apply to open report", the custom aggregate does not get added to the report. The custom aggregate exists in the selector list and I can add it to the report using the selector. Why does the "apply to open report" not work and any ideas how to debug the problem?
the dversion is:
6.3.4.0.0 , Build: 71121
Thanks, CarlaHi Carla,
Sorry to ask such a basic question, but are talking about Oracle Sales Analyzer?
Thanks,
Stuart Bunby
OLAP Blog: http://oracleOLAP.blogspot.com
OLAP Wiki: http://wiki.oracle.com/page/Oracle+OLAP+Option
OLAP on OTN: http://www.oracle.com/technology/products/bi/olap/index.html
DW on OTN : http://www.oracle.com/technology/products/bi/db/11g/index.html -
hey guys..
I'm trying to get the report that I need to be filtered by a parameter value (named Param1)
I created a parameter in the data tab and tried to pass a value from my Web application to the report services.. now my report have that textbox that prompts me to enter the filtering value for the report I want.. everything works fine till this point..
now I have another webpage that has a report viewer and a textbox for the user input the value they want.. and pass it to the report.. and I'm using the following code to pass the value to the report I made earlier..
Dim par(0) As Microsoft.Reporting.WebForms.ReportParameter
par(0) = New Microsoft.Reporting.WebForms.ReportParameter("paramSiteCode", TextBox1.Text.ToString)
ReportViewer1.ServerReport.SetParameters(par)
ReportViewer1.ServerReport.Refresh()
however.. now I'm getting an error.. "The report parameter 'paramSiteCode' is read-only and cannot be modified. (rsReadOnlyReportParameter)"
what am I missing here? I've been thru the help and forums.. and the code should work.. or so I hope it would.. thanks in advance..Details
Product:
sql server reporting services
ID:
rsreadonlyreportparameter
Source:
microsoft.reportingservices.diagnostics.utilities.errorstrings.resources.strings
Version:
8.00
Message:
The report parameter '{0}' is read-only and cannot be modified.
Explanation
This error occurs when you attempt to set a value for a parameter that is read-only. A parameter is read-only when the
Prompt property for the parameter is set to false.
User Action
To set a value for a parameter, the Prompt property for the parameter must be set to
true. You can set this property in two ways:
Before publishing the report, provide a prompt string for the parameter. In Report Designer, you can provide a prompt by typing a prompt string in the
Prompt text box in the Report Parameters dialog box.
After publishing the report, set the Prompt User property for the parameter. In Report Manager, in report properties, click the
Parameters tab, and then select Prompt User for the parameter.
For more information about report parameters in Report Designer and Report Manager, see Books Online.
In the release version of SQL Server 2000 Reporting Services, when Prompt is
true and Prompt String is blank, the parameter is still available to the user in the report viewer. In SP1, when
Prompt is true and Prompt String is blank, the parameter is hidden from the user.
Note: Publishing a report over an existing report on the report server does not overwrite the parameter information. To update parameters for an existing report, either delete the report on the report server and republish, or update the parameter information
for the report in Report Manager.
I struggled with the same problem in VS 2010.
After a long series of hoops to jump through, I modified the rdlc file by hand and added <Prompt>true</prompt>. This parameter cannot be set through the GUI - go figure.
In my case, I was attempting to generate a sub report, and pass a parameter to the sub report.
To get this to work, the sub report needed these two sections.
<ReportParameters>
<ReportParameter Name="Network_Id">
<DataType>String</DataType>
<Prompt>true</Prompt>
</ReportParameter>
</ReportParameters>
<Variables>
<Variable Name="Network_ID">
<Value />
</Variable>
</Variables>
I was then able to use the name "Network_Id" in the sub-report properties of the "sub report control" for the name of a parameter on the parameters tab. I then set it to the key value that I need in the subreport properties dialog.
Prior to setting prompt to true, I kept getting the read-only exception.
I'm not sure if I am being clear about this, but sub reports do work, and prompt can be manually added to the report definition file. -
Not Able to Generate Out of the Report by adding the new 2 fields
Hi,
I'm Very new to ABAP. I have created one report. after 2 new fields added they are EKNAM and EKGRP.
The Thing is the remaining fields are displaying in the output. The Newly added fields are not displaying the out. I was able to add this 2 fields in the head of the report. But issue is not able to get the data on these 2 fields.
Please see the below program and any one please help me out to display the data in this report for the fields eknam and ekgrp.
TABLES: eban,
lfa1,
ekko,
t024,
v_username.
DATA: BEGIN OF i_req_items OCCURS 10,
ernam LIKE eban-ernam, "Created by
lifnr LIKE eban-lifnr, "Desired vendor
ebeln LIKE eban-ebeln, "PO Number
ebelp LIKE eban-ebelp, "PO Item
eknam LIKE t024-eknam, "Pur.Grp Name
ekgrp LIKE t024-ekgrp, "Pur.Grp Number
flief LIKE eban-flief, "Fixed vendor
name1 LIKE lfa1-name1, "Vendor name
badat LIKE eban-badat, "Creation date
erdat LIKE eban-erdat, "Change date
banfn LIKE eban-banfn, "Requisition no.
bnfpo LIKE eban-bnfpo, "Req. item no.
bsart LIKE eban-bsart, "Document type
knttp LIKE eban-knttp, "Acct.assgmt category
txz01 LIKE eban-txz01, "PO item description
menge LIKE eban-menge, "Quantity
preis LIKE eban-preis, "Price
peinh LIKE eban-peinh, "Price unit
value(14) TYPE p DECIMALS 2, "Item Value
END OF i_req_items.
DATA: BEGIN OF i_reqs OCCURS 10,
ernam LIKE eban-ernam, "Created by
persn LIKE usr21-persnumber, "Person number
uname LIKE adrp-name_text, "User name
lifnr LIKE eban-lifnr, "Vendor
name1 LIKE lfa1-name1, "Vendor name
badat LIKE eban-badat, "Creation date
banfn LIKE eban-banfn, "Requisition no.
bnfpo LIKE eban-bnfpo, "Req. item no.
bsart LIKE eban-bsart, "Document type
knttp LIKE eban-knttp, "Acct.assgmt category
txz01 LIKE eban-txz01, "PO item description
eknam like t024-eknam, "Purchase Grp Name
ekgrp like t024-ekgrp, "Purchase Grp Number
value(14) TYPE p DECIMALS 2, "Item Value
END OF i_reqs.
DATA: BEGIN OF i_req_keys OCCURS 0,
ernam LIKE eban-ernam, "Created by
lifnr LIKE eban-lifnr, "Desired vendor
erdat LIKE eban-erdat, "Create or Change date
banfn LIKE eban-banfn, "Requisition no.
bnfpo LIKE eban-bnfpo, "Req. item no.
eknam like t024-eknam, "Purchase Grp Name
ekgrp like t024-ekgrp, "Purchase Grp number
END OF i_req_keys.
DATA: BEGIN OF i_req_keeper OCCURS 0,
ernam LIKE eban-ernam, "Created by
lifnr LIKE eban-lifnr, "Desired vendor
banfn LIKE eban-banfn, "Requisition no
END OF i_req_keeper.
DATA: wa_reqitems LIKE i_req_items.
DATA: BEGIN OF i_export OCCURS 10,
record(150) TYPE c,
END OF i_export.
CONSTANTS
CONSTANTS:
c_doccat LIKE eban-bstyp VALUE 'B',
c_creind LIKE eban-estkz VALUE 'R',
c_delflag LIKE eban-loekz VALUE 'L',
c_write(5) TYPE c VALUE 'WRITE',
c_slash(1) TYPE c VALUE '/',
*start ESPZC U8DK900439
c_delimiter TYPE x VALUE '09',
c_delimiter TYPE c VALUE cl_abap_char_utilities=>horizontal_tab,
*end ESPZC U8DK900439
c_sc(1) TYPE c VALUE ';',
c_x(1) TYPE c VALUE 'X',
c_usd(1) TYPE c VALUE '2',
c_export LIKE authb-filename VALUE '/BAY2/UBEM_SPLIT_REQS'.
WORKING VARIABLES
DATA: w_report_id LIKE syst-repid,
w_sttime LIKE syst-uzeit,
w_rpt_pagno LIKE syst-pagno,
w_rc LIKE sy-subrc,
w_datelow LIKE eban-badat,
w_datehigh LIKE eban-badat,
w_export LIKE c_export,
w_records TYPE i,
w_message(50) TYPE c.
TYPES number TYPE i.
SELECTION SCREEN / PARAMETERS
SELECTION-SCREEN BEGIN OF BLOCK org WITH FRAME TITLE text-001.
PARAMETERS: p_purorg LIKE eban-ekorg OBLIGATORY DEFAULT 'US02'.
SELECT-OPTIONS: s_doctyp FOR eban-bsart,
s_date FOR eban-badat.
PARAMETERS: p_timper(2) TYPE n.
SELECTION-SCREEN: COMMENT 37(37) text-002.
SELECTION-SCREEN END OF BLOCK org.
SELECTION-SCREEN BEGIN OF BLOCK outp WITH FRAME TITLE text-003.
PARAMETERS: p_onlin RADIOBUTTON GROUP outp DEFAULT 'X',
p_servr RADIOBUTTON GROUP outp.
SELECTION-SCREEN END OF BLOCK outp.
AT SELECTION SCREEN
AT SELECTION-SCREEN.
IF p_servr = c_x.
CLEAR w_rc.
PERFORM authority_check_dataset USING w_export
CHANGING w_rc.
IF w_rc <> 0.
MESSAGE e532 WITH text-006 w_export.
ENDIF.
CLEAR w_rc.
PERFORM verify_unix_path_and_file CHANGING w_rc.
IF w_rc <> 0.
MESSAGE e531 WITH w_message.
ENDIF.
ENDIF.
INITIALIZATION EVENT
INITIALIZATION.
PERFORM get_filename.
MOVE syst-uzeit TO w_sttime.
MOVE syst-repid TO w_report_id.
CLEAR: w_rpt_pagno.
START-OF-SELECTION.
PERFORM get_data.
IF p_onlin = c_x.
IF w_records GT 0.
PERFORM print_report_header.
PERFORM write_report.
ELSE.
MESSAGE i531 WITH text-007.
ENDIF.
ELSEIF p_servr = c_x.
PERFORM write_export.
ENDIF.
END-OF-SELECTION.
---- F O R M R O U T I N E S -
*& FORM get_filename
FORM get_filename.
CALL FUNCTION 'FILE_GET_NAME'
EXPORTING
logical_filename = c_export
IMPORTING
file_name = w_export
EXCEPTIONS
file_not_found = 1
OTHERS = 2.
IF sy-subrc <> 0.
ENDIF.
ENDFORM. " get_filename
FORM authority_check_dataset
FORM authority_check_dataset USING p_filename
CHANGING p_rc.
CALL FUNCTION 'AUTHORITY_CHECK_DATASET'
EXPORTING
activity = c_write
filename = p_filename
EXCEPTIONS
no_authority = 1
activity_unknown = 2
OTHERS = 3.
p_rc = sy-subrc.
ENDFORM. "authority_check_dataset
FORM verify_unix_path_and_file
FORM verify_unix_path_and_file CHANGING p_rc.
*start ESPZC U8DK900439
OPEN DATASET w_export FOR OUTPUT IN TEXT MODE
MESSAGE w_message.
OPEN DATASET w_export FOR OUTPUT IN TEXT MODE ENCODING DEFAULT
MESSAGE w_message.
*end ESPZC U8DK900439
p_rc = sy-subrc.
ENDFORM. "verify_unix_path_and_file
FORM get_data
FORM get_data.
CLEAR w_datelow.
CLEAR w_datehigh.
w_datelow = s_date-low - p_timper.
w_datehigh = s_date-high + p_timper.
w_datehigh = s_date-high.
SELECT ernam lifnr ebeln ebelp flief badat erdat banfn bnfpo bsart
knttp menge preis peinh txz01
FROM eban
INTO CORRESPONDING FIELDS OF TABLE i_req_items
WHERE bstyp = c_doccat
AND estkz = c_creind
AND knttp <> space
AND bsart IN s_doctyp
AND loekz <> c_delflag
AND ekorg EQ p_purorg
AND ( ( badat BETWEEN w_datelow and w_datehigh ) OR
( erdat BETWEEN w_datelow AND w_datehigh ) ).
AND erdat BETWEEN w_datelow AND w_datehigh.
IF sy-subrc = 0.
LOOP AT i_req_items.
IF i_req_items-lifnr IS INITIAL.
IF NOT i_req_items-flief IS INITIAL.
MOVE i_req_items-flief TO i_req_items-lifnr.
MODIFY i_req_items.
ENDIF.
IF NOT i_req_items-ebeln IS INITIAL.
SELECT lifnr FROM ekko
INTO i_req_items-lifnr
WHERE ebeln = i_req_items-ebeln.
ENDSELECT.
MODIFY i_req_items.
ENDIF.
ENDIF.
IF i_req_items-erdat GT i_req_items-badat.
MOVE i_req_items-erdat TO i_req_items-badat.
MODIFY i_req_items.
ENDIF.
ENDLOOP.
PERFORM weed_out_unique_records.
PERFORM apply_time_period.
SORT i_req_items BY ernam lifnr banfn bnfpo.
LOOP AT i_req_items.
i_req_items-value = ( i_req_items-menge *
( i_req_items-preis / i_req_items-peinh ) ).
MODIFY i_req_items.
ENDLOOP.
Getting vendor name from table LFA1 -
CLEAR i_req_items.
LOOP AT i_req_items.
SELECT SINGLE name1 FROM lfa1
INTO i_req_items-name1
WHERE lifnr = i_req_items-lifnr.
MODIFY i_req_items.
ENDLOOP.
LOOP AT i_req_items.
MOVE-CORRESPONDING i_req_items TO i_reqs.
Getting user name from view v_username -
SELECT SINGLE name_text
FROM v_username INTO i_reqs-uname
WHERE bname = i_reqs-ernam.
APPEND i_reqs.
ENDLOOP.
ENDIF.
DESCRIBE TABLE i_reqs LINES w_records.
ENDFORM. "Get_data
FORM print_report_header
FORM print_report_header.
ADD 1 TO w_rpt_pagno.
CALL FUNCTION '/BAY2/UBEXBH_BAYER_HEADR_FUN'
EXPORTING
f_jobname = text-020
f_business_group = text-021
f_report_title = text-022
f_repid = w_report_id
f_sysid = syst-sysid
f_linsz = syst-linsz
f_pagno = w_rpt_pagno
f_mandt = syst-mandt
f_datum = syst-datum
f_uzeit = w_sttime.
FORMAT COLOR COL_HEADING.
WRITE: /1 text-010, "Created by CWID & user name
29 text-011, "Vendor #
38 text-012, "Vendor Name
69 text-013, "Req Number
79 text-014, "/Item
87 text-015, "Created On
98 text-017, "A (AcctAssgmtCat)
100(14) text-019 RIGHT-JUSTIFIED, "Item Value
116(30) text-018, "Item Description
148 text-030, "Pur.Grp Name
170 text-031. "Pur.Grp Number
FORMAT COLOR OFF.
ULINE.
ENDFORM. "print_report_header
*& Form WRITE_REPORT
FORM write_report.
LOOP AT i_reqs.
WRITE: /1 i_reqs-ernam,
9(18) i_reqs-uname,
29 i_reqs-lifnr,
38(30) i_reqs-name1,
69 i_reqs-banfn,
79 c_slash,
80 i_reqs-bnfpo,
87 i_reqs-badat,
98 i_reqs-knttp,
100(14) i_reqs-value CURRENCY c_usd,
116(30) i_reqs-txz01,
145 i_reqs-eknam,
160 i_reqs-ekgrp.
ENDLOOP.
ENDFORM. "write_report
*& Form WRITE_EXPORT
FORM write_export.
DATA: l_value(14) TYPE c,
l_bsart(100) TYPE c,
l_uname(7) TYPE c,
l_records(5) TYPE c,
l_header(150) TYPE c,
l_params(150) TYPE c,
i_char TYPE i.
LOOP AT i_reqs.
CLEAR l_value.
CLEAR l_uname.
l_value = i_reqs-value.
l_uname = sy-uname.
CONCATENATE: i_reqs-uname
i_reqs-ernam
i_reqs-lifnr
i_reqs-name1
i_reqs-banfn
i_reqs-bnfpo
i_reqs-badat
i_reqs-knttp
l_value
i_reqs-txz01 INTO i_export
SEPARATED BY c_delimiter.
APPEND i_export.
ENDLOOP.
CONCATENATE: text-008 "Created By Name
text-009 "CWID
text-011 "Vendor No
text-012 "Vendor Name
text-013 "Req Number
text-023 "Item
text-015 "Created On
text-017 "A
text-019 "Item Value
text-018 "Item Description
text-030 "Purchase Grp name
text-031 "Purchase Grp number
INTO l_header SEPARATED BY c_delimiter.
INSERT l_header INTO i_export INDEX 1.
IF sy-batch IS INITIAL.
MOVE sy-uname TO l_uname.
ELSE.
MOVE text-024 TO l_uname.
ENDIF.
PERFORM collect_bsart CHANGING l_bsart
i_char.
l_records = w_records.
CONCATENATE: sy-sysid
p_purorg
l_bsart(i_char)
s_date-low
s_date-high
p_timper
l_uname
sy-datum
l_records INTO l_params
SEPARATED BY c_delimiter.
INSERT l_params INTO i_export INDEX 1.
LOOP AT i_export.
CONDENSE i_export NO-GAPS.
TRANSFER i_export TO w_export.
ENDLOOP.
CLOSE DATASET w_export.
MESSAGE s533 WITH text-028 w_export text-029.
ENDFORM. "write_export
*& FORM collect_bsart
FORM collect_bsart CHANGING p_bsart
p_char.
CLEAR p_bsart.
LOOP AT s_doctyp.
IF sy-tabix = 1.
p_bsart = s_doctyp-low.
ELSE.
CONCATENATE: p_bsart c_sc s_doctyp-low INTO p_bsart.
ENDIF.
ENDLOOP.
CONDENSE p_bsart NO-GAPS.
p_char = strlen( p_bsart ).
ENDFORM. "collect_bsart
*& Form WEED_OUT_UNIQUE_RECORDS
FORM weed_out_unique_records.
DATA: i_l_req_items LIKE i_req_items OCCURS 0 WITH HEADER LINE.
DATA: i_l_req_final_items LIKE i_req_items OCCURS 0 WITH HEADER LINE.
DATA: l_count TYPE i,
l_sy_tabix LIKE sy-tabix,
l_banfn LIKE eban-banfn.
REFRESH i_l_req_items.
REFRESH i_l_req_final_items.
CLEAR l_banfn.
i_l_req_items[] = i_req_items[].
i_l_req_final_items[] = i_req_items[].
SORT i_req_items BY ernam lifnr.
SORT i_l_req_items BY ernam lifnr.
SORT i_l_req_final_items BY ernam lifnr.
LOOP AT i_l_req_items.
l_banfn = i_l_req_items-banfn.
CLEAR l_count.
LOOP AT i_req_items
WHERE ernam = i_l_req_items-ernam
AND lifnr = i_l_req_items-lifnr.
IF i_req_items-banfn <> l_banfn.
ADD +1 TO l_count.
ENDIF.
ENDLOOP.
IF NOT ( l_count > 0 ).
LOOP AT i_l_req_final_items
WHERE ernam = i_l_req_items-ernam
AND lifnr = i_l_req_items-lifnr.
DELETE i_l_req_final_items.
ENDLOOP.
ENDIF.
ENDLOOP.
REFRESH i_req_items.
i_req_items[] = i_l_req_final_items[].
ENDFORM. " WEED_OUT_UNIQUE_RECORDS
*& Form APPLY_TIME_PERIOD
FORM apply_time_period.
DATA: l_i_req_keys LIKE i_req_keys.
DATA: l_days_diff TYPE p,
l_no_of_key_recs TYPE i,
l_next_item LIKE sy-tabix,
l_finished_with_keys TYPE c VALUE 'N',
l_add_line TYPE c VALUE 'N',
l_count TYPE i,
l_req_ernam LIKE eban-ernam,
l_req_lifnr LIKE lfa1-lifnr,
l_req_banfn LIKE eban-banfn,
l_save_tabix like sy-tabix.
REFRESH: i_req_keys, i_req_keeper.
LOOP AT i_req_items.
MOVE-CORRESPONDING i_req_items TO
i_req_keys.
IF i_req_items-erdat IS INITIAL.
i_req_keys-erdat = i_req_items-badat.
ENDIF.
APPEND i_req_keys.
ENDLOOP.
SORT i_req_keys BY ernam lifnr erdat.
CLEAR l_no_of_key_recs.
DESCRIBE TABLE i_req_keys LINES l_no_of_key_recs.
LOOP AT i_req_keys.
IF l_add_line = 'Y'.
MOVE-CORRESPONDING i_req_keys
TO i_req_keeper.
APPEND i_req_keeper.
l_add_line = 'N'.
ENDIF.
IF l_finished_with_keys = 'Y'.
EXIT.
ENDIF.
CLEAR l_next_item.
l_save_tabix = sy-tabix.
COMPUTE l_next_item = sy-tabix + 1.
IF l_next_item = l_no_of_key_recs.
l_finished_with_keys = 'Y'.
ENDIF.
clear: l_i_req_keys.
READ TABLE i_req_keys INDEX l_next_item
INTO l_i_req_keys.
sy-tabix = l_save_tabix.
CLEAR l_days_diff.
l_days_diff = l_i_req_keys-erdat -
i_req_keys-erdat.
IF l_i_req_keys-ernam =
i_req_keys-ernam AND
l_i_req_keys-lifnr =
i_req_keys-lifnr AND
l_i_req_keys-banfn <>
i_req_keys-banfn AND
l_days_diff <= p_timper.
MOVE-CORRESPONDING i_req_keys
TO i_req_keeper.
APPEND i_req_keeper.
l_add_line = 'Y'.
ENDIF.
ENDLOOP.
DELETE ADJACENT DUPLICATES FROM i_req_keeper
COMPARING ALL FIELDS.
SORT i_req_keeper BY ernam lifnr banfn.
LOOP AT i_req_items.
CLEAR l_count.
CLEAR: l_req_ernam,
l_req_lifnr,
l_req_banfn.
l_req_ernam = i_req_items-ernam.
l_req_lifnr = i_req_items-lifnr.
l_req_banfn = i_req_items-banfn.
LOOP AT i_req_keeper
WHERE ernam = i_req_items-ernam
AND lifnr = i_req_items-lifnr
AND banfn = i_req_items-banfn.
ADD +1 TO l_count.
ENDLOOP.
IF NOT ( l_count > 0 ).
LOOP AT i_req_items
WHERE ernam = l_req_ernam
AND lifnr = l_req_lifnr
AND banfn = l_req_banfn.
DELETE i_req_items.
ENDLOOP.
ENDIF.
ENDLOOP.
ENDFORM. " APPLY_TIME_PERIODRajesh,
Put a breakpoint and try to debug the report step by step.
You will findout the reason very easily.
Whenever you have a select and are trying to append into an internal table, keep checking your internal table if it is been populated with the correct records.
This way, you will findout the cause and can correct is accordingly.
Thanks,
Suresh Ganti -
Adding new row to the reports list page
How can I add a new report row in the reports list of the reports tab.
Ex: a new row to the report "users by Date of Join report" is to be added
How can we add Please help me out in thisI am facing the same problem!
camickr wrote:
Try adding an empty row containing a null value for the String instead of the empty String.camickr, it will not help, the DefaultRowSorter in the "*+compare(int model1, int model2)+*" method return -1 if the first value is null and 1 if the sacond value is null. and incase of DESCENDING it mult by -1.
// Treat nulls as < then non-null
if (v1 == null) {
if (v2 == null) {
result = 0;
} else {
result = -1;
} else if (v2 == null) {
result = 1;
} else {
result = sortComparators[counter].compare(v1, v2);
if (sortOrder == SortOrder.DESCENDING) {
result *= -1;
}And this is the real problem!
The empty line is sorted as the smallest value and incase of DESCENDING it will be the first line (because of the mult by -1).
We could have overide it and incase of the empty row(usualy the last row) do not mult by -1 in DESCENDING mode.
But the problem is that the "+*compare*+" method and it's caller "*+Row+*" inner class are private :-(
It is not wise to do it but we can do like kmp83 wrote:
kmp83 wrote:
copy/duplicate "private" code from DefaultRowSorter into my extended class.Anyone have another suggestion? -
Adding Dynamic remarks to the report by user
Any idea's of adding text to queries? Our customer is using Crystal Reports based on Baan DWH. On of the functions is adding textblocks to the report and put in remarks / comments.
This will be <u>replaced</u> by BW. Is it possible to add (dynamic) <b>textblocks</b> to the BW reporting which can be filled in by the <b>end-user</b>? Any advice will be great!Yes it is.
In BW, this can be achieved by using document management. The option will be available to the user via context menu in the report (goto-->documents - text/pdf/img etc). In your case user can choose to create/change/display a 'text' document, which will be attached to the report.
cheers, -
I added a dataset to an existing report and broke an aggregation. In the old (i.e. single dataset) report, this expression below worked fine. I wanted to get a distinct count of the vst_ext_id field when my educated field was like "VTE1*"
= CountDistinct(IIF(Fields!educated.Value like "VTE1*", Fields!vst_ext_id.Value, Nothing))
After adding a new dataset, this no longer works and I get the error " A scope is required for all aggregates used outside of a data region unless the report contains exactly one dataset". Having done some research online, I found that I
needed to specify my dataset explicitly and I thought this new expression might work, but still no success...
= CountDistinct(IIF(Fields!educated.Value,"DataSet1" like "VTE12*", Fields!vst_ext_id.Value,"DataSet1", Nothing))
Am I missing something? Based on online responses, this explicit dataset naming convention seems to help most people, but it isn't working for me.
Thanks in advance!
BrianI found the answer. Apparently, my expression syntax was off. This expression does the trick...
= CountDistinct(IIF(Fields!educated.Value like "VTE12*", Fields!vst_ext_id.Value,Nothing),"DataSet1")
I just happened upon this particular syntax searching online. I was trying to specify the dataset name after each .value, but I never got that to work. This is the only time I have found this particular syntax online. -
MSS - Adding a Standard report to the reporting section
Hi All,
I want to add Birthday list report to the reporting section in MSS.
Right now I have ee due to retire report, I want to deactivate this report and add standard Report " Birthday List".
Please guide.
Checked PPMDT, there is no brthday list report. How to add this to the set of reports.?
Regards,
Swati Sahuthe birthday list query had inconsistencies , resolved the inconsistencies and then could see the report in the MSS. For removing a report goto
Personnel management > HRIS > HIS > Define task Functions.
Remove the report entry which is not required. At the same place new reports can be added.
Swati -
Adding a push button on the report toolbar
adding a save button on the report toolbar, so that after clicking the button, the data fetched on the report will be stored in the application server.
Hi
to automate this process ,best way is to create a Z rport and there u can submit this sap standard report and get its output into an Internal table and then u can write this internal table to application server via following demo code -
this is code for both (download /upload),u can not use CG3y and CG3z as u want to do it as a background job ..
*& Report ZGILL_AS *
REPORT ZGILL_AS message-id rp .
tables: pa0001,pa0002.
select-options s_pernr for pa0001-pernr no intervals MODIF ID XYZ.
parameters: p_dwnld AS CHECKBOX ,
p_upld AS CHECKBOX DEFAULT 'X'.
parameters: P_DSNI(75) TYPE C MODIF ID ABG DEFAULT
'/usr/local/sapdata/amit.dat' LOWER CASE.
data: begin of itab occurs 0,
pernr(8),
sp1(1) value ',',
werks(4),
sp2(1) value ',',
persg(1),
sp3(1) value ',',
persk(2),
end of itab.
data: s_eof(3).
start-of-selection.
if p_upld = 'X'.
OPEN DATASET P_DSNI FOR OUTPUT IN LEGACY TEXT MODE.
PERFORM FETCH_DATA.
STOP.
elseif p_dwnld = 'X'.
OPEN DATASET P_DSNI FOR INPUT IN LEGACY TEXT MODE.
IF SY-SUBRC NE 0.
MESSAGE E016 WITH
'Error opening seq. file, RC:' SY-SUBRC.
EXIT.
ENDIF.
CLEAR S_EOF.
DO.
PERFORM FETCH_file.
IF S_EOF EQ 'YES'. stop. ENDIF.
ENDDO.
endif.
END-OF-SELECTION.
if itab[] is not initial.
perform print_file1 tables itab.
else.
write:/ 'No records exists'.
endif.
*& Form FETCH_DATA
text
--> p1 text
<-- p2 text
FORM FETCH_DATA .
SELECT * FROM PA0001 WHERE PERNR IN S_PERNR.
MOVE-CORRESPONDING PA0001 TO ITAB.
TRANSFER ITAB TO P_DSNI.
APPEND ITAB.
ENDSELECT.
CLOSE DATASET P_DSNI.
ENDFORM. " FETCH_DATA
*& Form FETCH_file
text
--> p1 text
<-- p2 text
FORM FETCH_file .
READ DATASET P_DSNI INTO itab.
append itab.
clear itab.
IF SY-SUBRC NE 0.
S_EOF = 'YES'. EXIT.
ENDIF.
ENDFORM. " FETCH_file
*& Form print_file1
text
-->P_ITAB text
FORM print_file1 tables P_ITAB structure itab .
write:/2 'EmpNo',
14 'Personnel Area',
34 'Emp Group',
47 'Emp SubGroup'.
skip 1.
loop at p_itab.
write:2 p_itab-pernr,
14 p_itab-werks,
34 p_itab-persg,
47 p_itab-persk.
skip 1.
endloop.
ENDFORM. " print_file1
<b>Reward if usefull</b> -
Added new key figure in the report
Experts,
I have added new key figure in the report .If i display this key figure value in the report it is populating correct value with ERROR(example 22.5 ERROR).The report is on the multiprovider .i have check the value for this in multiprovider it is populating correctly .There is no calculation in the report for this .While extracting in to report i am getting this. Help me to resolve this issue.
Thanks
MuraliHi,
I have already created a formula like NODIM(Key field).that only i am using .
and mapping I did in this way. I went to multiprovider and I have selected this key figure and right click and select (assign) then I have click on create proposal for all infoobjects option.
Please suggest any thing need to do.
I am sorry .I did not understand the lonterm solution suggested by you .what is UOM .Please tell me how to map.can you pls tell me clearly please
Thanks
Murali -
Adding the G/L description field in the report FAGLL03
Dear all
I would like to add the G/L description field in the report FAGLL03. Can you tell me how this can be done.
Many thanks
PGHi Peter,
You can do the changes as per Moeze suggestion.
What we have did is that we have writeen a exit in substitution rule for the offsetting G/L code (assumptioning that you want the description for offsetting g/l code).
We have added the offsetting g/l code in special feild and accordingly the system displays the corresponding description of the offsetting g/l code.
Try it,it will work.
If not do revert for the needful.
Take Crae
Regards, -
Column Headings in the report and adding an extra field to the report
Hi All.
I had an issue like i need to put column headings for a report and I want to add an extra field to the report.
The problem here is that the report was actually cloned from a Query.At the time of cloning,they forgot to add the column headings.
Now we need to add the column headings for the same.How can we proceed for this and where we need to add our code?
How to add an extra field to the existing report?
Any pointers will be very much helpful.
Regards,
SSR.Hi,
you can get this done in 2 ways:
1 - Change the query to add another column and the re-generate the report
2 - If changing query is not possible, you can change the report it self for adding extra field. If you look at the code, it will be more like normal ABAP code. you can easily modify it (If you are ABAPer) for your additional requirements.
thnx,
ags.
Edited by: Agasti Kale on Jun 12, 2008 6:26 PM -
Adding a column in the Universe level without losing the Report Lay out
Hi all,
I have one universe with three universes built on it. Now, I want to add a column to one of the tables in the universe. For that, I selected the table and gave 'Refresh the structure'. The column got added in the workspace of the universe. When I drag and drop the table to the class & objects panel, it got added to the class/table in the panel. I saved and exported the universe.
When I do like above, and open the report in the BO XI R3.1 webi front end, the report throws the following error:
'Universe contains unresolved objects' and the report lay out is lost. All the three reports built on this universe is throwing the same error.
Please let me know if there is any other way to retain the report lay out and add the column in the universe level.
Thanks in advance
- Regards,
ArunWelcome to the sometimes frustrating world of working with dates against SAP BW via BusinessObjects!
Your best bet here is to have a financial calendar table in a database and build a new query against that. Return Week Number as a detail of date and then merge the date dimensions. -
Adding a stored Procedure to the Report
Hi,
I am developing a report using crystal plugin in eclipse.I have problems in adding a stored procedure to the report .I write the following command in SQL SCRAPBOOK dbo.StoredProcedure @Param1="param1",@Param2="param2",@Param3="None" and run it. It runs successfully ,but when i try to add it to report nothing is being added to it.
I am using a Sybase database and driver(com.sybase.jdbc3.jdbc.SybXADataSource)
Any suggestions regarding this would be of great help.
Thanks in advance
Siva
Edited by: Siva_velicheti on Jun 1, 2010 12:10 PMHmm, not sure about stored procedures, but you can get SQL queries to work like below....
@method to get ResultSet from SQL query with user, pwd, and dbConnectionInfo
@param query, scrollType, user, password, dbName, db
@throws SQLException
@throws ClassNotFoundException
private static ResultSet getResultSetQueryDBInfo(String query, int scrollType, String user, String password, String dbName, String db)
throws SQLException, ClassNotFoundException
String DBUSERNAME = user;
final String DBPASSWORD = password;
final String CONNECTION_URL = "jdbc:oracle:thin:@" + dbName + ":1521:" + db;
Connection connection = DriverManager.getConnection(CONNECTION_URL, DBUSERNAME, DBPASSWORD);
DatabaseMetaData meta = connection.getMetaData();
System.out.println("getResultSetQueryDBInfo - Connected to URL : " + meta.getURL());
System.out.printf("getResultSetQueryDBInfo - as user: %s\n", meta.getUserName() );
Statement statement = connection.createStatement(scrollType, ResultSet.CONCUR_READ_ONLY);
System.out.println("getResultSetQueryDBInfo method - executing query: \n");
return statement.executeQuery(query); -
Need some direction, please.
We are moving off SSRS 2005 to a new server with SSRS 2008R2. The old installation (2005) a DNS entry was created "reports" with the ip address and port number simple. In the Configuration manager the Report Manager Virtual Directory
is "Reports". Website is Default web site. Typing "reports" into the address bar opens up report manager. When this is done the address shows as reports/reports/pages/folder etc.
The new installation is configured the same(?). DNS entry "reports2" with new ip address and port number. In the Configuration manager the Report manager URL virtual directory is "Reports" URLs: =
http://servername:port/Reports. The issue is when typing "Reports2" into the address bar the report manager won't open unless "reports" is added to the dns name i.e. http://reports2/reports
is entered.
This thread took me to more like kind thread than my searches. Went into IIS in the default web site I added an htm file with a redirect. Then started it, it works. Maybe due to my inexperience but seems counter intuitive as I thought Reporting Services did
away with any reliance on IIS.Hi Urquhart,
According to your description, if you type "Reports2" in the browser, then you want to redirect to the report manager homepage in SSRS 2008 R2, right?
In Reporting Services 2008 R2, it uses HTTP.SYS for HTTP access and it’s independent of Internet Information Server(IIS). The role for HTTP.sys in Reporting Services is that, HTTP.sys receive the user's request, and then send it to report server. Report
Server handle the request(e.g. authenticate the users), and then use HTTP.sys the send HTTP responses again. In a word, HTTP.sys is just a driver, which allow us to communicate the clients(browser) with Report Server without Microsoft Internet Information
Server(IIS).
So, since HTTP.SYS doesn’t provide URL redirection function, we are not able to redirect "Reports2" to report manager homepage by default. If we want to use redirect function, we should add a .html file in IIS to redirect the user to the report
manager.
Similar thread for your reference:
SSRS 2008 URL Redirecting
SSRS 2008 R2 Homepage Redirection
If you have any question, please feel free to ask.
Best regards,
Qiuyun Yu
Qiuyun Yu
TechNet Community Support
Maybe you are looking for
-
Searching attibutes in the record mode in Data Manager
Hi, If i create a new attribute in taxonomy mode,i cannot view it in the corresponding search in the record mode in Data Manager.The particular attribute which i have added is not getting displayed in the attributes in the search pane.If i have to se
-
Adobe Reader 8.0 will not install
I tried many times to install Adobe Reader 8.0, for OS 10.4.8, but even though the "installer" says it is succesful, nothing shows up on the machine except the Adobe install package. Adobe says it works on PowerPC® G3, G4, G5 or Intel® processor with
-
I´ve got a problem with connecting my old cinema display to the pc my new work gave me. I´m using a adaptor from to DVI to VGA into the PC and I just get a black screen and the little lightbulb on the display is on. Anyone got a solution for this pro
-
Hi gurus I have installed the demo version of Mobile Client 5.0 in my pc. Now, in Authorization Management Tool(AMT), the predefined roles are not visible. Only the roles SAP_AMT_USER and SAP_AUTH_DISABLED are visible there. Can u plzz tell me whethe
-
I have downloaded a file (NYC subway map) and I can find it on my ipod, but I can't seem to get it to open. When I find it, its ends up showing PNG and doesn't give me any other options and doesn't show me a picture. When I open the file on my pc, th