• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag
 

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: D2W app and Excel and PDF generation example (also msg for David Holt)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: D2W app and Excel and PDF generation example (also msg for David Holt)


  • Subject: Re: D2W app and Excel and PDF generation example (also msg for David Holt)
  • From: David Holt <email@hidden>
  • Date: Fri, 05 Aug 2011 10:21:52 -0700

Hi guys,

SimpleBlog also has an example of this stuff including ERModernLook compatible CSS for the ERDControllerButton. I think that ERDActionBar might be more appropriate for this because it provides a button at the page level, but there is certainly nothing stopping you from creating your action in your table's rows.

Here is the answer to your specific question about the button appearing all over the place:

50 : *true* => controllerButtonComponentName = "ERXEmptyComponent" [com.webobjects.directtoweb.Assignment]
60 : pageConfiguration = 'ListMyBlogEntry' => controllerButtonComponentName = "ERDControllerButton" [com.webobjects.directtoweb.Assignment]

David


On 2011-08-05, at 1:38 AM, Philippe Rabier wrote:

> Hi Johan,
>
> (David, Q for you at then end)
>
> I have the same issue: I want to generate export list into an excel file but I didn't completely succeed because it took too much time to get it work (question of priority).
>
> But I'm not far. So if you are using ModernLook, I found  informations: search in the list a msg sent by Markus Ruggiero in march (or look for ERDControllerButton)
>
> What you have to do, is create a controller (see the java class in attachment, small code that exports statistics, only not every list).
>
> I created 2 rules like this one (for each entity and I give you a real code because it's coherent with java class so it's less confusing) :
> {
>    author = 100;
>    class = "com.webobjects.directtoweb.Rule";
>    lhs =     {
>        class = "com.webobjects.eocontrol.EOAndQualifier";
>        qualifiers =         (
>                        {
>                class = "com.webobjects.eocontrol.EOKeyValueQualifier";
>                key = "entity.name";
>                selectorName = isEqualTo;
>                value = NODailyStatistic;
>            },
>                        {
>                class = "com.webobjects.eocontrol.EOKeyValueQualifier";
>                key = task;
>                selectorName = isEqualTo;
>                value = list;
>            }
>        );
>    };
>    rhs =     {
>        class = "er.directtoweb.ERDDelayedObjectCreationAssignment";
>        keyPath = pageController;
>        value = "fr.sophiacom.app.ListStatisticsController";
>    };
> }-----------------------------------------
> A rule for the file content like this:
> {
>    author = 100;
>    class = "com.webobjects.directtoweb.Rule";
>    lhs =     {
>        class = "com.webobjects.eocontrol.EOKeyValueQualifier";
>        key = pageConfiguration;
>        selectorName = isEqualTo;
>        value = ListExcelNODailyStatistic;
>    };
>    rhs =     {
>        class = "com.webobjects.directtoweb.Assignment";
>        keyPath = displayPropertyKeys;
>        value =         (
>            "application.name",
>            day,
>            nbSingleNotification,
>            nbMassiveNotification,
>            nbNotification,
>            nbAppReleaseCreated,
>            nbAppReleaseRemoved
>        );
>    };
> }
> -----------------------------------------
> and one rule to make the controller button working:
> {
>    author = 100;
>    class = "com.webobjects.directtoweb.Rule";
>    lhs =     {
>        class = "com.webobjects.eocontrol.EOKeyValueQualifier";
>        key = propertyKey;
>        selectorName = isEqualTo;
>        value = controllerAction;
>    };
>    rhs =     {
>        class = "com.webobjects.directtoweb.Assignment";
>        keyPath = componentName;
>        value = ERDControllerButton;
>    };
> }
>
> But after that, I didn't see any button in the UI :-(
>
> I found the solution in the wiki, I guess: you have to modify the css (I suppose you have your own css).
> By default:
> .ERDControllerButton {
> 	display: none;
> }
>
> and put something like that (I'm not good at all at css)
>
> /*  Beginning ERDControllerButton */
>
> .ERXJSFlyOver span {
> 	left: 45px;
> }
>
> .ERXJSFlyOver li {
> 	display: block;
> }
>
> .ERDControllerButton {
> 	display: block !important;
> }
>
> .ERDControllerButtonLinkList {
> 	display: inline;
> 	margin: 0px;
> 	padding: 0px; /* 0px */
> }
>
> .ERDControllerButtonLinkList li {
> 	display: inline;
> 	margin: 10px;
> 	padding: 0px;
> 	font-family: Arial, Geneva, sans-serif;
> 	font-size: 9px;
> }
>
> .ERDControllerButtonLinkList li a {
> 	padding: 0px 5px;
> }
>
> /* uistyle = "flyOver" */
>
> .ERDControllerButtonFlyOverList {
> 	background-color: #414B5E;
> 	color: #C2C6CF;
> 	border: 1px solid #333;
> 	width: 150px;
> 	padding: 0px;
> }
>
> .ERDControllerButtonFlyOverList a {
> 	color: #CCC;
> }
>
> .ERDControllerButtonFlyOverList a:hover {
> 	color: #FFF;
> 	text-decoration: underline;
> }
> /*  End ERDControllerButton */
>
> And I was able to see the button (a popup actually) and it WORKS. Very happy. But the button/popup appears on "every" screen (query, edit, …). So I stop my research at this time, because, again, it's not my top priority.
>
> During the WOWODC, I discussed with David (Holt) after his session and he gave me a solution but I wrote on a sheet of paper I lost it :-(
>
> <David>
> Can you give us the final step please?
> </David>
>
> Hope this helps you a little bit.
>
> <ListStatisticsController.java>
>
>
> Philippe
> ---------------------------------------------------------------
> SOPHIACOM
> http://twitter.com/prabier
>
> On 4 août 2011, at 11:06, Johan Henselmans wrote:
>
>> I want to add PDF and Excel generation to some pages in a D2W application.
>>
>> I saw some talk about adding Excel or PDF on the mailinglist, but most of it was way over my head, mostly because there seem to be 3 or more ways to achieve the same thing.
>>
>> I looked if I could find some example in the Wonder Examples and the wiki, but did not find it.
>>
>> Is there any concise example that someone can share?
>>
>> (I'd also like to add this feature to ERD2W/CoolComponents, that one could have something like task=list ErPDFDownloadButton=true, if that does not exist already)
>>
>>
>> Johan Henselmans
>> email@hidden
>>
>>
>>
>> _______________________________________________
>> Do not post admin requests to the list. They will be ignored.
>> Webobjects-dev mailing list      (email@hidden)
>> Help/Unsubscribe/Update your Subscription:
>>
>> This email sent to email@hidden
>
> _______________________________________________
> Do not post admin requests to the list. They will be ignored.
> Webobjects-dev mailing list      (email@hidden)
> Help/Unsubscribe/Update your Subscription:
>
> This email sent to email@hidden

 _______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list      (email@hidden)
Help/Unsubscribe/Update your Subscription:

This email sent to email@hidden

  • Follow-Ups:
    • Re: D2W app and Excel and PDF generation example (also msg for David Holt)
      • From: Philippe Rabier <email@hidden>
References: 
 >D2W app and Excel and PDF generation example (From: Johan Henselmans <email@hidden>)
 >Re: D2W app and Excel and PDF generation example (also msg for David Holt) (From: Philippe Rabier <email@hidden>)

  • Prev by Date: Re: setUser() vs. setUserRelationship()
  • Next by Date: Re: Expired sessions and relative image links
  • Previous by thread: Re: D2W app and Excel and PDF generation example (also msg for David Holt)
  • Next by thread: Re: D2W app and Excel and PDF generation example (also msg for David Holt)
  • Index(es):
    • Date
    • Thread