Skip to Content
Author's profile photo Former Member

BSP Meet your AJAX Framework: AJS

If you always wished you could make cool looking “Web 2.0” applications in SAP, but were always held up by the fear of writing mounds of JavaScript, today is your lucky day.  Today I am making available a framework, called ABAP JavaScript or AJS for the TLA inclined, to easily develop applications that use AJAX type updating and visual effects straight from BSPs.  Released as always, under the GPL — free as in freedom.

The basis of this “framework” is Ruby on Rails and it’s RJS templates.  The basic idea being the ability to send javascript back and forth between the rendered web page and the server.

The best part is, it’s really easy to use, simply subclass my new Controller and call some “helper” methods and you have access to both the Prototype and script.aculo.us libraries.

For a cursory explanation and example of how it works and what it can do, just watch the movie, it’s about 10 mins.

If you want to help out with the project and/or download the nugget for installation got to the ABAPJS project page.

Big thanks to the Prototype, script.aculo.us and the Ruby  on Rails developers as all this work simply follows in there sufficiently large footsteps.

This is only a beta version of the framework, most of it is done, however, some of the helpers are missing.  If there is interest I ( or someone in the community, hint hint ) will finish the rest of the helper methods and the remaining script.aculo.us controls.

Subscribe to my blogs!image

Assigned Tags

      18 Comments
      You must be Logged on to comment or reply to a post.
      Author's profile photo Former Member
      Former Member
      Dan!!!

      Awesome video! And awesome framework! It's nice to see a quality blog again -;)

      Greetings,

      Blag.

      Author's profile photo Former Member
      Former Member
      Blog Post Author
      I hope people will find this useful, it will just be great to have a way to create a great web experience easily in SAP.

      -d

      Author's profile photo Nigel James
      Nigel James
      Great stuff Dan.

      You really should work for a graphics arts company. That artwork is something else:)

      I was thinking about this very thing not so long ago and glad that someone has done it.

      Cheers,
      Nigel

      Author's profile photo Former Member
      Former Member
      Blog Post Author
      What, you don't like my flaming bag o'crap?  I never said I could draw --- heck i've never said I can code either.

      If you want to get involved let me know so we can be sure to coordinate any efforts.

      -d

      Author's profile photo Rajanikanth Kristam
      Rajanikanth Kristam
      Cool stuff with BSP...your typing speed boweled me.....
      Author's profile photo Former Member
      Former Member
      Blog Post Author
      hate to burst your bubble but the typing was sped up about 50%.  hopefully, the framework still seems like a good idea  🙂
      -d
      Author's profile photo Durairaj Athavan Raja
      Durairaj Athavan Raja
      Amazing work Dan. Excellent idea.

      Raja

      Author's profile photo Marilyn Pratt
      Marilyn Pratt
      So this is what you do when you skip school...uh work...uh...this is work, no?  Can't wait to see what else the community will add to this already very detailed example of UI enhancement.  Talk about improved user experience...speed...simplicity.  So who else will take this and add some methods...
      anyone? anyone? Bueller?….
      Author's profile photo Durairaj Athavan Raja
      Durairaj Athavan Raja
      Hi Dan,

      I am installing this right now, but as per the installation guide, i am suppose to load the application.js (from scriptaculous-js-1.7.0) into the MIME repository. But i dont find it in the download. Am i doing something wrong?

      Thanks in advance.

      Regards
      Raja

      Author's profile photo Former Member
      Former Member
      Hi Raja,
      We initially used this with an older version of script.aculo.us, so application.js may no longer be required. Please try it without and let me know if it works or not so I can update the documentation.

      Thanks for the heads up!
      ewH

      Author's profile photo Durairaj Athavan Raja
      Durairaj Athavan Raja
      Thanks for the info. I will check it out and post the results here.

      Raja

      Author's profile photo Former Member
      Former Member
      Again Daniel, great work. Nice to invention in the BSP area also, especially with the growing focus on model-oriented development.

      It will be interesting to see how the framework will be adopted. Perhaps a SAP certification or official approval of the product would help?

      Author's profile photo Former Member
      Former Member
      Hi Dagfinn,
      An SAP certification would probably increase usage, but it seems that their focus is mostly on ABAP web dynpro these days instead of BSP development. 

      Besides, I think Thomas Jung Trying out AJS and giving it the OK, is way better than any official approval.  =)

      Thanks for the comments,
      ewH

      Author's profile photo Former Member
      Former Member
      Hi Dan,

      my comment may be of topic but did you ever looked at http://jquery.com/? IMHO a very nice JS library and "alternative" to prototype.

      The library is GPL and MIT licensed.

      Regards
      Roger

      Author's profile photo Former Member
      Former Member
      Hi Roger,

      We used prototype because of it's usage in Rails, and we were trying to make something for ABAP that would be consistent with RJS (Ruby JavaScript).  We have been using Rails quite a bit lately, so it's nice to be able to switch back and forth easily, but I would be interested in hearing more about your likes and dislikes of JQuery.

      Cheers,
      ewH

      Author's profile photo Former Member
      Former Member
      Hi Dan

      Actually I just started to use the library but some of their arguments are:
      - Small footprint (19kb)
      - CSS3 compliant
      - Fast
      - OpenAjax complient (http://www.openajax.org/)
      - Chainable
      - Easy plugin development and support

      BTW There is also a JQuery on Rails project on its way.

      As I said I just started to find my way through the whole Prototype, Script.aculo.us, Moo, JQuery, YUT, and so on stuff and I found JQuery to be more logic and easy to learn/understand than other libraries.

      Cheers,
      Roger

      Author's profile photo Former Member
      Former Member
      Compelling arguments...it would be nice to maybe see both of these frameworks implemented for ABAP to see which, if either, takes off in the community.  Again, our decision to model fro RJS was because of it's current momentum and support in the growing Rails community.

      If JQuery ends up being the better choice, we would be willing to join forces and switch over our support.  So Roger, when can we expect to see the alpha release of JQuery for ABAP? =) 

      Cheers,
      ewH

      Author's profile photo Gregor Wolf
      Gregor Wolf
      Hi Dan,

      I think the path you've provided in the Installation Instructions for the MIME Repository should not be /sap/bc/bsp/sap/public/bc/bsp/ajs/ it should be /sap/public/bc/bsp/ajs/, when you start in the SAP Namespace.

      Regards
      Gregor