<div dir="ltr"><div><span class="gmail-HwtZe" lang="en"><span class="gmail-jCAhz gmail-ChMk0b"><span class="gmail-ryNqvb">I manage <a href="https://api.libreoffice.org/docs/idl/ref/structcom_1_1sun_1_1star_1_1util_1_1DateTimeWithTimezone.html">DateTimeWithTimezone</a> in <a href="https://prrvchr.github.io/jdbcDriverOOo/">jdbcDriverOOo</a>.</span></span><br></span></div><div><span class="gmail-HwtZe" lang="en"><span class="gmail-jCAhz gmail-ChMk0b"><span class="gmail-ryNqvb">I haven't touched the idl but I use the getter and setter <a href="https://github.com/prrvchr/jdbcDriverOOo/blob/master/source/jdbcDriverOOo/source/io/github/prrvchr/jdbcdriver/helper/DBTools.java#L868">getObject()</a> and <a href="https://github.com/prrvchr/jdbcDriverOOo/blob/master/source/jdbcDriverOOo/source/io/github/prrvchr/jdbcdriver/helper/DBTools.java#L760">setObject()</a> with as object the Struct corresponding to the data type.</span></span></span></div><div><span class="gmail-HwtZe" lang="en"><span class="gmail-jCAhz gmail-ChMk0b"><span class="gmail-ryNqvb">I think you can make same with a <a href="https://api.libreoffice.org/docs/idl/ref/structcom_1_1sun_1_1star_1_1util_1_1DateTimeRange.html">DateTimeRange</a></span></span></span></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">Le sam. 13 avr. 2024 à 19:47, Devansh Varshney <<a href="mailto:varshney.devansh614@gmail.com">varshney.devansh614@gmail.com</a>> a écrit :<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div class="gmail_default" style="font-family:comic sans ms,sans-serif"><div class="gmail_default" style="font-family:comic sans ms,sans-serif">Hi,</div><div class="gmail_default" style="font-family:comic sans ms,sans-serif">Currently I have made changes regarding the support of the SQL INTERVAL and now working to get it fit with the XRow and the XColumn in the <a href="https://github.com/LibreOffice/core/blob/4695d84b78d04af6682961732ae92655e03f49eb/connectivity/source/commontools/FValue.cxx#L2133" target="_blank">https://github.com/LibreOffice/core/blob/4695d84b78d04af6682961732ae92655e03f49eb/connectivity/source/commontools/FValue.cxx#L2133</a> (PatchSet 5 - <a href="https://gerrit.libreoffice.org/c/core/+/165012/5" target="_blank">https://gerrit.libreoffice.org/c/core/+/165012/5</a> is related to this)</div><div class="gmail_default" style="font-family:comic sans ms,sans-serif"><br></div><div class="gmail_default" style="font-family:comic sans ms,sans-serif">But, I am now at this page - <a href="https://wiki.documentfoundation.org/Development/Incompatible_UNO_API_Changes" target="_blank">https://wiki.documentfoundation.org/Development/Incompatible_UNO_API_Changes</a></div><div class="gmail_default" style="font-family:comic sans ms,sans-serif"><br></div><div class="gmail_default" style="font-family:comic sans ms,sans-serif">As after making the entry in the <code><span style="color:rgb(153,0,255)">offapi/com/sun/star/sdb/XColumn.idl</span> </code>and the <code><font style="color:rgb(153,0,255)" size="2">offapi/com/sun/star/sdbc/XRow.idl</font></code>  I got this after running the make -</div><div class="gmail_default" style="font-family:comic sans ms,sans-serif"><br></div><div class="gmail_default" style="font-family:comic sans ms,sans-serif"> [~/libreoffice]<br><span style="color:rgb(153,0,255)"> devansh</span> <span style="color:rgb(11,83,148)">  51779_support_for_sql_interval </span>  <span style="color:rgb(39,78,19)">make</span><br><span style="color:rgb(56,118,29)">mkdir -p /home/devansh/libreoffice/instdir<br>/home/devansh/libreoffice/solenv/bin/install-gdb-printers -a /home/devansh/libreoffice/instdir -c<br>make -j 3  -rs -f /home/devansh/libreoffice/Makefile.gbuild build  <br>[UNO] offapi<br>[DBc] offapi<br>[ECH] CustomTarget/instsetoo_native/setup/setuprc<br>[ECH] CustomTarget/instsetoo_native/setup/versionrc<br>[LOC] top level modules: libreoffice<br>interface type com.sun.star.sdb.XColumn number of direct methods changed from 20 to 21</span><br><span style="color:rgb(255,0,0)">ERROR:</span> <span style="color:rgb(204,0,0)">Published UNO API must not be changed incompatibly!</span><br><span style="color:rgb(153,0,0)">(If published UNO API shall be changed incompatibly after all, see<br><<a href="https://wiki.documentfoundation.org/Development/Incompatible_UNO_API_Changes" target="_blank">https://wiki.documentfoundation.org/Development/Incompatible_UNO_API_Changes</a>>.)</span><br><span style="color:rgb(127,96,0)">make[1]: *** [/home/devansh/libreoffice/solenv/gbuild/UnoApiTarget.mk:48: /home/devansh/libreoffice/workdir/UnoApiTarget/offapi.rdb] Error 1<br>make[1]: *** Deleting file '/home/devansh/libreoffice/workdir/UnoApiTarget/offapi.rdb'<br>make: *** [Makefile:290: build] Error 2</span><br></div><div class="gmail_default" style="font-family:comic sans ms,sans-serif"><br></div><div class="gmail_default" style="font-family:comic sans ms,sans-serif">BugZilla -    <a href="https://bugs.documentfoundation.org/show_bug.cgi?id=51779" target="_blank">https://bugs.documentfoundation.org/show_bug.cgi?id=51779</a></div><div class="gmail_default" style="font-family:comic sans ms,sans-serif">Gerrit     -    <a href="https://gerrit.libreoffice.org/c/core/+/165012" target="_blank">https://gerrit.libreoffice.org/c/core/+/165012</a></div><div class="gmail_default" style="font-family:comic sans ms,sans-serif"><br></div><div class="gmail_default" style="font-family:comic sans ms,sans-serif">So, my question is should I go and make changes after the consensus or should I not make these changes as this will disrupt the backward compatibility and prevent disruptions for existing users and extensions.<br><br></div><div class="gmail_default" style="font-family:comic sans ms,sans-serif">This is what I have added in the <code><span style="color:rgb(153,0,255)">offapi/com/sun/star/sdb/</span></code><code><font style="color:rgb(153,0,255)" size="2">XRow</font></code><code><span style="color:rgb(153,0,255)">.idl</span></code></div><div class="gmail_default" style="font-family:comic sans ms,sans-serif"><div style="color:rgb(204,204,204);background-color:rgb(31,31,31);font-family:"Droid Sans Mono","monospace",monospace;font-weight:normal;font-size:14px;line-height:19px;white-space:pre-wrap"><div><span style="color:rgb(204,204,204)"><br></span></div><div><span style="color:rgb(204,204,204)">    </span><span style="color:rgb(106,153,85)">/** gets the value of a column in the current row as an SQLINTERVAL value.</span></div><div><span style="color:rgb(106,153,85)">        @param columnIndex</span></div><div><span style="color:rgb(106,153,85)">            the first column is 1, the second is 2,</span></div><div><span style="color:rgb(106,153,85)">        @returns</span></div><div><span style="color:rgb(106,153,85)">            the column value; if the value is SQL NULL, the result is a default-constructed SqlInterval</span></div><div><span style="color:rgb(106,153,85)">        @throws SQLException</span></div><div><span style="color:rgb(106,153,85)">                if a database access error occurs.</span></div><div><span style="color:rgb(106,153,85)">     */</span></div><div><span style="color:rgb(204,204,204)">    com::sun::star::util::SqlInterval getSqlInterval([</span><span style="color:rgb(86,156,214)">in</span><span style="color:rgb(204,204,204)">]long columnIndex)</span></div><div><span style="color:rgb(204,204,204)">        raises (SQLException);</span></div><br><br></div></div><div class="gmail_default" style="font-family:comic sans ms,sans-serif"><br><code><span style="color:rgb(153,0,255)"></span> </code>and the <code><font style="color:rgb(153,0,255)" size="2">offapi/com/sun/star/sdbc/</font></code><code><font style="color:rgb(153,0,255)" size="2"></font></code><code><span style="color:rgb(153,0,255)">XColumn</span></code><code><font style="color:rgb(153,0,255)" size="2">.idl</font></code>  <br><div style="color:rgb(204,204,204);background-color:rgb(31,31,31);font-family:"Droid Sans Mono","monospace",monospace;font-weight:normal;font-size:14px;line-height:19px;white-space:pre-wrap"><div><span style="color:rgb(204,204,204)"><br></span></div><div><span style="color:rgb(204,204,204)">    </span><span style="color:rgb(106,153,85)">/** gets the value of a column in the current row as an SQL INTERVAL value.</span></div><div><span style="color:rgb(106,153,85)">        @returns</span></div><div><span style="color:rgb(106,153,85)">            the column value; if the value is SQL NULL, the result is a default-constructed SqlInterval</span></div><div><span style="color:rgb(106,153,85)">        @throws SQLException</span></div><div><span style="color:rgb(106,153,85)">            if a database access error occurs.</span></div><div><span style="color:rgb(106,153,85)">     */</span></div><div><span style="color:rgb(204,204,204)">    com::sun::star::util::SqlInterval getSqlInterval()</span></div><div><span style="color:rgb(204,204,204)">        raises (com::sun::star::sdbc::SQLException);</span></div><br><br></div></div><div class="gmail_default" style="font-family:comic sans ms,sans-serif"><br></div><div class="gmail_default" style="font-family:comic sans ms,sans-serif">Thanks and Regards,<br></div><div class="gmail_default" style="font-family:comic sans ms,sans-serif">Devansh</div></div></div>
</blockquote></div>