Discussions
Categories
- 196.8K All Categories
- 2.2K Data
- 238 Big Data Appliance
- 1.9K Data Science
- 450.3K Databases
- 221.7K General Database Discussions
- 3.8K Java and JavaScript in the Database
- 31 Multilingual Engine
- 550 MySQL Community Space
- 478 NoSQL Database
- 7.9K Oracle Database Express Edition (XE)
- 3K ORDS, SODA & JSON in the Database
- 544 SQLcl
- 4K SQL Developer Data Modeler
- 187K SQL & PL/SQL
- 21.3K SQL Developer
- 295.8K Development
- 17 Developer Projects
- 138 Programming Languages
- 292.5K Development Tools
- 107 DevOps
- 3.1K QA/Testing
- 646K Java
- 28 Java Learning Subscription
- 37K Database Connectivity
- 155 Java Community Process
- 105 Java 25
- 22.1K Java APIs
- 138.1K Java Development Tools
- 165.3K Java EE (Java Enterprise Edition)
- 18 Java Essentials
- 160 Java 8 Questions
- 86K Java Programming
- 80 Java Puzzle Ball
- 65.1K New To Java
- 1.7K Training / Learning / Certification
- 13.8K Java HotSpot Virtual Machine
- 94.3K Java SE
- 13.8K Java Security
- 204 Java User Groups
- 24 JavaScript - Nashorn
- Programs
- 437 LiveLabs
- 38 Workshops
- 10.2K Software
- 6.7K Berkeley DB Family
- 3.5K JHeadstart
- 5.7K Other Languages
- 2.3K Chinese
- 171 Deutsche Oracle Community
- 1.1K Español
- 1.9K Japanese
- 232 Portuguese
ics Outlook Calendar export

Hello,
I tried to automatically generate a .ics file to send it to our employees, but there is something wrong with the format.
My code PL/SQL code:
SELECT
(
(SELECT
TO_CHAR(TO_DATE((SELECT available_date FROM zb_dates_quick WHERE id = 1), 'DD.MM.YY'), 'YYYY-MM-DD')
FROM dual)
|| 'T' ||
(SELECT start_time FROM zb_timeslots_quick WHERE id = 1) || ':00'
) as ICSFormat
FROM dual;
Can anybody help me with writing this to work, always when I sent it than apex displays that something ends before it is able to process. I don't know what is wrong about this format, so is it false to transfer it to a string? I think the isc format need this format: 2021-01-27T13:59:43
Answers
-
Hi,
If this problem is about how to use some Apex feature, then you should post the question in the Apex Space: APEX — oracle-tech
If this really is a SQL problem (e.g., how to manipulate strings, which you just happen to be doing in an Apex application) then post little sample data (CREATE TABLE and INSERT statements) for all tables involved, and the exact output you want from that sample data.
I don't see any obvious errors in the SQL you posted, depending on your data. There are other ways to get the same results. For example:
SELECT REGEXP_REPLACE ( d.available_date , '(\d\d)\.(\d\d)\.(\d\d)' , '20\3-\2-\1T' ) || t.start_time || ':00' AS icsformat FROM zb_dates_quick d CROSS JOIN zb_timeslots_quick t WHERE d.id = 1 AND t.id = 1 ;
Date information belongs in DATE columns, not VARCHAR2 columns. If you're stuck with the data in a string column, then you might find it simpler to treat the data as a string, rather than convert the string to a DATE, and then convert it back to a string.
The dual table is needed in SQL when you're not actually dealing with any table. In this case, you're dealing with two real tables, so there's no need to use dual.
Again, the code you posted should work. Of course, without any sample data, I can't actually test anything.