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:

Neil Yetman said...

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!

Jim Marion said...

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

Chris Couture said...

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

Neil Yetman said...

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.

Unknown said...

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!

Ashar said...

I just received my copy :)

Unknown said...

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...

Jim Marion said...

@Michael, I recommend the PeopleSoft General Discussion OTN forum.

JPonce said...

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

Jim Marion said...

@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.

Simon said...

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

Jim Marion said...

@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.

Unknown said...

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

Jim Marion said...

@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.

Unknown said...

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

Unknown said...

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

Jim Marion said...

@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.

Unknown said...

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

Unknown said...

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

Jim Marion said...

@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.

Jim Marion said...

@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.

leaf said...

@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!

Jim Marion said...

@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.