ANGTE v.3.5 beta released

Posts   
 
    
raist
User
Posts: 114
Joined: 19-Apr-2010
# Posted on: 26-Apr-2012 21:41:10   

About nine months ago, Daelmo developed the original ANGTE templates, and Frans acepted to release ANGTE under BSD license.

Right now, my client has accepted to release a new and highly improved version under the same license. It is now in final beta state but highly stable in our environment (VS2010, SS 2008 R2) We think that sharing it and receive comments and bug reports can improve the final result.

You can find a Northwind demo site in http://northwind.angte-demo.com

It is 99,9% original, automatic generation code. The only change (it is in the Internet with no authentication) has been to remove access to the security classes in de Default.aspx.cs file and in the CustomProfile.cs

The enclosed README file has (I think) all the required information. Comments, questions, bug reports & suggestions are highly appreciated.

Enjoy it.

Raist

daelmo avatar
daelmo
Support Team
Posts: 8245
Joined: 28-Nov-2005
# Posted on: 27-Apr-2012 06:50:08   

Enhorabuena José!

The additions are great, specially the security mappings and the SiteMap. I just read the readme.txt and tried the demo site. I will see if I can make some time this week to test it deeply. Maybe we can merge some features in the original ANGTE code base. I already have some known issues fixed but I didn't upload them yet. I will see what could be done to embrace this effort into the code base. I will keep you posted on this thread.

Thanks for sharing wink

David Elizondo | LLBLGen Support Team
Otis avatar
Otis
LLBLGen Pro Team
Posts: 39588
Joined: 17-Aug-2003
# Posted on: 27-Apr-2012 09:39:58   

Awesome stuff! smile

Frans Bouma | Lead developer LLBLGen Pro
raist
User
Posts: 114
Joined: 19-Apr-2010
# Posted on: 04-May-2012 21:25:56   

Uploaded a new version with some changes. Please update.

04-may-2012: ADDED: Show M:N Related Entities as ListBox: - Included ShowTheseMnRelatedEntitiesAsMultipleSelect entity setting - Modified editControlAscx.lpt & editControlCode.lpt BUGFIX: Fixed some errors on ExcludeIncludeFieldsList for Entity's List & ListReport: - Generated names where wrong when the Navigator name was not that of the related entity 27-apr-2012: BUGFIX: Fixed some errors on SpMappedTypedViews: - Filtered results called fill twice - Allow no Parameter default value (defined in Custom Property) if parameter is optional - SpMappedTypedViews parameters order ADDED: Include AllowMenuItemIfHasNoRoles project Custom property to be used by CustomSiteMap

daelmo avatar
daelmo
Support Team
Posts: 8245
Joined: 28-Nov-2005
# Posted on: 06-May-2012 20:59:11   

I've started looking into this. I'm doing some file-diffs to understand where are the changes and which ones should be included in the ANGTE repository.

Do you think all the changes will be usable by the users of ANGTE? i.e. the 'RoleProvider' and 'Data access filtering' are optional, or they MUST be implemented? (Maybe some people don't use this or they are doing the role provider in a different way)

We could merge the bug-fixes into ANGTE and create a fork for this ESDBEditor customization. What do you think?

Anyway I will have a better picture these days simple_smile and let you know.

David Elizondo | LLBLGen Support Team
raist
User
Posts: 114
Joined: 19-Apr-2010
# Posted on: 07-May-2012 11:30:21   

Hi David, Quite a lot of diffs disappointed

In short: - Security part is optional. Once loaded, RoleProvider is mandatory, ProfileFilters are optional. - We'd like functionality and bug suggestions. A fork would be OK (IMOO I'd include in ANGTE the security & databinding with Event handlers part)

We tried to keep this code as implementation agnostic as possible (we have integrated it with backoffice workflow & WCF services, and we use client certificates for authentication, but you will not notice it). Only the Spanish labels could be a pain in the neck (sorry, we postponed multilanguage support till next year... at least).

