I am fairly new to using BI Publisher (MS Word plugin) with PeopleSoft. I have a payment statement that I am adding some data elements to and I have noticed that with the Invoice Number field in some cases the number/test string is longer and it pushes the column next to it (Gross Amt) down to the row below it, as illustrated below.
The Invoice number is "Final set up testing 1099 2" and the Gross Amt is "1,000.00", however the length of the Invoice Nbr has pushed the Gross Amt to be below it.
Example:
This is how I have the template (RTF file) setup as (both fields highlighted):
Any ideas how I can either give the Invoice Nbr field a fixed width, or somehow prevent the Gross Amt from pushing down to the next line below?
Based on that behavior I am wondering whether the content area is a table. Here is something to try... click on one of those fields and see if you get the "Table Tools" menu in the MSWord ribbon bar. If you do then on the Layout tab select "View Gridlines". That will help to see how the content area is built and how the elements are related.
If the fields are in a table then you can modify the table properties to better control the column and/or cell sizes. Right-click on the values, select "Table Properties." On the Table tab select Options then deselect "Automatically resize to fit contents." Then on the Column tab and Cell tabs you can set column sizes. The Cell, Options allows you to control text wrapping. You would probably want to set a column width for Invoice Nbr, then turn on text wrapping.
If those fields are the same column you may need to split them. If it is not a table then you may need to make one or try some other formatting options in Word.
Related
I have Form1. I have table "Category", now I want to display all CategoryName in to combobox cbbCategory in Form1, the category names data are retrieved from Category table, how can I do this?
There are several ways you can do this, from querying the table into an array, writing as a SQL query, etc and setting up the properties.
What I would suggest for a start is this. Open your form.
Right-click anywhere in the form and pick "Data Environment".
If the category table is NOT already shown in the window, right-click and select Add. It will prompt you to pick a table and select your category table. Then close the data environment.
Now, put a combobox on your form if you have not done so already.
Right-click on the combobox and click "Builder". It will walk you through the selection process to get what you want. Start with picking the table... your category table. Then it has picker next to it to identify which column(s) you want to be displayed in the combobox. If your category table has both an ID and a description, I would pick your description FIRST, then the internal ID column second (so we can hide the second column if you dont want to actually show it).
Click on the second tab for "Style", and to clarify the difference between a "Drop-down Combo" vs "Drop-down List" is that a combo will default show you available choices, but if one is not available, allows a user to manually enter a new one which you might want to allow adding to your master category lookup table. "Drop-down List" is fixed to only allow the user to pick an entry from those available and nothing else.
Next, click on the Layout tab. This allows you to adjust the columns widths to see/hide what it will look like during drop-down mode (just stretch/shrink the columns)
Finally, the "Value" tab. It is asking for which column from those you selected to be available do you want to store behind-the-scenes. If an ID column, so be it... if the description, that's fine too. You can leave the last "Field Name" blank for now and it will just store whatever is selected into the comboboxes "Value" property... from which you can do whatever you need to in next phase of you app.
I am trying to create a report putting a field called contact which has the name of a person. This name is linked directly to another table where I keep all the contacts.
For some strange reason, when I include this name (which in query view displays as the name of the contact), instead of the name appearing, the unique ID number is shown on my report.
As mentioned in the article cited in the above comment, you can use a Combo Box control on your report to do the lookup for you. To see how this can be done, create a new report based on the table containing the lookup field, then drag and drop that field onto the report. That will create a Combo Box control with properties that look something like this:
Row Source: SELECT [Clients].[ID], [Clients].[LastName] FROM Clients;
Bound Column: 1
Column Count: 2
Column Widths: 0";1"
You could use a similar Combo Box control on your actual report to display the client's name rather than their numeric ID value.
Another alternative would be to change the Control Source of the report's Text Box control to have it do a DLookUp() on the table. If the lookup field is named [client] then changing the Control Source of the Text Box to something like
=DLookUp("LastName","Clients","ID=" & [client])
would also work.
I wanted to add to the great answer by Gord:
When using a "web" database (started in Access 2007 I think), you cannot change a report's fields to ComboBox style, nor can you use DLookUp(). (web databases lack a ton of features)
The workaround for this, if you want to create a Web-Report that uses lookup fields, is to create a Web-Query first based on your Web-Table (all the Web-* stuff has a www planet icon over the logo, if you create a new Web-DB in Access 2007+ you'll see what I mean)
So, instead of Table -> Report, you'll have to do W-Table -> W-Query -> W-Report.
Then, the only thing you need to customize to get the data right is the W-Query. Start by trying to reproduce the look in the query to match what you want users to see in the report. Note that here in the query, lookups will work fine (instead of the unique ID's, you get field names like you want). However, this will not carry over to the report. To do that, you gotta get the actual text field name you want into the query:
You should already have one table in your query; start by adding the table that your first lookup field points to. For example, the table I want to print is called Stock_Boards, and it has a lookup field called PCBID_lookup that points to the table Stock_PCBs.
Since you're using lookup fields, there should already be a relationship line between the two tables when you add the second one. If there isn't, something has gone horribly wrong.
Now, see how that line connects two fields on the two different tables? For example, I've got my PCBID_lookup field on my Stock_Boards table, which connects to the ID field on my Stock_PCBs table. If I created a report from this now, PCBID_lookup would be a number, a number that correlates to the ID of a record on Stock_PCBs.
To fix it, I will add the name field I want to show up on the report. In my example, that happens to be a Part Number, rather than the ID. I add the PartNumber field from my Stock_PCBs table to the query, and remove the PCBID_lookup field of the Stock_Boards table from my query.
Since PartNumber is what I want to show up on my report, it effectively replaces the original field (PCBID_lookup)
Repeat for all lookup fields you want in your report.
I had 1 more: I removed the Status field of the Stock_Boards table (which was an ID/Lookup) and added the 'Status' field from the Status table (which was the actual text name)
When finished, your query should look exactly how you want the data to appear, without any special tricks or asking Access to do something unnatural. Save your query, and create a web-report from it. Done!
I am trying to modify the WMSPickingList_OrderPick Report in Dynamics AX 2009.
I am attempting to move the InventDim group onto the same line as the actual Item Line, as it currently prints underneath.
I have tried manually moving the fields, in this case no data appears.
I have tried switching the parameters so that the item dimensions appear after or a part of the item number, in this case it still appears below.
I have also attemped to simply pick up the values in the Fetch statement and pass them to variables, I can see the values being picked up but on returning them in a display method no data appears?
Many thanks for your help in advance.
Go to Accounts receivables > Setups > Forms > Forms Setup
In the "General" tab > "Print item dimensions" group, Select the "Print item dimensions" as "After item number"
I am assuming it is currently set to "Under item line"
The problem with WMSPickingList_OrderPick report is the width of the design, the design doesnt have enough width to print the Inventory Dimensions, they dont appear when u put them in the same line because the columns overlap.
However, one very clean solution can be to use a Display method as datasource for the Item ID (i.e item number) and in that display method just append the dimension.
I don't know if its possible or not, but thought I'd ask. Many times reports need data grouping to have anchored to the bottom of the report some summary information, such as invoices. You don't want the totals shifting UPwards based on only 2 detail lines vs another with 20. I've tried working with using the Tablix bound to the data source for the output but couldn't get it quite right... It would either shift up, or force break and appear at top of following page.
So, if anyone has some ideas to help resolve that, that too would be great.
My second approach was to just use a simple report page footer. However, the overall "Report" page is not technically "BOUND" to any datasource. So, if I put a textbox in the footer and want it to show something, I can't pick "the most recent row from the datasource associated with the Tablix", it always requires an aggregate, such as
=First(Fields!SomeField.Value, "SomeDataSource" )
=Sum( ...
=Last( ...
etc...
I just want it to have whatever was the most recent... so I tried to use report variables to create one and was thinking to have it get updated per row being processed, so it always had whatever the "latest" value was and I could just dump that value at the bottom of the report.
Any suggestions to either would be great. Thanks.
I know this is an old question, but I had a very similar problem and came up with a unique solution. I had a statement that needed to have the payment slip print at the bottom of the page even if the statement line items wrapped over to another page. I solved it by:
Making all rows in the report a uniform height.
Calculating how many rows were required to fill the page (minus the height of my payment slip.
Getting the number of line items in the statement.
Calculating the remaining number of rows needed to push my payment slip to the bottom of the page.
Adding a sub-report with the calculated number of blank rows to pad out the necessary space between the line items and the payment slip.
The advantage of that approach was that I could generate bills for multiple customers, and since the padding is part of the group it would be customized for each customer's bill and bottom-justify the pay slip for each of them.
You can use a similar approach to push your "footer" info to the bottom of your page. Since it is still inside of your data group you'll have access to the data values you need as well.
In the footer you can refer to report item from report body, like this:
=ReportItems!myFooterValueTextBox.Value
The catch is that you can refer to only one report item in your footer, so you may need to add invisible footer row in your table and concatenate all your totals into one cell (myFooterValueTextBox) in that row:
=First(Fields!SomeField.Value, "SomeDataSource") + "|" +
Sum(...) + "|" + .... +
Last(...)
I used pipe as deliminator in my example, so then in the footer, I would split the string and place values in appropriate containers, like this:
=Split(ReportItems!myFooterValueTextBox.Value,"|")(0)
I have a rdl report which contains Legend, chart and rows of records below legend and chart. I got a problem here is I can repeat legent and chard for every type new item but I cannot repeat headers for rows of records. I tried with visibility but did not work. headers are simple as row in the table in rdl report which are required to show date, time, position , like that for every record coming database , any suggestions much appreciated
If you want to repeat header with each row and you are using Visual Studio for designing, it is easy:
Simply click the data row (the one in the middle), right-click it and choose Insert Row Above, in that row you can insert your header text and it will repeat with each row record.
If I haven't deciphered your question correctly, please leave a comment.