Wednesday, September 30, 2015

PeopleTools Mobile Book Now Shipping

I received notice yesterday that our latest book, PeopleSoft PeopleTools: Mobile Applications Development (Oracle Press) 1st Edition, is now shipping. Probably the most exciting news is that Amazon has the book listed as the #1 New Release in the Oracle Databases category.

23 comments:

  1. Congratulations Jim! I look forward to getting my hands on it. I've worked with Mobile Application Platform on our upgrade to HR 9.2, modifying the UI (adding a help link n the header) and creating application classes for a custom Approval process. I'm sure your book will fill in the blanks in my understanding.

    FYI, Amazon.ca says the book won't be released in Canada until 16 October. And it's more expensive... everything always is in Canada!

    ReplyDelete
  2. @Neil, good to hear from you. Just FYI, my MAP chapter is quite basic. My purpose was to help customers get started with MAP.

    ReplyDelete
  3. Hi Jim - so excited to see Amz shipping notice! I get my hands on the book in time for some travel reading :)

    ReplyDelete
  4. Just a quick update... I pre-ordered the book straight away yesterday from amazon.ca, even though it said the release date was 16 October. Got a message with an updated delivery date... 7 October.

    ReplyDelete
  5. Jim, congratulations on this latest publication - it's great to see you continuing to fly the flag for the PeopleSoft and PeopleTools ecosystems. I do hope this one sells like hot cakes to reward you for all your hard work!

    ReplyDelete
  6. I just received my copy :)

    ReplyDelete
  7. I had my boss order a copy for my team. So far, I have only browsed the REST section and found a few tips. I don't know if this is the place to ask a RESTful service question, so I won't. Where is a good place to post one, Jim? It pertains to building GET query string URLs...

    ReplyDelete
  8. Hi Jim, I got the kindle version of the book I like it.

    I do have one question. I am trying to find out how to post data using documents.
    I went to sent the data in json format and parse in the application class handler.
    So far I have not found to much information about it. When you get a chance can you see if you can provide some insight.

    Thanks

    ReplyDelete
  9. @JPonce, I assume you already figured out how to create a REST service with the POST method. I think your question is more about how to read the JSON that was POST'd to the service operation from the OnRequest handler. Yes, I have done this, but can't find any examples. I suggest you post this same question on the OTN PeopleSoft general discussion forum. I know a handful of people that monitor that forum that will have working examples.

    ReplyDelete
  10. Hi Jim

    I'm enjoying working my way through my old-fashioned paper copy of this book, but I wondered if there was anywhere I could download the code from to save my having to type it all in.

    Thanks

    ReplyDelete
  11. @Simon, McGraw Hill has the code samples available on the book's page. Look for the code samples link on the left side of the page.

    ReplyDelete
  12. Hi Jim,

    I'm currently working my way through your book but the code samples from the McGraw Hill no longer appear to be available. I've tried contacting McGraw Hill but had no response. Are they hosted anywhere else?

    Many thanks

    ReplyDelete
  13. @David, thank you. I have my editor looking into it. It is my understanding that the site is temporarily broken, but the download is available to anyone that requests it. I forwarded your comment to my editor to see if we can get you the code.

    ReplyDelete
  14. Thanks Jim - I've now received all the code samples via email.

    ReplyDelete
  15. Hi Jim,
    I have converted a classic page into Fluid mode. On testing this in IE or Chrome browser, there are some alignment issues for few page fields. So, I created a custom style sheet and set width to ZERO for ps_box-label class. Then I tagged my custom style to the few page fields by navigating to Fluid tab. What I observe, this custom style is being applied across page and not just for the couple of fields where I had tagged. How do I restrict this behavior?

    Thanks
    Ramky

    ReplyDelete
  16. @Ramky, when you say you set the width to zero for ps_box-label, did you do something like this, .ps_box-label {...}? If so, yes, that will impact all ps_box-label. In your custom stylesheet, I recommend that you create a custom class name as well and then add that custom class name to default style name attribute of each field that should be modified. Keep in mind that fields you add to a page become composite HTML elements, which means there is a wrapper HTML element with your class name around the ps_box-label and input field. This should allow you to create an adequate selector. I suggest you add a custom class name to the default class name field, and then inspect the element with your developer tools to identify the appropriate selector.

    ReplyDelete
  17. Hi Jim,
    Thanks for your response.Yes, you are right. I was setting width to zero like you had mentioned .ps_box-label{Width:0%}.
    I tried creating a custom class ct_ps_box_label{width:0%} and tagged this class under default fluid style sheet PSSTYLEDEF_FMODE. Even on selecting custom class from the style drop down from Page field properties, the style was not getting applied. When I tried to Inspect element, I couldn't find a reference to my custom class. Pl let me know where am I going wrong.

    Thanks
    Ramky

    ReplyDelete
  18. Hi Jim,
    I researched a bit and understood what you meant by "selector". So, I created a custom class and used #win0div.... statements and reset the width to Zero. Now it works fine.
    I have a question. The div id which is getting generated dynamically has a prefix of "Win". Is this due to the fact that this is running on Windows OS and if there is an Android or some other OS, the Div identifiers (Selectors) will change?
    If yes, then I cannot be hardcoding #Win selectors in my custom class right?

    Thanks
    Ramky

    ReplyDelete
  19. @Ramky, a selector that is more specific than the delivered selector is important. You can try .ps_box-label.ct_ps_box_label. Stay away from #win0, #win1, etc. Those are dynamic and subject to change depending on how many forms exist on the page. Usually this is just one, but could be more.

    ReplyDelete
  20. @Ramky, what you are dealing with is selector specificity. You need a selector that is more specific. Another alternative to creating a more specific selector is to add a custom class name to your page or surround your content with a group box and set a custom class name on the group box. You won't actually CSS to go with the custom class name. It just exists to create an ancestral relationship for selector specificity.

    ReplyDelete
  21. @Jim question for you. Regarding the #win0div selector that gets auto generated, why does this happen to only div elements? & say I needed to target a specific div and I had to use the ID (which contains win0div), what should I do?

    - Thank you!

    ReplyDelete
  22. @leaf, the #win0 corresponds to %FormName... I think... something like that. Anyway, the way to write a selector is with a partial CSS selector like this: document.querySelector('div[id$="DERIVED_HR_MSEL_GROUPBOX5"]');. That will find the win0divDERIVED_HR_MSEL_GROUPBOX5 element on the My Team fluid page... and it will also find win22divDERIVED_HR_MSEL_GROUPBOX5 element if you happen to click the new window link.

    I'm not entirely sure, but I think the # in the middle between win and div ensures uniqueness in portal situations (pagelets and grouplets), which use a different form name for each pagelet and grouplet.

    ReplyDelete