**Our experience with Llblgen Pro: **- Llblgen Pro is a gorgeous & mature ORM (Entity FW needs to evolve yet), but it is much more: a great model designer & template system. - It reduces the development cost & time. - A good use of custom templates provides a common architecture -> allows the less experienced coders to catchup and be more productive. Common solutions are reused (its cost drops down: it's not "code vs. understand & integrate" but "code vs. plug") - Code for your particular application in VS as usual. If the code is reusable add the code to the template (it usually means changing things like "Product" with "Entity.Name", not hard staff).

My concerns: ** - I cannot find Llblgen developers in the Madrid-area. - We're pretty new with Llblgen. I wouldn't like to run to notice latter on we missed something important (ex. Fields mapped onto related fields? What are they for if you have TypedLists? confused ) - The more a template set is used, the better. That's why we're sharing. If you get any bugfix in ANGTE, we can update ESDBEditor. ** That said, what is the expected use (IMOO): - DBEditor (standard GUI templates). Use example. - ANGTE. Functional web site to start with (for example, to get the initial databinding code of my own templates for MVC). Learn about the Llblgen FW. Notice the databinding, use the prefetchpath, ExcludeIncludeList, blabla. The security part is missing and should be there (you always will need to filter results by user). I think it should be included. About the SpMappedTypedView I'm not so sure, the web server filtering can lead to very bad practices. - ESDBEditor. Fully functional web site with a particular look & feel. That include breadcrumbs, savedlinks, etc. It's nice functionality, but not used everywhere.

ON THE TECHNICAL PART It has other restrictions by design: - No Javascript. That's a strong one... but it's a client requirement to be WAI AA compliant. - Plain-old classic ASP.Net. Not a problem really. Let's see how MVC maturity evolves in the next years.

On 12th Aug I did my last commit to the ANGTE repository. You can start from there.

On the security part (RoleProvider, Profile & SiteMap): - It is optional. The SDE_GeneralUtils.SecurityEntitiesLoaded method looks for a Security.BaseProfile entity. If found, the security code is generated. - RoleProvider & Sitemap. Standalone providers. Can be used with no profile filtering (but gets the roles list & user mapping to roles from the database, just generate the profile entities with no additional fields, like ManagerProfile) - Filtering & Profile. All the filters code is in CustomProfile.cs (generated from the GUI XML file). Every control: - gets a _profileFilter and uses it when the filter is set. - On load, calls its HideProfileControls() method to hide fields, actions, etc. - All the code is in GUI\CodeApp\Custom*.cs

The Breadcrumb & SavedLinks: - They are two controls in the Base Master page. - Its main purpose is to save and load back a bucket (RelationPredicateBucket or SpTypedViewBucket) to the page. - Therefore all the pages must call Master.UpdatePageCrumb to know if it must update the bucket, title or whatever (the Master knows if it is a call to a savedpage, or a breadcrumb) - If there is no security loaded, the savedlinks are stored in HttpSession.

My suggestion: 1.- Start with a standard Northwind without security. Main changes: - Sorting, prefetchpaths & IncludeExcludeLists - EntryPoints (OnUpdate(currentElement), etc.) - Breadcrumb & SavedLinks 2.- Configure the security part.

If you need any Skype talk or access to the Assembla repository to follow the changes, you still has my email. Let me know.

Best regards,

Jose

raist
User
Posts: 114
Joined: 19-Apr-2010
# Posted on: 05-Jun-2012 19:58:20   

I can imagine there are quite a lot of changes. Should I expect any feedback / comments? Does sb. need any help?

TomDog
User
Posts: 618
Joined: 25-Oct-2005
# Posted on: 24-Sep-2012 13:10:53   

daelmo wrote:

Maybe we can merge some features in the original ANGTE code base. I already have some known issues fixed but I didn't upload them yet. I will see what could be done to embrace this effort into the code base.

FWIW It would be great to see some of the ESDBEditor stuff added in or failing that those fixes uploaded.

Jeremy Thomas
raist
User
Posts: 114
Joined: 19-Apr-2010
# Posted on: 24-Sep-2012 14:01:45   

This summer we have fixed some bugs and added the following functionalities: - Enum fields support - Forf fields support - Inheritance support (fields & relations)

I'd gladly upload the new version, but I'm not so sure if somebody else finds it useful.

daelmo avatar
daelmo
Support Team
Posts: 8245
Joined: 28-Nov-2005
# Posted on: 25-Sep-2012 08:12:05   

Hi Jeremy,

As a matter of fact I've a fork's working copy with lot of fixes/new features provided by Jose. I haven't had the time to to do final adjustments/tests, but I hope I will include those in the ANGTE repository in a near future.

So, keep looking forward for it wink

David Elizondo | LLBLGen Support Team
raist
User
Posts: 114
Joined: 19-Apr-2010
# Posted on: 23-Oct-2012 18:22:18   

Six months without comments about usage make it difficult for us to justify keeping a sync repository. Therefore, I have removed the code from this forum. We keep improving and using it internally. Please, feel free to use or upgrade it as you wish.

Regards, Jose