tag:blogger.com,1999:blog-34020393.post6825127498940953801..comments2024-03-27T10:59:38.307-07:00Comments on Jim's PeopleSoft Journal: PeopleSoft/Calendar IntegrationJim Marionhttp://www.blogger.com/profile/12995110203807924786noreply@blogger.comBlogger44125tag:blogger.com,1999:blog-34020393.post-21212825109345654282022-09-26T21:16:31.072-07:002022-09-26T21:16:31.072-07:00@Manish, the SetContentType("text/calendar&qu...@Manish, the SetContentType("text/calendar") should do this, but another line that could be helpful is the content-disposition header. Take a look at https://blog.jsmpros.com/2009/01/exporting-attachments-part-2.html for an example.Jim Marionhttps://www.blogger.com/profile/12995110203807924786noreply@blogger.comtag:blogger.com,1999:blog-34020393.post-61132249271676282442022-09-22T03:50:53.805-07:002022-09-22T03:50:53.805-07:00Hi Jim,
I have copied the same code but I am call...Hi Jim,<br /><br />I have copied the same code but I am calling from a push button. <br /><br />However, the file being generated is .txt file and not an .ics file. How do I achieve it so tha file that is generated in the correct format?<br /><br /> &tempTime = DateTimeToTimeZone(&startTime, "PST", "UTC");<br /> &startTimeUTC = DateTimeToLocalizedString(&tempTime, "yyyyMMdd'T'HHmmss'Z'");<br /> <br /> &tempTime = DateTimeToTimeZone(&endTime, "PST", "UTC");<br /> &endTimeUTC = DateTimeToLocalizedString(&tempTime, "yyyyMMdd'T'HHmmss'Z'");<br /> <br /> %Response.SetContentType("text/calendar");<br /> %Response.WriteLine(GetHTMLText(HTML.ICAL_EVT, %Date, %Date + 3, "Test11"));<br /><br />Kindly help.<br /><br />Regards,<br />Manish<br />Manishhttps://www.blogger.com/profile/04788450432875811368noreply@blogger.comtag:blogger.com,1999:blog-34020393.post-53327948141563179802019-02-21T11:52:37.877-08:002019-02-21T11:52:37.877-08:00@John great job! Yes, you can change the name, and...@John great job! Yes, you can change the name, and I recommend doing so. You can read more in this blog post: https://jjmpsj.blogspot.com/2009/01/exporting-attachments-part-2.html. Look for the content-disposition header.Jim Marionhttps://www.blogger.com/profile/12995110203807924786noreply@blogger.comtag:blogger.com,1999:blog-34020393.post-78476253490472635162019-02-18T08:19:10.088-08:002019-02-18T08:19:10.088-08:00Hello Jim,
I've created an iScript to downloa...Hello Jim,<br /><br />I've created an iScript to download a students calendar for the current semester in Campus Solutions. I cannot find a way to control the name of the file though. Currently the file is created with WEBLIB_NAME.FIELDNAME.FieldFormula.ics as the name. I'd like to name the file the students name.<br /><br />Thanks for your awesome blog.<br /><br />-JohnJohn Mhttps://www.blogger.com/profile/06552956454911968906noreply@blogger.comtag:blogger.com,1999:blog-34020393.post-52290573651252150162018-04-26T14:54:12.183-07:002018-04-26T14:54:12.183-07:00@Margaret,
We pass variables to an iScript throug...@Margaret,<br /><br />We pass variables to an iScript through the URL as query string parameters (the part after the question mark as key/value pairs). From the iScript, you can access these query string parameters using %Request.GetParameter.<br /><br />How you populate the iScript's URL depends on where you are using the URL. E-mail notification templates use SQL queries for parameters. If this is part of an e-mail notification template, then I would generate the full URL in the query itself. That way the URL will be dynamic enough to change with dev, test, prod, etc. If I am using PeopleCode to display the URL on a page, then I would use GenerateScriptContentURL to create the URL.Jim Marionhttps://www.blogger.com/profile/12995110203807924786noreply@blogger.comtag:blogger.com,1999:blog-34020393.post-35425497828677419062018-04-26T06:55:13.080-07:002018-04-26T06:55:13.080-07:00Because of an upgrade, we did not implement this w...Because of an upgrade, we did not implement this when I contacted you earlier, but now our users are wanting to do this. I am able to create calendar entries, but I am uncertain how to pass variables to an iScript. I am creating the URLstring in Workflow PeopleCode, where the variables are determined. How can I access those variables in the iScript? I've no experience with this. I haven't been able to find an example and would appreciate any help.Anonymoushttps://www.blogger.com/profile/09840670845557588445noreply@blogger.comtag:blogger.com,1999:blog-34020393.post-42073960583964480972016-10-10T10:07:08.003-07:002016-10-10T10:07:08.003-07:00@Rashmi, adding ICS integration through iScripts s...@Rashmi, adding ICS integration through iScripts should have no impact on your HTML e-mails, except for adding a link to download the ICS file.Jim Marionhttps://www.blogger.com/profile/12995110203807924786noreply@blogger.comtag:blogger.com,1999:blog-34020393.post-1269698380257764212016-10-08T13:03:06.215-07:002016-10-08T13:03:06.215-07:00Hi Jim,
We have implemented calendar outlook integ...Hi Jim,<br />We have implemented calendar outlook integration for elm classes.<br /><br />We were using email type = HTML and using HTML tags to make the emails more presentable. Once after the integration, since type is changed to Ics our HTML templates looks weird.<br /><br />Any solution/ suggestion<br /><br />Thanks,<br />Rashmi.Anonymoushttps://www.blogger.com/profile/14117282781321809655noreply@blogger.comtag:blogger.com,1999:blog-34020393.post-11955991032808838002016-03-11T22:17:02.775-08:002016-03-11T22:17:02.775-08:00@Margaret, you are getting very close. It looks li...@Margaret, you are getting very close. It looks like the problem is the delimiter between the iScript function name and the parameter. It should be a question mark (?), not an ampersand (&). The ampersand goes between parameters, but the question mark tells the server where the function name stops and the parameters start.Jim Marionhttps://www.blogger.com/profile/12995110203807924786noreply@blogger.comtag:blogger.com,1999:blog-34020393.post-50470008554129229952016-03-08T06:18:57.244-08:002016-03-08T06:18:57.244-08:00I was able to create the URL and add it to an emai...I was able to create the URL and add it to an email, so I'm getting a little closer. When I copy the link into a browser, I get this message.<br /><br />Missing function IScript_MKGetICalendarEvent&start_Time=2016-03-21-13 in PeopleCode program ???.???-Other. (180,127)<br /><br />I think I must be something very simple that I'm missing. This is the statement to build the URL:<br /><br />&URLString = GenerateScriptContentURL(%Portal, %Node, Record.WEBLIB_PT_NAV, Field.ISCRIPT1, "FieldFormula", "IScript_MKGetICalendarEvent");<br /><br />I've tried a couple of variations, but always get the same error. <br /><br />As always, I really appreciate your guidance.Anonymoushttps://www.blogger.com/profile/09840670845557588445noreply@blogger.comtag:blogger.com,1999:blog-34020393.post-5060187410976991942016-03-07T14:20:18.933-08:002016-03-07T14:20:18.933-08:00I am so sorry to be so late getting back to you. ...I am so sorry to be so late getting back to you. I feel that I'm very close, but am getting an error when trying to generate the url.<br /><br />In the PeopleCode that generates the email, I have this code:<br /><br /> &URLString = GenerateScriptContentURL(%Portal, %Node, Record.WEBLIB_PT_NAV, Field.ISCRIPT1, "FieldFormula", "MKGetICalendarEvent", &startTime, &endTime, &eventTitle);<br /><br />The calendar event iscript is copied from your example, GetICalendarEvent.<br /><br />&startTime and &endTime are datetime fields, &eventTitle is the course title. All fields appear to be populated properly. The error is:<br /><br />Invalid parameter 7 for function GenerateScriptContentURL. (2,116) COURSE_ENROLLMENT1.GBL.Workflow PCPC:9255 Statement:85 <br /><br />I'm not sure what I'm doing incorrectly here, any guidance would be greatly appreciated.<br />Anonymoushttps://www.blogger.com/profile/09840670845557588445noreply@blogger.comtag:blogger.com,1999:blog-34020393.post-7594938787706115532016-02-17T11:02:44.037-08:002016-02-17T11:02:44.037-08:00@Margaret, With a web browser, are you able to tes...@Margaret, With a web browser, are you able to test the iScript URL for the iCalendar entry? If so, the next step is getting it into a workflow e-mail.Jim Marionhttps://www.blogger.com/profile/12995110203807924786noreply@blogger.comtag:blogger.com,1999:blog-34020393.post-65761182730205949392016-02-17T06:24:18.982-08:002016-02-17T06:24:18.982-08:00Thank you for all the information. I don't un...Thank you for all the information. I don't understand how to put the pieces of this together. I have created the html and iscript and retrieved the fields I need. I have very little experience with iscripts. I don't understand how to create the link in the email that allows the user to create the calendar entry. Can you provide any guidance?Anonymoushttps://www.blogger.com/profile/09840670845557588445noreply@blogger.comtag:blogger.com,1999:blog-34020393.post-60818739611902304292013-11-14T11:19:06.355-08:002013-11-14T11:19:06.355-08:00@Andy, thank you for the compliment. I do not have...@Andy, thank you for the compliment. I do not have experience with Office365 directly. Are you using the MCF_GETMAIL node with the GETMAILTARGET connector? You can turn up the log level in your integrationGateway.properties file to see more debug and error information. Since you are communicating over a secure channel, it will be hard to use anything in the middle to review the content. I would use wireshark on the PeopleSoft server or some other network packet sniffer to see if you are connecting. If you have any proxy servers, make sure that they allow connections through that port and that your Integration Broker is configured to use the proxy server.Jim Marionhttps://www.blogger.com/profile/12995110203807924786noreply@blogger.comtag:blogger.com,1999:blog-34020393.post-29048452802498294912013-11-13T13:27:05.762-08:002013-11-13T13:27:05.762-08:00Jim can you tell me if I can use tools 849 and int...Jim can you tell me if I can use tools 849 and integration broker to connect to office365 imapi4 mail server? I see the office365 site uses port 993, for ssl, but don't see any mention of this port usage in peoplebooks for the mcf. I'm trying to connect using the mcf mail page and seeing that the web server isn't able to connect via the log file...Any ideas on how i can log the java on the gateway or the communication going out from that host? I'm kinda stuck as I'm not sure exactly how that connection is being made or getting any descent error info...great book btw..Anonymoushttps://www.blogger.com/profile/05457754337896679018noreply@blogger.comtag:blogger.com,1999:blog-34020393.post-51693618970313634782013-05-18T18:49:16.584-07:002013-05-18T18:49:16.584-07:00@Denise, I am glad you are using this solution. I ...@Denise, I am glad you are using this solution. I think it is a very simple way to offer calendar integration. For your link, do you have the target attribute set? If so, that will open a new window. If you don't set the target, it should try to load in the current window, but since the response content type is registered to Outlook, it should force the content into Outlook (download/open), leaving you on your current transaction page. Other than that, I'm not sure what to suggest.<br /><br />Have you tried connecting your iScript calendar download to a Related Action? You may still get a new window, but it seems like a good way to avoid modifying the delivered page.Jim Marionhttps://www.blogger.com/profile/12995110203807924786noreply@blogger.comtag:blogger.com,1999:blog-34020393.post-18402007955265530072013-05-17T10:31:31.704-07:002013-05-17T10:31:31.704-07:00Jim,
Hopefully you are still responding to comment...Jim,<br />Hopefully you are still responding to comments on this topic :) I have incorporated links into ELM for users to put a training activity into their Outlook calendar. The iscript is working fine, however, when the users click on the link it is opening a new IE tab and then they are asked to open the file. This new tab stays open after they open and save the calendar event. Is there anyway to supress it opening a new IE tab or window with the link? <br /><br />Thanks!Denisehttps://www.blogger.com/profile/04039816965140588979noreply@blogger.comtag:blogger.com,1999:blog-34020393.post-77986036629373315662013-01-22T08:33:08.355-08:002013-01-22T08:33:08.355-08:00@Phani, glad you have it working. To include it as...@Phani, glad you have it working. To include it as an e-mail attachment, you would have to write the iCalendar contents to a file and then specify the file location when calling the SendMail function or the <a href="http://docs.oracle.com/cd/E28394_01/pt852pbh1/eng/psbooks/tpcr/htm/tpcr25.htm#57248c9c_1355ab6f02a_547d" rel="nofollow">AddAttachment</a> method of the <a href="http://docs.oracle.com/cd/E28394_01/pt852pbh1/eng/psbooks/tpcr/htm/tpcr25.htm#57248c9c_1355ab6f02a_546c" rel="nofollow">MCFOutboundEmail</a> class.Jim Marionhttps://www.blogger.com/profile/12995110203807924786noreply@blogger.comtag:blogger.com,1999:blog-34020393.post-41854365677851001932013-01-22T02:09:30.653-08:002013-01-22T02:09:30.653-08:00Hi Jim,
we followed your blog to create the outloo...Hi Jim,<br />we followed your blog to create the outlook calendar using the ICalender Script and it is working fine.Can you please let us know how to include that ICalendar as an attachemnt on clicking that it should open with out asking for login.<br />Thanks,<br />PhaniPhanihttps://www.blogger.com/profile/06533914194585208253noreply@blogger.comtag:blogger.com,1999:blog-34020393.post-8465400963694253202012-11-02T12:15:18.429-07:002012-11-02T12:15:18.429-07:00@singh, yes it is possible. Most Personal Informat...@singh, yes it is possible. Most Personal Information Management systems have a "back end" API that allows you to create events, contacts, etc.Jim Marionhttps://www.blogger.com/profile/12995110203807924786noreply@blogger.comtag:blogger.com,1999:blog-34020393.post-22578058909820000992012-11-02T12:08:27.146-07:002012-11-02T12:08:27.146-07:00thanks for ur reply.i am doing integration with ou...thanks for ur reply.i am doing integration with outlook.yes i will send notification to attendee but does not have rights to decline like example admin assign some class to some faculty.faculty ll get notification but he cant decline to take class so is it possible to do integration in outlook.<br />thanks in advance Bijay Bhushan Singhhttps://www.blogger.com/profile/00700596283444566910noreply@blogger.comtag:blogger.com,1999:blog-34020393.post-66856449271636967502012-11-02T11:29:58.380-07:002012-11-02T11:29:58.380-07:00@singh, If you know the back-end calendar system, ...@singh, If you know the back-end calendar system, then, yes, you can write an integration for that calendar system. It is not proper to add events to someone's calendar without notifying that person, so even if you use a back end calendar integration, then be sure to send a notification to the user.<br /><br />The way I would implement this is to send an e-mail notification (doesn't have to be workflow) with a link to the iScript containing the event. This gives the recipient control over the event.Jim Marionhttps://www.blogger.com/profile/12995110203807924786noreply@blogger.comtag:blogger.com,1999:blog-34020393.post-84405702134044925842012-11-02T11:25:51.989-07:002012-11-02T11:25:51.989-07:00thanku jim for reply.that problem got solved.now e...thanku jim for reply.that problem got solved.now everything is working fine.but in my requirement mainly two active user are there in which one is admin who will create the appointment<br />and other is attendee so in that whenever admin will schedule any appointment that ll affect to the attendee calender without asking the permission accept or decline.because he does not have permission to decline.is there any method to populate event in attendee calender without his permission.<br /> thanks in advance Bijay Bhushan Singhhttps://www.blogger.com/profile/00700596283444566910noreply@blogger.comtag:blogger.com,1999:blog-34020393.post-57336566626947941292012-11-01T12:03:24.239-07:002012-11-01T12:03:24.239-07:00@singh, save the icalendar file and open it with a...@singh, save the icalendar file and open it with a text editor (notepad) and review the date fields. Make sure they have properly formatted values.Jim Marionhttps://www.blogger.com/profile/12995110203807924786noreply@blogger.comtag:blogger.com,1999:blog-34020393.post-2823014974805041212012-11-01T10:27:36.370-07:002012-11-01T10:27:36.370-07:00hi Jim,
really Your iscript calender code is helpf...hi Jim,<br />really Your iscript calender code is helpfyll. i have a problem when i was calling iscript using url everything is getting populated whatever i passed in iac but only start date and end date is not getting populated when i open that file in outlook it showing current date and time so i am not able to set the meeting on that date.can u please tell me what i shld do if i open that iac in outlook it open passed bind date.Bijay Bhushan Singhhttps://www.blogger.com/profile/00700596283444566910noreply@blogger.com