Tableau wrong download (export) layout from server final user view - layout

I need some help with this issue. But first I should explain a little more of the use case.
I have a dashboard with 25 woksheets (graphs). Each worksheet is visible to the user, so if he wants to export a single graph, it should be possible. For achieve that, I think it may be an option to use the standard Download function in the server final user view, and select the wanted format (PowerPoint, PFD, etc). The dashboard size is 1400px (w) by 6100px (h) , and each worksheet has 1400px (w) by 400px (h)
When I try to export the worksheets (individually or not), or selecting them from the option "Export selected views", the layout of the graphics is wrong for the PowerPoint or PDF formats (too streched and thin). The user wants 1 worksheet per page, covering entire page.
I have to mention that when I do the same export in the edition mode on Server or Desktop, the export works well! Only works wrong in the web server user view.

Related

Excel: import from web

For some reason, the web import fails with this website! What I am looking for is the table that is generated after choosing the needed filter.
https://support.microsoft.com/en-us/lifecycle/search?alpha=windows%2010
The required table appears in the "New Web Query" window, but when I click import if fails to import returning an Error Msg "This web query returned no data".
Thanks,
These steps work for me:
Create a new blank workbook (I'm using Excel 2016.)
Go to Data tab → From Web
In the From Web window paste: 1https://support.microsoft.com/en-us/lifecycle/search?alpha=windows%20101 and then click OK
Click Table 0 and then Load
A few seconds later the data is loaded.
Update:
I noticed that after I repeated the same steps 3 or 4 times, the page no longer loads for me, which is likely due to the site detecting scraping and temporarily blocking me (and probably the same for you).
Anyway here is a link to a workbook via Jump Share with the table attached & loaded for you. Note that it won't work on the web version, you'll need to download with the blue Download button.
Let me know if it works for you.
Update #2:
An alternative option is to use the pages' CSV Export rather than scraping the page:
Go to Data tab → From Text/CSV
In the Import Data dialog, paste this address:
https://support.microsoft.com/api/lifecycle/GetProductsLifecycle?query=%7B%22names%22:%5B%22windows%252010%22%5D,%22years%22:%220%22,%22gdsId%22:0,%22export%22:true%7D
Leave the defaults as-is assuming they are:
File Origin: 65001: Unicode (UTF-8)
Delimiter: Comma
Click Load. A moment later, the data appears as a table on a worksheet.
🇨🇦

Adding USER CONTROL to VB6 form on load?

I have a form where Client Info will be displayed. What I did is I created a user control with a bunch of textboxes lined up next to each other for Fname, Lname, Dob, SSN, etc. On the form itself, I created a copy of the user control but with labels to display the information that I'll in the USER CONTROL itself. So on FORM_LOAD, I'm pulling data from the server and I need it to add just as many USER controls as I have Clients in the database. The problem I'm seeing is, each time I add a control with this statement
Dim myCtl As Control
Set myCtl = Controls.Add("Project1.UCclient", "MyCtl", frmClientUC)
myCtl.Visible = True
....the user controls name gets incremented by one. So the first one I added on the form is ucclient1, then if i add another its ucclient2 and so on. Additionally, i loaded one of the USER CONTROLS with data (just to make sure it worked), I had to specify which ucclient I was referencing. So for the first one that I loaded I SELECTED data from SQL-SERVER then did this...
ucclient1.fldFirstName =RS!FirstName
ucclient1.fldLastName = RS!LastName
...and so forth for all the other fields. Because I have to specify what user control form I'm putting the data into, is there a way for it to increment it by itself? Possibly looping? I'm a newbie in VB6 and I'm just having a difficult time makign this work harmoniously without a 1000 lines of code.
You would do it the same way that you would any control. Put one control on the form in design mode. Set its index property to 0 to make it a control array. (If you have a context where you don't want any controls, then make it invisible and then make it visible when you need it.) Then add more controls as you need them, setting the Top and Left properties to position them on the page.
Here is the doc for adding a control to a control array at runtime.
Ok. I've found out a new way. It works well.
+ At form1, add a new user control (U1).
+ Copy code U2 (The User control of another project) into U1. Save it with the same name.
+ Close U1
+ At Form1, open ToolBox and click U1. There is an error message apear and you'll see the name of control missing (missing name).
+ Open the propertice of U2. Choose the missing name to see kind of control.
+ Open U1 and add the control and name it as the same name (missing name).
+ Return Form1 and click U1 in Toolbox to add control U1.
+ Make propertice U1 as same as U2.
sorry about my English.

Proper Kentico object for non-user-editable block of static html/javascript

The Situation: I've got a mid-sized chunk of html/javascript that contains an authentication script/input (it's a text input, radio control, and a combo box and a few buttons). What it is is less important than the concept that it's a mass of static client side code that the marketing department can pretty easily accidentally the whole thing.
The Desire: I want the users to be able to add it as a whole to a page, but not be able to modify it. When something needs to change, I want to change it in one place and have it be changed on all the pages.
What I've Tried: Widget with a default text. It works, but feels wrong. Users can edit it, and if they do when I fix it one place it doesn't propagate to all the instances. I'm a bit of a Kentico noob, but it seems like there should be a better way to do this.
Also note: I'm using portal engine if that makes a difference.
A widget is the proper usage. What you make your widget inherit from is the key in this case. I'd suggest creating a new widget based on a static HTML webpart. This way you can set the static HTML markup and hide the property from the content editor on the front end. You can do this by going to the Properties tab of the widget and setting the visibility of the field on the form. Don't delete the field, just hide it. It should be a checkbox that says hide on public form or editing form.
** Edit **
As I read through my answer and comments, I realized I meant to say clone the static HTML webpart and set its default text to your javascript. Then create a widget based on that cloned webpart. The text will reside in the web part and will allow you to update it in one place later, if needed.
I will not do it this way because you will be not able to make changes in the future. You can better create a new webpart this can be an empty webpart and then create a custom layout. In this layout you can put you're code. In this way you can always change you're code in the future and then it will be changed on all the places where the widget is placed.
I'd use a new widget based on the Static HTML webpart (make the field read only or hide it as Brenden mentioned), but store the data in a new custom setting.
no coding needed (only a macro to read the custom setting)
able to edit the script on the fly on any instance in the settings module. If you have multiple of these settings you won't need to go through all kinds of widgets to adjust their default setting but find them on a central place.
Cheers!
David
In this case I think it makes sense to create a custom web part to store all your code in it and use it that way. If you want to achieve it without creating a custom web part, you have to store the code in some non-web part and not widget specific object. I like the suggestion of creating a custom setting. You can then access this custom setting via a macro. This macro can be used as a default property of a newly created web part (inherited e.g. from the static text web part, you'd use the text property). You may as well create a widget out of it. Another approach is to use Kentico localization keys as a workaround. you can create a key in the Localization application and access it again, via a macro, e.g. {?customkey.myhtml?}. The approach with a custom setting however sounds cleaner to me.
This syntax should be working to access a custom setting value via macro:
{%Settings.CustomSettings.xxx%}
{%Settings.CustomSettings["xxx"]%}
{%Settings.CustomSettings.GetValue("xxx")%}

Command Not Handled Exception

I'm new to Domino Designer. I'm trying to modify an existing application which is running on a remote server. I create a blank xPage and view in browser and it works. I add a label and view in browser and it works. I add a combo box and setup a data source for my xPage. The data source is in the current application and I'm using a view. I setup my combo to point to that data source and specify BindTo value. I view it in browser and I get Error 500 "HTTP Web Server: Command Not Handled Exception" I can open the view that I've used and see all the data in the view. I can even add, edit, and delete from the view.
Ideas... Thnxs in advance.
Additional Info. I've added a "View" from "Container Controls" and used the same data source and the same view and it also works in the browser.
The error being printed is:
javax.faces.el.PropertyNotFoundException: Error getting property 'CompanyName' from bean of type lotus.domino.local.View
com.sun.faces.el.PropertyResolverImpl.getValue(PropertyResolverImpl.java:119)
com.ibm.xsp.el.PropertyResolverImpl.getValue(PropertyResolverImpl.java:144)
com.sun.faces.el.impl.ArraySuffix.evaluate(ArraySuffix.java:182)
com.sun.faces.el.impl.ComplexValue.evaluate(ComplexValue.java:163)
com.sun.faces.el.impl.ExpressionEvaluatorImpl.evaluate(ExpressionEvaluatorImpl.j‌​ava:257)
com.sun.faces.el.ValueBindingImpl.getValue(ValueBindingImpl.java:150) ....
This was already answered in the comments, but I want to write a better answer.
The problem in this case is that a view data source is being used for editing a document. Directly, this is not a possibility, though there are a few great ways to get around this. The first way, and my favorite, is to use an inline form. I think the Extension Library Demo database offers a few great examples of how to go about doing this. One way is to use a tooltip dialog. Another way is an inline form. A repeater is used and for every row in the view, a hidden panel can be made which contains the document data source and all field which are required to be changeable. By clicking on a button or link, the panel is made visible. This is my favorite variant because it is simple, quick, and generally looks great.
Another way to go about this is to have a view data source only, but use scripts to retrieve the document and set the values in the background and then save and release. It all depends on what you are trying to achieve.
My main recommendation is to look at the ExtLib demo and take a look at what they are doing there.

Why is my fileDownload control showing the trashcan even in read mode?

This is a rather strange one I think, and I'm sure I made a mistake here myself:
in one of my applications I'm showing a fileDownload control bound to a Richtext field in my underlying NotesDocument. The control's properties a are set to Hide if no attachments, show size, type and created as well as allow delete. The control itself sits inside a custom control, being part of another custom control, similar to this:
Xpage.xsp
- ccContainer
- - ccInnerDoc
Document datasources for both the container and the "inner" doc are defined at the root of ccContainer and passed into the inner doc.
The inner doc's datasource is comnputed based on a document selection, and it's igenoreRequestParams property is set to false so that I can display the contents of the selected datasource in a given panel etc.
The selected doc is first opened in read mode, and I can set it to edit mode using a button.
Problem now is that my file download control always is showing the delete icon (trashcan) no matter which mode the doc is opened in. And it's not only the icon showing, it also pretends to work by asking me whether I really want to delete and then really removes the file attachment. Only that this change of course cannot be stored into the datasource because it's only open in read mode.
I'm sure that this behaviour is some side-effect of something else in my application (to a certain extent I rebuilt this in a plain new db and until now cannot reproduce it), but I'm at the end of my knowledge of what this could be.
Any hint of what could be causing this is more than welcome.
In place of #Frantisek Kossuth I answer this myself: see compute dynamically the allowDelete property of file download xpages
Thanks again, Frantisek!

Resources