Needs a solution for loading Crystal Report
Hi.....
I have already desiged & loaded crystal reports through SAP B1 Main Menu.
But I need help (Code in C#.Net) for loading a crystal report template(already created) for a System form (eg; A/R Invoice) immediately after the form load by a menu click(means through UI interface)
and report generated by identifying the Forms Document Number.
HI...
See this following link
https://www.sdn.sap.com/irj/sdn/businessone?rid=/webcontent/uuid/807d22cb-cb1d-2b10-8794-fb76d7feca88#section2
Regards
Billa 2007
Similar Messages
-
How to set printersettings for the crystal report viewer in SAP BI dynamically
Hello
I have set the URL method for my crystal report and with parameter passing as shown below, it was displaying the crystal report viewer by connecting to the SAP BI 4.0 server with this method.
http://cr:port/businessobjects/enterprise115/desktoplaunch/opendoc/openDocument.jsp?sDocName=CRLabelParam&sType=rpt&lsSnPrinted=0&lsSsTestProjectNr=1
This URL will be called from Web application by different users, i would like to set the printer settings differently for different users for this crystal report viewer how shall i need to set the printer options?
shall i need to set the printer settings programatically for each user. Please advise me how do i need to proceed.
Thanks & Regards,
Rajeswari.There are no BI / CR APIs that would do this for you. The way I see it, you'll have to have your own print button and populate it with the correct printer information for each user as they request the report. Of course, alternatively, use the viewer printer button and get the users to choose the correct printer.
- Ludek
Senior Support Engineer AGS Product Support, Global Support Center Canada
Follow us on Twitter -
Trying to programmatically set the data-source for a Crystal reports report.
I've got the following existing procedure that I need to add to in order to programmatically set the data-source (server, database, username, and password) for a Crystal reports report.
I added the connectionInfo parts, but can’t figure out how to attach this to the existing
this._report object.
This is currently getting the connection data from the report file, but I now need to populate this connection data from a 'config.xml' text file.
Am I trying to do this all wrong?
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using CrystalDecisions.CrystalReports.Engine;
using WGS.Reports.Reports;
using CrystalDecisions.Shared;
using WGS.Reports.Forms;
namespace WGS.Reports
public class ReportService
ReportClass _report;
ParameterFields paramFields;
ConnectionInfo connectionInfo; // <- I added this
public ReportService()
public void DisplayReport(string reportName, int allocationNo)
if (reportName.ToLower() == "allocationexceptions")
this._report = new AllocationExceptions();
PrepareConnection(); // <- I added this
PrepareAllocationExceptionReport(allocationNo);
this.DisplayReport();
private void PrepareConnection() // <- I added this
//test - these will come from the config.xml file
this.connectionInfo = new ConnectionInfo();
this.connectionInfo.ServerName = "testserv\\test";
this.connectionInfo.DatabaseName = "testdb";
this.connectionInfo.UserID = "testuser";
this.connectionInfo.Password = "test";
this.connectionInfo.Type = ConnectionInfoType.SQL;
private void PrepareAllocationExceptionReport(int allocationNo)
this.paramFields = new ParameterFields();
this.paramFields.Clear();
ParameterField paramField = new ParameterField { ParameterFieldName = "@AllocationNo" };
ParameterDiscreteValue discreteVal = new ParameterDiscreteValue { Value = allocationNo };
paramField.CurrentValues.Add(discreteVal);
paramFields.Add(paramField);
private void DisplayReport()
frmReportViewer showReport = new frmReportViewer();
showReport.ReportViewer.ReportSource = this._report;
showReport.ReportViewer.ParameterFieldInfo = paramFields;
showReport.ShowDialog();
showReport.Dispose();
Any help would be much appreciated.Hi Garry,
Please post SAP Crystal Reports questions in their own forums here:
SAP Crystal Reports, version for Visual Studio
We don't provide support for this control now. Thanks for your understanding.
We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
Click
HERE to participate the survey. -
Hi, need help, displaying text in crystal report
Post Author: decentsimple
CA Forum: Crystal Reports
CR8.5 help, displaying included or not included i
have a win app that calls the report, during rendering of report, the
win app will first create a temp table that holds all the fields for
the report, then the report is accessing that temptable. i want my report to display [not] included text for a field that contains the right value..here is the tricky part, the field is not in the temp table..is there a way for the crystal report to read the value of that certain field that is not in the temptable..so far.. i have a parameter 3 parameters, the value can be B/P/U ?B / ?P /?U each parameter have its own formula: @havefieldvalue if {?B} = "T" then "" else "Not" same for the rest..if the report generated have B then the report should display B - includedsame for the rest..you can always use an array if there's no pattern to your positions:
var positionA:Array=[ [100,20], [2,222], [55,2], [201,111], [78,23] ];
import flash.net.URLLoader;
import flash.net.URLRequest;
import flash.events.Event;
import com.adobe.serialization.json.JSON;
var loader:URLLoader = new URLLoader(new URLRequest("https://api.twitter.com/1/statuses/user_timeline.json?screen_name=ScottMitchell"));
loader.addEventListener(Event.COMPLETE, loadComplete);
function loadComplete(e:Event):void {
processData(e.target.data);
function processData(data:String):void {
var tweets:Array = JSON.decode(data) as Array;
for(var i:int=0;i<5;i++){
var tf:TextField=new TextField();
addChild(tf);
tf.multiline=true;
tf.width=300;
tf.text = tweets[i].text;
tf.autoSize="left";
tf.x=positionA[i][0];
tf.y=positionA[i][1];
nextY+=tf.height; -
Needed sample program for emailing the report output
hi all,
neede sample program for emailing the report outputHi,
Please refer this program for sending e-mail with attachment.
***INCLUDE ZHZLPP_CLZSN_DAILY_MIS_PRINT .
*& Form print
* text
* --> p1 text
* <-- p2 text
FORM print .
DATA: wa_output_options TYPE ssfcompop,
wa_control_parameters TYPE ssfctrlop,
t_otfdata TYPE ssfcrescl,
t_pdf_tab TYPE TABLE OF tline WITH HEADER LINE.
DATA: t_otf TYPE itcoo OCCURS 0 WITH HEADER LINE.
DATA: w_filesize TYPE i.
DATA: w_bin_filesize TYPE i.
DATA: i_otf TYPE itcoo OCCURS 0 WITH HEADER LINE,
i_tline TYPE TABLE OF tline WITH HEADER LINE,
v_form_name TYPE rs38l_fnam,
v_len_in LIKE sood-objlen,
w_return TYPE ssfcrescl.
DATA : l_mean TYPE p DECIMALS 2,
l_mean1 TYPE p DECIMALS 2,
l_mean2 TYPE p DECIMALS 2,
l_mean3 TYPE p DECIMALS 4,
temp TYPE p DECIMALS 2,
v_header LIKE zmisdisp3-remark,
disp_d_kwh_mt TYPE zmisdisp5,
disp_m_kwh_mt TYPE zmisdisp5,
disp_d_mt_mw TYPE zmisdisp5,
disp_m_mt_mw TYPE zmisdisp5,
l_bptarget(16) TYPE p DECIMALS 2,
l_act_d(16) TYPE p DECIMALS 2,
l_act_c(16) TYPE p DECIMALS 2,
l_pow_gen TYPE p DECIMALS 2,
l_pow_gen_d TYPE p DECIMALS 2,
l_pow_gen_c TYPE p DECIMALS 2,
l_no_of_days TYPE p,
disp_bptarget TYPE zmisdisp5,
disp_act_d TYPE zmisdisp5,
disp_act_c TYPE zmisdisp5,
disp_d_kwh TYPE zmisdisp5,
disp_c_kwh TYPE zmisdisp5,
disp_d_mw TYPE zmisdisp5,
disp_c_mw TYPE zmisdisp5,
disp_pow_gen_d TYPE zmisdisp5,
disp_pow_gen_c TYPE zmisdisp5,
disp_pow_gen TYPE zmisdisp5,
disp_ftd_h1 TYPE zmisdisp5,
disp_ftd_h2 TYPE zmisdisp5,
disp_ftd_h3 TYPE zmisdisp5,
disp_ftd_h4 TYPE zmisdisp5,
disp_ftd_h5 TYPE zmisdisp5,
disp_ftd_o1 TYPE zmisdisp5,
disp_ftd_o2 TYPE zmisdisp5,
disp_ftd_o4 TYPE zmisdisp5,
disp_ftd_o5 TYPE zmisdisp5,
disp_***_o1 TYPE zmisdisp5,
disp_***_o2 TYPE zmisdisp5,
disp_***_o4 TYPE zmisdisp5,
disp_***_o5 TYPE zmisdisp5,
disp_cath_d TYPE zmisdisp5,
disp_cath_c TYPE zmisdisp5,
disp_anode_d TYPE zmisdisp5,
disp_anode_c TYPE zmisdisp5,
l_rec_con_d_kwh(16) TYPE p DECIMALS 2,
l_rec_con_c_kwh(16) TYPE p DECIMALS 2,
l_rec_con_d_mw(16) TYPE p DECIMALS 2,
l_rec_con_c_mw(16) TYPE p DECIMALS 2,
tot_kah TYPE p DECIMALS 2,
avg_kah TYPE p DECIMALS 2,
disp_tot_kah TYPE zmisdisp5,
disp_avg_kah TYPE zmisdisp5,
v_ftd_h1 TYPE p DECIMALS 2,
v_ftd_h2 TYPE p DECIMALS 2,
v_ftd_h3 TYPE p DECIMALS 2,
v_ftd_h4 TYPE p DECIMALS 2,
v_ftd_h5 TYPE p DECIMALS 2,
v_ftd_o1 TYPE p DECIMALS 2,
v_ftd_o2 TYPE p DECIMALS 2,
v_ftd_o4 TYPE p DECIMALS 2,
v_ftd_o5 TYPE p DECIMALS 2,
v_***_o1 TYPE p DECIMALS 2,
v_***_o2 TYPE p DECIMALS 2,
v_***_o4 TYPE p DECIMALS 2,
v_***_o5 TYPE p DECIMALS 2,
l_cdiff1 LIKE imrg-cdiff,
l_cdiff2 LIKE imrg-cdiff,
l_cdiff3 LIKE imrg-cdiff,
l_cdiff4 LIKE imrg-cdiff,
l_path LIKE rlgrap-filename,
l_flag.
DATA :prod_disp TYPE TABLE OF zmisdisp1 WITH HEADER LINE,
keyp_disp TYPE TABLE OF zmisdisp2 WITH HEADER LINE,
keyp_dis1 TYPE TABLE OF zmisdisp2 WITH HEADER LINE,
rmat_disp TYPE TABLE OF zmisdisp4 WITH HEADER LINE,
rcur_disp TYPE TABLE OF zmisdisp6 WITH HEADER LINE,
rhrs_disp TYPE TABLE OF zmisdisp4 WITH HEADER LINE,
brkd_disp TYPE TABLE OF zmisdisp7 WITH HEADER LINE.
DEFINE fill_kpp.
clear l_flag.
loop at it_mic_data where kurztext = &1.
l_mean1 = it_mic_data-mittelwert.
l_mean = it_mic_data-mean.
if l_flag = ' '.
move : &2 to keyp_disp-desc,
l_mean1 to keyp_disp-ftd.
if it_mic_data-kurztext = 'Ingot Pb SHG Zinc'.
l_mean2 = v_mean_pbshg.
move l_mean2 to keyp_disp-avg.
elseif it_mic_data-kurztext = 'Ingot Cu SHG Zinc'.
l_mean2 = v_mean_cushg.
move l_mean2 to keyp_disp-avg.
elseif it_mic_data-kurztext = 'Ingot Cd SHG Zinc'.
l_mean2 = v_mean_cdshg.
move l_mean2 to keyp_disp-avg.
elseif it_mic_data-kurztext = 'Ingot Fe SHG Zinc'.
l_mean2 = v_mean_feshg.
move l_mean2 to keyp_disp-avg.
elseif it_mic_data-kurztext = 'Ingot Zn SHG Zinc'.
l_mean2 = v_mean_znshg.
move l_mean2 to keyp_disp-avg.
else.
move l_mean to keyp_disp-avg.
endif.
if it_mic_data-masseinhsw = 'GLI'.
move 'g/l' to keyp_disp-unit.
elseif it_mic_data-masseinhsw = 'PPM'.
move 'ppm' to keyp_disp-unit.
elseif it_mic_data-masseinhsw = 'NO'.
move 'no' to keyp_disp-unit.
else.
move it_mic_data-masseinhsw to keyp_disp-unit.
endif.
append keyp_disp.
clear keyp_disp.
move 'X' to l_flag.
else.
move : l_mean1 to keyp_disp-ftd.
append keyp_disp.
clear keyp_disp.
endif.
endloop.
if sy-subrc is not initial.
move &2 to keyp_disp-desc.
append keyp_disp.
clear keyp_disp.
endif.
END-OF-DEFINITION.
DEFINE fill_kp1.
clear l_flag.
loop at it_mic_data where kurztext = &1.
l_mean1 = it_mic_data-mittelwert.
l_mean = it_mic_data-mean.
if l_flag = ' '.
move : &2 to keyp_dis1-desc,
l_mean1 to keyp_dis1-ftd.
if it_mic_data-kurztext = 'Ingot Pb SHG Zinc'.
l_mean2 = v_mean_pbshg.
move l_mean2 to keyp_dis1-avg.
elseif it_mic_data-kurztext = 'Ingot Cu SHG Zinc'.
l_mean2 = v_mean_cushg.
move l_mean2 to keyp_dis1-avg.
elseif it_mic_data-kurztext = 'Ingot Cd SHG Zinc'.
l_mean2 = v_mean_cdshg.
move l_mean2 to keyp_dis1-avg.
elseif it_mic_data-kurztext = 'Ingot Fe SHG Zinc'.
l_mean2 = v_mean_feshg.
move l_mean2 to keyp_dis1-avg.
elseif it_mic_data-kurztext = 'Ingot Zn SHG Zinc'.
l_mean3 = v_mean_znshg.
move l_mean3 to keyp_dis1-avg.
clear l_mean3.
l_mean3 = it_mic_data-mittelwert.
move l_mean3 to keyp_dis1-ftd.
else.
move l_mean to keyp_dis1-avg.
endif.
if it_mic_data-masseinhsw = 'GLI'.
move 'g/l' to keyp_dis1-unit.
elseif it_mic_data-masseinhsw = 'PPM'.
move 'ppm' to keyp_dis1-unit.
elseif it_mic_data-masseinhsw = 'NO'.
move 'no' to keyp_dis1-unit.
else.
move it_mic_data-masseinhsw to keyp_dis1-unit.
endif.
append keyp_dis1.
clear keyp_dis1.
move 'X' to l_flag.
else.
if it_mic_data-kurztext = 'Ingot Zn SHG Zinc'.
clear l_mean3.
l_mean3 = it_mic_data-mittelwert.
move l_mean3 to keyp_dis1-ftd.
else.
move : l_mean1 to keyp_dis1-ftd.
endif.
append keyp_dis1.
clear keyp_dis1.
endif.
endloop.
if sy-subrc is not initial.
move &2 to keyp_dis1-desc.
append keyp_dis1.
clear keyp_dis1.
endif.
END-OF-DEFINITION.
*FIRST PAGE
********PLANT HEADER
MOVE 'CLZS HYDRO I PLANT - DAILY PRODUCTION REPORT' TO v_header.
********Production figure
LOOP AT it_disp1.
prod_disp-desc = it_disp1-desc.
prod_disp-d_plnmg = it_disp1-d_plnmg.
prod_disp-d_menge = it_disp1-d_menge.
prod_disp-u_plnmg = it_disp1-u_plnmg.
prod_disp-u_menge = it_disp1-u_menge.
prod_disp-avg = it_disp1-avg.
prod_disp-ask_rate = it_disp1-ask_rate.
prod_disp-m_plnmg = it_disp1-m_plnmg.
prod_disp-y_plnmg = it_disp1-y_plnmg.
prod_disp-y_menge = it_disp1-y_menge.
prod_disp-y_variance = it_disp1-y_variance.
APPEND prod_disp.
ENDLOOP.
********Key performance parameters
MOVE 'ROASTER :' TO keyp_disp-desc.
APPEND keyp_disp.
fill_kpp '% S/S IN 45 DEG' ' S/S in Calcine'.
MOVE 'LEACHING :' TO keyp_disp-desc.
APPEND keyp_disp.
fill_kpp '% S/S IN CAL' ' S/S in Calcine'.
fill_kpp '%water soluble Zn' ' W/S Zn in Jarosite Cake'.
fill_kpp '%total Zn in HBF' ' T/Zn in Jarosite cake'.
fill_kpp 'ZINC IN CT' ' Zn in Conditioning tank'.
fill_kpp 'g/l zn in neutral overflow' ' Zn in Electrolyte Prod (gpl)'.
fill_kpp 'PPM CU IN PS25' ' Purified Solution Cu'.
fill_kpp 'PPM CADMIUM IN PS25' ' Purified Solution Cd'.
fill_kpp 'PPM COBALT IN PS25' ' Purified Solution Co'.
MOVE 'CELLHOUSE :' TO keyp_disp-desc.
APPEND keyp_disp.
fill_kpp 'g/l zinc in cell feed' ' Cell Feed Zinc gpl'.
fill_kpp 'GPL ACID IN CELL FEED' ' Cell Feed acidity gpl'.
fill_kpp 'g/l manganese in cell feed' ' Cell Feed Mn gpl'.
LOOP AT t_imrg_add_disp.
MOVE: t_imrg_add_disp-desc TO keyp_disp-desc,
t_imrg_add_disp-d_value TO keyp_disp-ftd,
t_imrg_add_disp-c_value TO temp,
temp TO keyp_disp-avg.
IF t_imrg_add_disp-units = 'NO'.
MOVE: 'no' TO keyp_disp-unit.
ELSE.
MOVE: t_imrg_add_disp-units TO keyp_disp-unit.
ENDIF.
APPEND keyp_disp.CLEAR keyp_disp.
ENDLOOP.
fill_kp1 'Ingot Pb SHG Zinc' ' Ingot Pb SHG Zinc'.
fill_kp1 'Ingot Cu SHG Zinc' ' Ingot Cu SHG Zinc'.
fill_kp1 'Ingot Cd SHG Zinc' ' Ingot Cd SHG Zinc'.
fill_kp1 'Ingot Fe SHG Zinc' ' Ingot Fe SHG Zinc'.
fill_kp1 'Ingot Zn SHG Zinc' ' Ingot Zn SHG Zinc'.
********Cellhouse power
CATCH SYSTEM-EXCEPTIONS bcd_zerodivide = 1.
v_m_kwh_mt = v_ind8_m / cathode_recipt.
v_m_mt_mw = cathode_recipt / ( v_ind8_m / 24000 ).
ENDCATCH.
MOVE : v_d_kwh_mt TO disp_d_kwh_mt,
v_m_kwh_mt TO disp_m_kwh_mt,
v_d_mt_mw TO disp_d_mt_mw,
v_m_mt_mw TO disp_m_mt_mw.
*SECOND PAGE
********Raw Material
LOOP AT it_disp3.
rmat_disp-desc = it_disp3-desc.
rmat_disp-opstk = it_disp3-opstk.
rmat_disp-d_recpt = it_disp3-d_recpt.
rmat_disp-u_recpt = it_disp3-u_recpt.
rmat_disp-d_cons = it_disp3-d_cons.
rmat_disp-u_cons = it_disp3-u_cons.
rmat_disp-clstk = it_disp3-clstk.
APPEND rmat_disp.
ENDLOOP.
********Work in Progress
********Finished Goods
********power consumption
l_no_of_days = v_mm_en_dt+6(2).
CATCH SYSTEM-EXCEPTIONS bcd_zerodivide = 1.
l_bptarget = ( v_bp_nrms_p * v_gross_d ) / l_no_of_days.
l_act_d = v_ind6_d + v_ind2_d - ( v_ind3_d + ( v_ind4_d / 2 ) ) - v_ind5_d.
l_act_c = v_ind6_m + v_ind2_m - ( v_ind3_m + ( v_ind4_m / 2 ) ) - v_ind5_m.
l_pow_gen = ( v_ind2_d / 1000 ) / v_ind7_d.
ENDCATCH.
l_pow_gen_d = v_ind2_d / 1000.
l_pow_gen_c = v_ind9_m / 1000.
l_rec_con_d_kwh = v_ind8_d.
l_rec_con_c_kwh = v_ind8_m.
l_rec_con_d_mw = v_ind8_d / 24000.
l_rec_con_c_mw = v_ind8_m / ( 24000 * v_days_pased ).
LOOP AT t_disp_curr.
rcur_disp-time = t_disp_curr-time.
rcur_disp-current = t_disp_curr-current.
rcur_disp-kah = t_disp_curr-kah.
APPEND rcur_disp.
AT LAST.
SUM.
tot_kah = t_disp_curr-kah.
ENDAT.
ENDLOOP.
avg_kah = tot_kah / '24'.
*********************running hrs
LOOP AT it_disp6.
rhrs_disp-desc = it_disp6-desc.
rhrs_disp-opstk = it_disp6-d_runhrs.
rhrs_disp-d_recpt = it_disp6-m_runhrs.
APPEND rhrs_disp.
ENDLOOP.
rhrs_disp-desc = 'Turbo Generator'.
rhrs_disp-opstk = v_turbod.
rhrs_disp-d_recpt = v_turboc.
INSERT rhrs_disp INDEX 2.
**********************BREAK_DOWN & OIL
CLEAR value.
LOOP AT itab2.
IF itab2-equnr = 'NMZ-EH01G001'.
PERFORM s_conversion_h.
v_ftd_h1 = v_ftd_h1 + value.
CLEAR value.
ENDIF.
IF itab2-equnr = 'NMZ-EH01G002'.
PERFORM s_conversion_h.
v_ftd_h2 = v_ftd_h2 + value.
CLEAR value.
ENDIF.
IF itab2-equnr = 'NMZ-EH01V003'.
PERFORM s_conversion_h.
v_ftd_h3 = v_ftd_h3 + value.
CLEAR value.
ENDIF.
IF itab2-equnr = 'NMZ-EH01V001'.
PERFORM s_conversion_h.
v_ftd_h4 = v_ftd_h4 + value.
CLEAR value.
ENDIF.
IF itab2-equnr = 'NMZ-EH01V002'.
PERFORM s_conversion_h.
v_ftd_h5 = v_ftd_h5 + value.
CLEAR value.
ENDIF.
ENDLOOP.
LOOP AT t_oil.
AT END OF ind.
SUM.
IF t_oil-ind = 1.
v_***_o1 = t_oil-cdiff * 1000.
ELSEIF t_oil-ind = 2.
v_***_o2 = t_oil-cdiff * 1000.
ELSEIF t_oil-ind = 3.
v_***_o4 = t_oil-cdiff * 1000.
ELSEIF t_oil-ind = 4.
v_***_o5 = t_oil-cdiff * 1000.
ENDIF.
ENDAT.
IF t_oil-idate = p_repdt.
IF t_oil-ind = 1.
l_cdiff1 = l_cdiff1 + t_oil-cdiff.
ELSEIF t_oil-ind = 2.
l_cdiff2 = l_cdiff2 + t_oil-cdiff.
ELSEIF t_oil-ind = 3.
l_cdiff3 = l_cdiff3 + t_oil-cdiff.
ELSEIF t_oil-ind = 4.
l_cdiff4 = l_cdiff4 + t_oil-cdiff.
ENDIF.
ENDIF.
ENDLOOP.
v_ftd_o1 = l_cdiff1 * 1000.
v_ftd_o2 = l_cdiff2 * 1000.
v_ftd_o4 = l_cdiff3 * 1000.
v_ftd_o5 = l_cdiff4 * 1000.
*********Breakdown details----3rd page
LOOP AT itab INTO wa.
CALL FUNCTION 'FLTP_CHAR_CONVERSION'
EXPORTING
decim = 0
expon = 0
input = wa-auszt
ivalu = 'X'
IMPORTING
flstr = wk_char_auszt.
CONDENSE wk_char_auszt NO-GAPS.
wk_flt_auszt = wk_char_auszt.
wk_flt_auszt = wk_flt_auszt / 3600.
duration = wk_flt_auszt.
brkd_disp-eqdesc = wa-eqktx.
brkd_disp-nodesc = wa-qmtxt.
brkd_disp-hrs = duration.
APPEND brkd_disp.
ENDLOOP.
MOVE : v_ftd_h1 TO disp_ftd_h1,
v_ftd_h2 TO disp_ftd_h2,
v_ftd_h3 TO disp_ftd_h3,
v_ftd_h4 TO disp_ftd_h4,
v_ftd_h5 TO disp_ftd_h5,
v_ftd_o1 TO disp_ftd_o1,
v_ftd_o2 TO disp_ftd_o2,
v_ftd_o4 TO disp_ftd_o4,
v_ftd_o5 TO disp_ftd_o5,
v_***_o1 TO disp_***_o1,
v_***_o2 TO disp_***_o2,
v_***_o4 TO disp_***_o4,
v_***_o5 TO disp_***_o5,
l_bptarget TO disp_bptarget,
l_act_d TO disp_act_d,
l_act_c TO disp_act_c,
l_rec_con_d_kwh TO disp_d_kwh,
l_rec_con_c_kwh TO disp_c_kwh,
l_rec_con_d_mw TO disp_d_mw,
l_rec_con_c_mw TO disp_c_mw,
tot_kah TO disp_tot_kah,
avg_kah TO disp_avg_kah,
l_pow_gen TO disp_pow_gen,
l_pow_gen_d TO disp_pow_gen_d,
l_pow_gen_c TO disp_pow_gen_c,
v_cath_d TO disp_cath_d,
v_cath_c TO disp_cath_c,
v_anode_d TO disp_anode_d,
v_anode_c TO disp_anode_c.
wa_output_options-tdimmed = 'X'.
wa_control_parameters-device = 'PRINTER'.
wa_control_parameters-preview = 'X'.
IF rb3 = 'X'.
wa_control_parameters-getotf = 'X'.
wa_control_parameters-no_dialog = 'X'.
ENDIF.
CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME'
EXPORTING
formname = 'ZHZLPP_CLZSN_DAILY_MIS'
IMPORTING
fm_name = v_form_name
EXCEPTIONS
no_form = 1
no_function_module = 2
OTHERS = 3.
IF sy-subrc <> 0.
ENDIF.
CALL FUNCTION v_form_name
EXPORTING
control_parameters = wa_control_parameters
output_options = wa_output_options
user_settings = 'X'
header = v_header
date = p_repdt
l_bptarget = disp_bptarget
l_act_d = disp_act_d
l_act_c = disp_act_c
disp_d_kwh = disp_d_kwh
disp_c_kwh = disp_c_kwh
disp_d_mw = disp_d_mw
disp_c_mw = disp_c_mw
disp_tot_kah = disp_tot_kah
disp_avg_kah = disp_avg_kah
disp_d_kwh_mt = disp_d_kwh_mt
disp_m_kwh_mt = disp_m_kwh_mt
disp_d_mt_mw = disp_d_mt_mw
disp_m_mt_mw = disp_m_mt_mw
disp_pow_gen = disp_pow_gen
disp_pow_gen_d = disp_pow_gen_d
disp_pow_gen_c = disp_pow_gen_c
disp_ftd_h1 = disp_ftd_h1
disp_ftd_h2 = disp_ftd_h2
disp_ftd_h3 = disp_ftd_h3
disp_ftd_h4 = disp_ftd_h4
disp_ftd_h5 = disp_ftd_h5
disp_ftd_o1 = disp_ftd_o1
disp_ftd_o2 = disp_ftd_o2
disp_ftd_o4 = disp_ftd_o4
disp_ftd_o5 = disp_ftd_o5
disp_***_o1 = disp_***_o1
disp_***_o2 = disp_***_o2
disp_***_o4 = disp_***_o4
disp_***_o5 = disp_***_o5
disp_cath_d = disp_cath_d
disp_cath_c = disp_cath_c
disp_anode_d = disp_anode_d
disp_anode_c = disp_anode_c
IMPORTING
job_output_info = w_return " .
TABLES
prod_tab = prod_disp
keyp_tab = keyp_disp
remk_tab = it_remarks
rmat_tab = rmat_disp
rwip_tab = it_disp4
rfng_tab = it_disp_fg
rcur_tab = rcur_disp
rhrs_tab = rhrs_disp
brkd_tab = brkd_disp
keyp_tab1 = keyp_dis1
EXCEPTIONS
formatting_error = 1
internal_error = 2
send_error = 3
user_canceled = 4
OTHERS = 5
IF sy-subrc <> 0.
MESSAGE 'Error in printing form' TYPE 'I'.
ENDIF.
********Downloading in pdf format.
IF rb3 = 'X'.
IF l_usract <> 9.
MOVE fullpath TO l_path.
i_otf[] = w_return-otfdata[].
CALL FUNCTION 'CONVERT_OTF' "
EXPORTING
format = 'PDF'
max_linewidth = 132
IMPORTING
bin_filesize = v_len_in
TABLES
otf = i_otf
lines = i_tline
EXCEPTIONS
err_max_linewidth = 1
err_format = 2
err_conv_not_possible = 3
OTHERS = 4.
IF sy-subrc <> 0.
ENDIF.
CALL FUNCTION 'WS_DOWNLOAD'
EXPORTING
bin_filesize = v_len_in
filename = l_path
filetype = 'BIN'
IMPORTING
filelength = w_filesize
TABLES
data_tab = i_tline
EXCEPTIONS
file_open_error = 1
file_write_error = 2
invalid_filesize = 3
invalid_type = 4
no_batch = 5
unknown_error = 6
invalid_table_width = 7
gui_refuse_filetransfer = 8
customer_error = 9
OTHERS = 10.
IF sy-subrc = 0.
MESSAGE 'File downloaded successfully' TYPE 'S'.
ENDIF.
ENDIF.
ENDIF.
IF sy-batch = 'X'. " SENDING MAILS IF SCHEDULED IN BACKGROUND
DATA: formname TYPE tdsfname,
fm_name TYPE rs38l_fnam,
control_parameters TYPE ssfctrlop,
output_options TYPE ssfcompop,
job_output_info TYPE ssfcrescl,
otf_data TYPE tsfotf.
DATA: otf TYPE TABLE OF itcoo WITH HEADER LINE,
doctab_archive TYPE TABLE OF docs WITH HEADER LINE,
lines TYPE TABLE OF tline WITH HEADER LINE,
bin_filesize TYPE i.
CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME'
EXPORTING
formname = 'ZHZLPP_CLZSN_DAILY_MIS'
IMPORTING
fm_name = v_form_name
EXCEPTIONS
no_form = 1
no_function_module = 2
OTHERS = 3.
IF sy-subrc <> 0.
ENDIF.
control_parameters-no_dialog = 'X'.
control_parameters-getotf = 'X'.
CALL FUNCTION v_form_name
EXPORTING
control_parameters = control_parameters
header = v_header
date = p_repdt
l_bptarget = disp_bptarget
l_act_d = disp_act_d
l_act_c = disp_act_c
disp_d_kwh = disp_d_kwh
disp_c_kwh = disp_c_kwh
disp_d_mw = disp_d_mw
disp_c_mw = disp_c_mw
disp_tot_kah = disp_tot_kah
disp_avg_kah = disp_avg_kah
disp_d_kwh_mt = disp_d_kwh_mt
disp_m_kwh_mt = disp_m_kwh_mt
disp_d_mt_mw = disp_d_mt_mw
disp_m_mt_mw = disp_m_mt_mw
disp_pow_gen = disp_pow_gen
disp_pow_gen_d = disp_pow_gen_d
disp_pow_gen_c = disp_pow_gen_c
disp_ftd_h1 = disp_ftd_h1
disp_ftd_h2 = disp_ftd_h2
disp_ftd_h3 = disp_ftd_h3
disp_ftd_h4 = disp_ftd_h4
disp_ftd_h5 = disp_ftd_h5
disp_ftd_o1 = disp_ftd_o1
disp_ftd_o2 = disp_ftd_o2
disp_ftd_o4 = disp_ftd_o4
disp_ftd_o5 = disp_ftd_o5
disp_***_o1 = disp_***_o1
disp_***_o2 = disp_***_o2
disp_***_o4 = disp_***_o4
disp_***_o5 = disp_***_o5
disp_cath_d = disp_cath_d
disp_cath_c = disp_cath_c
disp_anode_d = disp_anode_d
disp_anode_c = disp_anode_c
IMPORTING
job_output_info = job_output_info
TABLES
prod_tab = prod_disp
keyp_tab = keyp_disp
remk_tab = it_remarks
rmat_tab = rmat_disp
rwip_tab = it_disp4
rfng_tab = it_disp_fg
rcur_tab = rcur_disp
rhrs_tab = rhrs_disp
brkd_tab = brkd_disp
keyp_tab1 = keyp_dis1
EXCEPTIONS
formatting_error = 1
internal_error = 2
send_error = 3
user_canceled = 4
OTHERS = 5.
IF sy-subrc = 0.
otf_data = job_output_info-otfdata[].
CALL FUNCTION 'CONVERT_OTF_2_PDF'
IMPORTING
bin_filesize = bin_filesize
TABLES
otf = otf_data[]
doctab_archive = doctab_archive[]
lines = lines[]
EXCEPTIONS
err_conv_not_possible = 1
err_otf_mc_noendmarker = 2
OTHERS = 3.
IF sy-subrc = 0.
SUBMIT rsconn01 with mode = 'INT' AND RETURN.
* ----<<distrubution list>>----
PERFORM mail_users TABLES lines USING 'MIS-HY1A' v_header. " Donot put more than 8 email-ids
PERFORM mail_users TABLES lines USING 'MIS-HY1B' v_header. " in a distribution list
PERFORM mail_users TABLES lines USING 'MIS-HY1C' v_header.
PERFORM mail_users TABLES lines USING 'MIS-HY1D' v_header.
PERFORM mail_users TABLES lines USING 'MIS-HY1E' v_header.
PERFORM mail_users TABLES lines USING 'MIS-HY1F' v_header.
PERFORM mail_users TABLES lines USING 'MIS-HY1G' v_header.
PERFORM mail_users TABLES lines USING 'MIS-HY1H' v_header.
PERFORM mail_users TABLES lines USING 'MIS-HY1I' v_header.
PERFORM mail_users TABLES lines USING 'MIS-HY1J' v_header.
ENDIF.
ENDIF.
ENDIF.
ENDFORM. " print
*& Form get_download_path
* text
* --> p1 text
* <-- p2 text
FORM get_download_path .
CALL FUNCTION 'GUI_FILE_SAVE_DIALOG'
EXPORTING
window_title = 'Download as pdf file'
default_extension = 'pdf'
IMPORTING
fullpath = fullpath
user_action = l_usract.
IF l_usract = '9'.
STOP.
ENDIF.
ENDFORM. " get_download_path
*& Form mail_users
* text
* -->P_LINES text
* -->P_2153 text
* -->P_V_HEADER text
FORM mail_users TABLES p_lines STRUCTURE tline
USING p_dist_list
p_v_header.
CONSTANTS: c_raw TYPE so_obj_tp VALUE 'RAW',
c_pdf TYPE so_obj_tp VALUE 'PDF',
c_255 TYPE i VALUE 255,
c_134 TYPE i VALUE 134,
c_x TYPE c VALUE 'X'.
DATA: document_data LIKE sodocchgi1 ,
tab_lines TYPE i,
contents_txt TYPE TABLE OF solisti1 WITH HEADER LINE,
contents_bin TYPE TABLE OF solisti1 WITH HEADER LINE,
packing_list TYPE TABLE OF sopcklsti1 WITH HEADER LINE,
object_header TYPE TABLE OF solisti1 WITH HEADER LINE,
receivers TYPE TABLE OF somlreci1 WITH HEADER LINE,
l_str(255) ,
v1 TYPE i,
v2 TYPE i,
v3 TYPE i.
document_data-obj_name = 'EMAIL'.
document_data-obj_descr = p_v_header. " SUBJECT LINE
CONCATENATE 'Please find the attached SAP generated Daily Production Report for the day'
p_repdt+6(2)
p_repdt+4(2)
'.' p_repdt+0(4)
INTO contents_txt.
APPEND contents_txt.
CLEAR contents_txt.
APPEND contents_txt.
APPEND contents_txt.
DESCRIBE TABLE contents_txt LINES tab_lines.
READ TABLE contents_txt INDEX tab_lines.
document_data-doc_size = ( tab_lines - 1 ) * 255 + STRLEN( contents_txt ).
document_data-doc_size = tab_lines .
CLEAR packing_list-transf_bin.
packing_list-head_start = 1.
packing_list-head_num = 0.
packing_list-body_start = 1.
packing_list-body_num = tab_lines.
packing_list-doc_type = c_raw.
packing_list-doc_size = document_data-doc_size.
APPEND packing_list.
LOOP AT p_lines.
CLEAR l_str.
l_str+0(2) = p_lines-tdformat.
l_str+2(132) = p_lines-tdline.
v2 = v1 + c_134.
IF v2 LE c_255.
contents_bin-line+v1(c_134) = l_str. v1 = v2.
ELSE.
v3 = v2 - c_255.
v2 = c_255 - v1.
IF NOT v2 IS INITIAL.
contents_bin-line+v1(v2) = l_str+0(v2).
ENDIF.
APPEND contents_bin.
CLEAR contents_bin.
v1 = v3.
v3 = 134 - v1.
IF NOT v1 IS INITIAL.
contents_bin-line+0(v1) = l_str+v3(v1).
ENDIF.
ENDIF.
ENDLOOP.
APPEND contents_bin.
CLEAR contents_bin.
DESCRIBE TABLE contents_bin LINES tab_lines.
READ TABLE contents_bin INDEX tab_lines.
CONCATENATE 'Hy-I Report'
p_repdt+6(2)
p_repdt+4(2)
'.' p_repdt+0(4)
'.pdf'
INTO object_header.
APPEND object_header.
packing_list-transf_bin = c_x.
packing_list-head_start = 1.
packing_list-head_num = 1.
packing_list-body_start = 1.
packing_list-body_num = tab_lines.
packing_list-doc_type = c_pdf.
packing_list-obj_name = 'text1'.
packing_list-obj_descr = 'Production report'.
packing_list-doc_size = tab_lines * 255 + STRLEN( contents_bin ).
APPEND packing_list.
receivers-receiver = p_dist_list.
receivers-rec_type = 'C'.
APPEND receivers.
CLEAR receivers.
CALL FUNCTION 'SO_DOCUMENT_SEND_API1'
EXPORTING
document_data = document_data
put_in_outbox = ' '
SENDER_ADDRESS = 'CZPPPLG'
SENDER_ADDRESS_TYPE = 'B'
commit_work = 'X'
TABLES
packing_list = packing_list
object_header = object_header
contents_bin = contents_bin
contents_txt = contents_txt
receivers = receivers
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.
IF sy-subrc = 0.
WAIT UP TO 2 SECONDS.
SUBMIT rsconn01 with mode = 'INT' AND RETURN.
ENDIF.
ENDFORM. " mail_users -
Need standrad program for vendor aging report
Hi
Need standrad program for vendor aging report.
Please reply me only standrad programs.
Point are sure.
Regards,
kumarHi Pankaj
sorry to say that this is not my required program.
I need vendor aging report like s_alr_87012178 tc leads to customer aging report.
Thanks for your effort.
points are awarded.
Regards,
kumar -
One parameter for multiple Crystal reports in Publication
Does anyone know if it is possible to enter one identical parameter for multiple Crystal reports in publication when scheduling? BOE 3.1 SP3 Windows, Java.
To elaborate I am creating publication with multiple reports, each report has one parameter and this parameter is identical in every report in publication. So instead of entering this parameter many times I would like to enter once.
If yes point me in the right direction to get the how to or post the steps.Daniel,
Thank you so much for your answer. It was very helpful. In the end, it didn't work but it helped me figure out what was happening. I use a different form for the reports and I had it coded in the form which report to use. I created a second form for the second crystal and then I used an if statement to choose the form and it worked like a charm.
Thanks so much again! -
Load time issue for the Crystal Reports
Hello All
My reports take painstakingly longer time to load and display due to the number of records it has to display (~10000 records)
Currently i use the loop approach to provide the logon info for all the reports/subreports. This is the place where i presume it is taking time.
crTables = crReportDocument.Database.Tables
' Loop through each table in the report
For Each crTable In crTables
crLogOnInfo = crTable.LogOnInfo
' Set the connection information for the table in the report.
crLogOnInfo.ConnectionInfo.ServerName = DB_SERVER_NAME
crLogOnInfo.ConnectionInfo.DatabaseName = DB_NAME
crLogOnInfo.ConnectionInfo.UserID = DB_USER
crLogOnInfo.ConnectionInfo.Password = DB_PASSWORD
Log("set login info to main table " & crTable.Name & " location " & crTable.Location)
crTable.ApplyLogOnInfo(crLogOnInfo)
Next
Can i use the following approach instead to provide the same functionality to avoid such nasty loops??
crReportDocument.DataSourceConnections[0].SetConnection(DB_SERVER_NAME, DB_NAME, DB_USER, DB_PASSWORD);
crReportDocument.Refresh();
Thanks in advance
Srivatsa
Edited by: Srivatsa Haridas on Nov 10, 2008 11:02 AMYou need the "loop part" - at least I'd be way more comfortable if you use it. From my experience, you have a more robust app when you loop through the tables.
reason I asked about subreports; if a subreport is inthe detail section and you have a 1000 records in the detail, and the subreport runs per record, you are essentially running 1000 + 1 reports. Obviously this will take a significant amount of time. As it is even 10 to 15 subreports is quite significant as you are running the subreports plus the main report... Possibly the best way for you to compare the speed is not run the report in a CR designer.(e.g.; what I am asking is; OK, the report is slow. Compared to what?) As you are using CR 10.2, I'd recommend downloading an eval of either CR XI r2 or CR 2008 and see how the reports perform there. If the performance in the designer is slow, it will not get any faster at runtime.
The evals can be downloaded from here:
http://www.businessobjects.com/products/reporting/crystalreports/eval.asp
Also will the below line work for my subreports too ?
crReportDocument.DataSourceConnections(0).SetConnection(DB_SERVER_NAME, DB_NAME, DB_USER, DB_PASSWORD)
- it will, as long as the subreports are using the same connection type as your main report. However I really would not get hung up on loop v.s. no loop. As a matter of fact, this subreport database logon uses loop s as well and it is the recommended way of connecting the subreports:
'Log on subreport
crSubreportDocument = crReportDocument.OpenSubreport("Ron")
crConnectionInfo = New ConnectionInfo
With crConnectionInfo
.ServerName = "Rcon1"
.DatabaseName = "Northwind"
.UserID = "tech"
.Password = "tech"
End With
crDatabase = crSubreportDocument.Database
crTables = crDatabase.Tables
For Each crTable In crTables
crTableLogOnInfo = crTable.LogOnInfo
crTableLogOnInfo.ConnectionInfo = crConnectionInfo
crTable.ApplyLogOnInfo(crTableLogOnInfo)
Next
Ludek
Regards -
Buffer too small for string - Crystal Report for Vs2010
Hello,
I have recently upgrade my VS2010 project to Crystal Report for Visual Studion 2010.
I have some reports that contains more than 512 characters in the Report Comments section.
When I try to do a RptDoc.SaveAs(vPath, false) the following error is raised:
Buffer too small for string or missing null byte.
at CrystalDecisions.ReportAppServer.ClientDoc.ReportClientDocumentClass.SaveAs in :line 0
at CrystalDecisions.ReportAppServer.ReportClientDocumentWrapper.SaveAs in :line 0
at CrystalDecisions.CrystalReports.Engine.ReportDocument.SaveAs in :line 0
This line SaveAs was working has expected with Crystal Report 2008. Any idea on why it is not working anymore.
Thank you.
CharlesHello Don,
I have start a little project to retest the behavior.
I have create a new report in Crystal Report 2008 just by clicking New, Finish and Save.
In a new Windows Application in Vs2010 ,I have added the following Crystal Report Reference.
CrystalDecisions.CrystalReports.Engine, Version=13.0.2000.0
CrystalDecisions.Shared, Version=13.0.2000.0
I have then try the following code and found out the limit of ReportComment is 511 but in the Crystal Report 2008 designer and runtime the limit did not apply.
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim objRpt As New CrystalDecisions.CrystalReports.Engine.ReportDocument()
Dim i As Integer = 0
Try
objRpt.Load("c:\temp\empty.rpt", CrystalDecisions.Shared.OpenReportMethod.OpenReportByTempCopy)
Do
i += 1
objRpt.SummaryInfo.ReportComments = New String("X", i)
Loop
objRpt.SaveAs("c:\temp\dfh_save.rpt", False)
Catch ex As Exception
MsgBox("i: " & i)
MsgBox(ex.Message)
End Try
End Sub
I am able to put has many characters if I insert the report in the Vs2010 Solution.
If you prefer I can send you my little project.
Thank you.
Charles
<code> should be
Edited by: Don Williams on Feb 4, 2011 12:47 PM -
Error while trying to load Crystal report via Windows service
Hi,
I am trying to generate PDF file using crystal reports. I have developed a console application which works absolutely fine, however when I converted the code to work as windows service (wcf hosted in Windows service), this below error I see from stack trace:
Load report failed.
at CrystalDecisions.ReportAppServer.ReportClientDocumentWrapper.EnsureDocumentIsOpened()
at CrystalDecisions.CrystalReports.Engine.ReportDocument.Load(String filename, OpenReportMethod openMethod, Int16 parentJob)
at CrystalDecisions.CrystalReports.Engine.ReportDocument.Load(String filename)
at AtDataWindowsService.GetData.generatePDF(DataTable dt)
The code used is:
CrystalDecisions.Shared.ExportFormatType exportFormat;
ReportDocument reportObj = new ReportDocument();
exportFormat = CrystalDecisions.Shared.ExportFormatType.PortableDocFormat;
//Load the Crystal Report
reportObj.Load("CrystalReport.rpt");
reportObj.SetDataSource(dt);
What might be going wrong here?Hello,
Thank you for your post.
Based on your description, I am afraid that the issue is out of support of VS General Question forum which mainly discusses
WPF & SL designer, Visual Studio Guidance Automation Toolkit, Developer Documentation and Help System
and Visual Studio Editor.
I suggest that you can consult your issue directly on SAP Crystal Reports:
http://scn.sap.com/community/crystal-reports/content?filterID=content~objecttype~objecttype[thread]
for better solution and support.
Best regards,
We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
Click
HERE to participate the survey. -
Error while loading Crystal report
Professionals'
I have encountered an error while opening a crystal report 2008, I am using VB.NET 2005 with Business One. When I am running the source code it works fine. With ARD I am getting problem "Crystal report can not open". What should be the solution for that? I made ARD with all the required reports and added all DLL required for it.. Is it required to add any crystal report reference when creating ARD?
Thanks.Hi,
Are you checking the Addon in the Client or in the Working Machine....?
if it is client Machine install the Crystal Runtime and Check it out....
With Regards,
Madhu -
Loading Crystal Report 2010 Error
When I try to install C# application that I created at the client's workstation, i am getting an error about not getting my report loaded. The application loads the report working in my development workstation, but when i installed in the other workstation, then it will not load the report. I have installed Visual Studio 2010 with CR 2010. I had created the reports with Crystal Report 2008, and want to migrate to VS2010.
Here's what I get from the client's workstation:
Method 'get_ReportRequestStatus' in type 'CrystalDecisions.ReportAppServer.ReportClientDocumentWrapper' from assembly 'CrystalDecisions.CrystalReports.Engine, Version=14.0.2000.0, Culture=neutral, PublicKeyToken=692fbea5521e1304' does not have an implementation.
I have all my CR *.dll referrenced to the latest one, but I am not sure if I am using the right *.dll.
Thanks for any input on this. It'll be greatly appreciate it.Correct, you are using the beta version of the runtime.
Search here on how to remove version 14 and use the RTM release version 13.
Thank you
Don -
Issue while loading crystal Report.
Hi ,
Crystal report is getting loaded properly in the VS Viewer for Crystal report when we preview the report but when the same report is being loaded through application then following errors are being displayed:
1) "Object reference not set to an instance of an object." - - In the debug mode
2) "Load Report failed." - In the release mode.
The issue is not getting reproduced when we are viewing report directly in the VS-2012. Also there is no exception being raised in the code.
Crystal report version : VS13_0_5You are using Service Pack 5, current SP is 9. I'd recommend updating your install to that - not that the error has anything to do with the SP, but you always want to be as up to date as possible(?).
If you Google "Object reference not set to an instance of an object.", you will get a lot of help. Usually the error is a programming issue.
Your best bet is to look at a few samples here:
Crystal Reports for .NET SDK Samples - Business Intelligence (BusinessObjects) - SCN Wiki
Developer Help files are here:
SAP Crystal Reports .NET SDK Developer Guide
SAP Crystal Reports .NET API Guide
I'd also suggest reviewing the document Crystal Reports for Visual Studio 2005 Walkthroughs. No worries about the reference to VS 2005. Pretty well everything in that document applies to all subsequent versions of .NET and CR.
- Ludek
Senior Support Engineer AGS Product Support, Global Support Center Canada
Follow us on Twitter -
How to get the list of parameter and set them using RESTFul WS for a Crystal Report
Hi All,
I am able to schedule a Crystal report using following POST Restful call - http://localhost:6405/biprws/infostore/4738/scheduleForms/now and with a request xml body. But report is failing because I am not passing the parameter.
But I need pass parameters/prompts to the Crystal report to execute successfully.
What is the request XML to pass the parameter for the report?
I was able to do this for WEBI reports but I am not able to find any way to do this for Crystal reports?
Any help on this matter is really appreciated.Hi Venki
Please have a look at:
How to pass parameters and generate the report using RESTful API in VB.net
This is also described in the Developer Help files:
http://help.sap.com/businessobject/product_guides/sbo41/en/sbo41_webi_restful_ws_en.pdf
- Ludek
Senior Support Engineer AGS Product Support, Global Support Center Canada
Follow us on Twitter -
Support for older Crystal Reports .rpt files in BOE XI 3.1
Does anyone know how far back you can go with Crystal Reports objects in BOE XI 3.1? In other words, what's the oldest version of Crystal .rpts that are supported in BOE XI 3.1? Can you run Crystal Reports 9 .rpt files? I'm trying to keep from having to update around 4-5 thousand older .rpts files for an upgrade to BOE XI 3.1.
If we have to do a mass upgrade to CR 2008, what's the best way to do that?
Edited by: Michael Garrett on Aug 23, 2011 4:46 PMHi,
from an upgrade perspective you can upgrade from CE9 to XI 3.1. Check
https://websmp105.sap-ag.de/~sapidb/011000358700001646952008E/xi3-1_bip_upgrade_en.pdf
(S-User needed)
Do you have a running CE9 installation? If yes i would recommend upgrading this to XI 3.1 as described in the Guide. Or have you these "4-5 thousand" CR9 documents local on a file location?
Regards
-Seb.
Maybe you are looking for
-
Hi All, I have a query on Invoice workflows . I'm trying to design an invoice workflow for Qty Block ( as there is no standard one ... although there is one for Priceblock). The event QuantBlock exists in the business object BUS2081 .but no method li
-
An answer regarding language and TOC
I am writing this little post because I know how frustrated you can become about small, small things. Things that make your book not entirely into your own language. I have posted questions in many threads - and finally got a solution for us who are
-
Macbook Pro 2011 Fan cannot run higher than 1000 rpm
My MBP fan is making loud noises like something is jamming it so it has to work harder than usual to spin. Right now it is running at about 900 rpm according to smcFanControl. My temperature is ~60ºC (not sure if this relevant). I have tried taking o
-
JSP parsing different between JDev 903 and 9ias 9.0.3
Ok -- we have code which looks like the following: <SELECT name="app_region_id"> <OPTION></OPTION> <jbo:RowsetNavigate datasource="RegionDs" action="First" /> <jbo:RowsetIterate datasource="RegionDs" > <jbo:Row id="RegionRow" datasource="RegionDs" ac
-
No List of available Adapter in communikation channel
Hallo, when create a new communication channel there will be shown no list of available adapter in the list. We have one SLD for two system; in the other system all adapters will be shown. Thanks in advance, Frank