on 2014 Feb 06 2:59 PM
Hi All,
This is somewhat of a complex issue so hopefully I can explain it well to you all.
My company uses a piece of accounting software which also acts as a CRM and a means of distributing notices to investors. You can use crystal reports in two places, a report wizard which simply runs the crystal for whatever parameters you've selected and the other is called reporting services (RS). In reporting services, you can attach a crystal to a package and then generate that package to disseminate items to LPs.
There are several issues we're having with crystal in report wizard and reporting services. When asked about them, the vendor is telling us that the SAP Business object components are the issue and that there's no resolution as these are known issues in SAP. Further, the vendor doesn't support any crystal version above Crystal Reports 11.5.9.1076 (this is the version I use), which in my opinion is crazy because that's several years out of date. The first issue is that justification doesn't work at all once you place the crystal inside of report wizard or reporting services.
As you can see, the text gets completely jumbled when justification is present. I've tried updating my visual studio for Crystal Reports 2010 to SP 8, to no avail. I'm fairly certain that within the vendors software folder there is likely a DLL file that's being called so that it can read the crystal. Maybe if I find that and update it, it should be resolved? I would greatly appreciate any suggestions here!
The second issue is that when it prints a crystal to PDF in reporting services, it seems that there is some setting that is being triggered to shrink the text to fit the page. In the crystal file used, I've tried shifting all of my canvas items so that they're definitely fitting on one page, but this still triggers the setting.
(In the example below, the first item is directly from crystal, the second is after generating the package in reporting services).
As you can see here, the "superscript" box shifts over several millimeters. Unfortunately, I can't show you the entire page which would really demonstrate the issue further.
Since this is a foreign piece of software, I'm not sure how much you all could help me. What I really want to do is try and pinpoint the SAP Business components that are being called when I run a report to see if I can update the file. Any help on this would be greatly appreciated!
Thanks,
Brandon
Hi Jamie,
When you say insert your field here, are you referring to a Boolean formula which computes whether or not a field should have superscript?
Thanks,
Brandon
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
hi Brandon,
the formula above will act as the new output on your report instead of the field that you had on the report. i.e. just substitute the variable s for your field, and then put the formula on your report canvas where you had the field before.
in order for this to work, the formula also requires you to specify the value that indicates that the subscript (or superscript) is starting and the value that indicates when that script ends.
have a look at the blog post here which may explain it better and also has an example of the input and what the output is.
i hope this helps,
jamie
Hi Brandon
To add a bit more info to Don's post. The version of CR XI R2 you are using (11.5.9.1076) which is from Service Pack 3. Service Pack 6 for CR XI R2 was the last SP released for this version and the file version would be 11.5.12.1838. See this wiki for more details. There were many, many changes and improvements to CR between SP 3 and SP 6. Unfortunately, as Don explained, you can not update the application from 11.5.9.1076 to 11.5.12.1838, not unless you have the source code anyhow.
Additionally, we have no idea how the author of the software implemented Crystal Reports in the application, so tough to help much.
You may want to try and experiment with printer drivers as these affect CR substantially. E.g.; try different printer drivers as default (this is predicated on the assumption that the author of the app does not set the driver at runtime). Look at the "No Printer" option, what ever it is set to set it to the opposite (e.g. on or off). If the reports are using some unusual font, make sure the app has access to the font (e.g.; it is not a licensed font). See if setting the report to use another font family will help.
But that is about it. Without the help of the author of the app, we're shooting in the dark...
- Ludek
Senior Support Engineer AGS Product Support, Global Support Center Canada
Follow us on Twitter
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
hi Brandon,
regarding the superscript issues, you may wish to give this a try, assuming that you've got a database field which identifies where your subscript or superscript is. this would eliminate having to have a separate text object for subscript or superscript.
1) create a formula and paste in the syntax below
2) substitute the value for the s variable (line 1) with your field
3) substitute the identifiers in the formula for subscript and superscript with the ones that you have in your db
please also let me know if this works for you as it hasn't been heavily tested.
-cheers,
jamie
stringvar s; // set this to your field
// set these next four values to the separators used in your code
stringvar subS:= '<sub>'; // beginning of a subscript
stringvar subE:= '</sub>'; // end of a subscript
stringvar supS:= '<sup>'; // beginning of a superscript
stringvar supE:= '</sup>'; // end of a superscript
// the syntax below does not need to be changed
// this part deals with subscript
stringvar array sa:= split(s, subS);
while numbervar i < ubound(sa) do
(
i:= i + 1;
stringvar t:= sa[i];
if instr(t, subE) > 0 then
(
stringvar t1:= split(t,subE)[1];
t1:= replace(t1, '0', '₀'); // 0
t1:= replace(t1, '1', '₁'); // 1
t1:= replace(t1, '2', '₂'); // 2
t1:= replace(t1, '3', '₃'); // 3
t1:= replace(t1, '4', '₄'); // 4
t1:= replace(t1, '5', '₅'); // 5
t1:= replace(t1, '6', '₆'); // 6
t1:= replace(t1, '7', '₇'); // 7
t1:= replace(t1, '8', '₈'); // 8
t1:= replace(t1, '9', '₉'); // 9
t1:= replace(t1, '+', '₊'); // +
t1:= replace(t1, '-', '₋'); // -
t1:= replace(t1, '=', '₌'); // =
t1:= replace(t1, '(', '₍'); // left parenthesis
t1:= replace(t1, ')', '₎'); // right parenthesis
t:= t1 + split(t,subE)[2];
);
stringvar output:= output + t
);
// this part deals with superscript
s:= output;
i:= 0;
output:= '';
stringvar array sa:= split(s, supS);
while numbervar i < ubound(sa) do
(
i:= i + 1;
stringvar t:= sa[i];
if instr(t, supE) > 0 then
(
stringvar t1:= split(t,supE)[1];
t1:= replace(t1, '0', '⁰');
t1:= replace(t1, '1', '¹');
t1:= replace(t1, '2', '²');
t1:= replace(t1, '3', '³');
t1:= replace(t1, '4', '⁴');
t1:= replace(t1, '5', '⁵');
t1:= replace(t1, '6', '⁶');
t1:= replace(t1, '7', '⁷');
t1:= replace(t1, '8', '⁸');
t1:= replace(t1, '9', '⁹');
t1:= replace(t1, '+', '⁺');
t:= t1 + split(t,supE)[2];
);
stringvar output:= output + t
);
output
Hi Brandon,
Not clear how CR for VS is involved but doesn't matter. If they don't support anything above CR XI R2 which was end of life a few years ago not much we can do. There was a final patch for Service Pack 4 and Fix Pack 6 but they need to update to that final version and update their install packages. I don't suggest updating the runtime yourself so check with them if they are using the latest. You can search for crpe32.dll and that should tell you what version they are installing.
For the reduced font's you need to adjust the tree so you add this to the XI R2 registry tree but add this key, it's a DWORD:
HKEY_CURRENT_USER\Software\SAP BusinessObjects\Suite XI 4.0\Crystal Reports\Export\PDF - ForceLargerFonts and set it to 1.
Should fix your export problem.
Search for this in this forums and you'll likely find exact tree structures.
Good luck
Don
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
81 | |
11 | |
10 | |
10 | |
10 | |
8 | |
7 | |
7 | |
5 | |
5 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.