<?xml version="1.0" encoding="utf-8" ?>
<?xml-stylesheet type="text/xsl" href="RSS_xslt_style.asp" version="1.0" ?>
<rss version="2.0" xmlns:WebWizForums="https://syndication.webwiz.net/rss_namespace/">
 <channel>
  <title>Codejock Developer Community : [SOLVED]Thousand character in the Subtotal of Gro</title>
  <link>http://forum.codejock.com/</link>
  <description><![CDATA[This is an XML content feed of; Codejock Developer Community : Report Control : [SOLVED]Thousand character in the Subtotal of Gro]]></description>
  <copyright>Copyright (c) 2006-2013 Web Wiz Forums - All Rights Reserved.</copyright>
  <pubDate>Thu, 04 Jun 2026 17:09:15 +0000</pubDate>
  <lastBuildDate>Mon, 03 Jun 2019 09:26:25 +0000</lastBuildDate>
  <docs>http://blogs.law.harvard.edu/tech/rss</docs>
  <generator>Web Wiz Forums 12.04</generator>
  <ttl>360</ttl>
  <WebWizForums:feedURL>forum.codejock.com/RSS_post_feed.asp?TID=23851</WebWizForums:feedURL>
  <image>
   <title><![CDATA[Codejock Developer Community]]></title>
   <url>http://forum.codejock.com/forum_images/codejock-logo.gif</url>
   <link>http://forum.codejock.com/</link>
  </image>
  <item>
   <title><![CDATA[[SOLVED]Thousand character in the Subtotal of Gro : Artem,Thank you for your answer...]]></title>
   <link>http://forum.codejock.com/forum_posts.asp?TID=23851&amp;PID=77357&amp;title=solvedthousand-character-in-the-subtotal-of-gro#77357</link>
   <description>
    <![CDATA[<strong>Author:</strong> <a href="http://forum.codejock.com/member_profile.asp?PF=9311">ylaroye</a><br /><strong>Subject:</strong> 23851<br /><strong>Posted:</strong> 03 June 2019 at 9:26am<br /><br /><div>Artem,</div><div><br></div>Thank you for your answer which corresponds to my waiting.<div>I am looking forward to the new version!</div><div><br></div><div>Yves Laroye</div>]]>
   </description>
   <pubDate>Mon, 03 Jun 2019 09:26:25 +0000</pubDate>
   <guid isPermaLink="true">http://forum.codejock.com/forum_posts.asp?TID=23851&amp;PID=77357&amp;title=solvedthousand-character-in-the-subtotal-of-gro#77357</guid>
  </item> 
  <item>
   <title><![CDATA[[SOLVED]Thousand character in the Subtotal of Gro : FYI. This changes will be available...]]></title>
   <link>http://forum.codejock.com/forum_posts.asp?TID=23851&amp;PID=77356&amp;title=solvedthousand-character-in-the-subtotal-of-gro#77356</link>
   <description>
    <![CDATA[<strong>Author:</strong> <a href="http://forum.codejock.com/member_profile.asp?PF=9012">agontarenko</a><br /><strong>Subject:</strong> 23851<br /><strong>Posted:</strong> 03 June 2019 at 9:23am<br /><br /><div>FYI. This changes will be available in next beta or final release.</div><div>ToolkitPro v19.0.0.050119 not contain this changes<br></div><div><br></div><div><div>Regards,</div>Artem Gontarenko</div>]]>
   </description>
   <pubDate>Mon, 03 Jun 2019 09:23:30 +0000</pubDate>
   <guid isPermaLink="true">http://forum.codejock.com/forum_posts.asp?TID=23851&amp;PID=77356&amp;title=solvedthousand-character-in-the-subtotal-of-gro#77356</guid>
  </item> 
  <item>
   <title><![CDATA[[SOLVED]Thousand character in the Subtotal of Gro : This changes from FormulaDlg//...]]></title>
   <link>http://forum.codejock.com/forum_posts.asp?TID=23851&amp;PID=77355&amp;title=solvedthousand-character-in-the-subtotal-of-gro#77355</link>
   <description>
    <![CDATA[<strong>Author:</strong> <a href="http://forum.codejock.com/member_profile.asp?PF=9012">agontarenko</a><br /><strong>Subject:</strong> 23851<br /><strong>Posted:</strong> 03 June 2019 at 9:18am<br /><br /><div>This changes from FormulaDlg</div><div><br></div><div>// FormulaDlg.h<br><br>&nbsp;&nbsp;&nbsp; ~CFormulaDlg();<br>&nbsp;&nbsp;&nbsp; CURRENCYFMT m_fmtCurrency;<br>&nbsp;&nbsp;&nbsp; int GetLocaleLong(LCTYPE LCType);<br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; <br>// FormulaDlg.cpp<br>&nbsp;&nbsp;&nbsp; <br>CFormulaDlg::CFormulaDlg(CWnd* pParent /*=NULL*/)<br>&nbsp;&nbsp;&nbsp; : CDialog(CFormulaDlg::IDD, pParent)<br>{<br>&nbsp;&nbsp;&nbsp; //{{AFX_DATA_INIT(CFormulaDlg)<br>&nbsp;&nbsp;&nbsp; // NOTE: the ClassWizard will add member initialization here<br>&nbsp;&nbsp;&nbsp; //}}AFX_DATA_INIT<br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; ZeroMemory(&amp;m_fmtCurrency, sizeof(m_fmtCurrency));<br>&nbsp;&nbsp;&nbsp; m_fmtCurrency.lpDecimalSep&nbsp;&nbsp;&nbsp; &nbsp;= new TCHAR&#091;10&#093;;<br>&nbsp;&nbsp;&nbsp; m_fmtCurrency.lpThousandSep&nbsp;&nbsp;&nbsp; = new TCHAR&#091;10&#093;;<br>&nbsp;&nbsp;&nbsp; m_fmtCurrency.lpCurrencySymbol = new TCHAR&#091;10&#093;;<br>&nbsp;&nbsp;&nbsp; m_fmtCurrency.Grouping&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; = 3;<br>&nbsp;&nbsp;&nbsp; m_fmtCurrency.NumDigits&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; = GetLocaleLong(LOCALE_IDIGITS);<br>&nbsp;&nbsp;&nbsp; m_fmtCurrency.LeadingZero&nbsp;&nbsp; = GetLocaleLong(LOCALE_ILZERO);<br>&nbsp;&nbsp;&nbsp; m_fmtCurrency.NegativeOrder = GetLocaleLong(LOCALE_INEGCURR);<br>&nbsp;&nbsp;&nbsp; m_fmtCurrency.PositiveOrder = GetLocaleLong(LOCALE_ICURRENCY);<br>&nbsp;&nbsp;&nbsp; GetLocaleInfo(LOCALE_USER_DEFAULT, LOCALE_SDECIMAL, m_fmtCurrency.lpDecimalSep, 10);<br>&nbsp;&nbsp;&nbsp; GetLocaleInfo(LOCALE_USER_DEFAULT, LOCALE_SCURRENCY, m_fmtCurrency.lpCurrencySymbol, 10);<br>&nbsp;&nbsp;&nbsp; GetLocaleInfo(LOCALE_USER_DEFAULT, LOCALE_STHOUSAND, m_fmtCurrency.lpThousandSep, 10);<br>}<br><br>CFormulaDlg::~CFormulaDlg()<br>{<br>&nbsp;&nbsp;&nbsp; SAFE_DELETE_AR(m_fmtCurrency.lpDecimalSep);<br>&nbsp;&nbsp;&nbsp; SAFE_DELETE_AR(m_fmtCurrency.lpThousandSep);<br>&nbsp;&nbsp;&nbsp; SAFE_DELETE_AR(m_fmtCurrency.lpCurrencySymbol);<br>}<br><br>int CFormulaDlg::GetLocaleLong(LCTYPE LCType)<br>{<br>&nbsp;&nbsp;&nbsp; TCHAR szResult&#091;5&#093;;<br><br>&nbsp;&nbsp;&nbsp; int nResult = ::GetLocaleInfo(LOCALE_USER_DEFAULT, LCType, szResult, 4);<br>&nbsp;&nbsp;&nbsp; ASSERT(nResult == 2);<br>&nbsp;&nbsp;&nbsp; UNUSED(nResult);<br>&nbsp;&nbsp;&nbsp; return _ttoi(szResult);<br>}<br><br>BOOL CFormulaDlg::OnInitDialog()<br>{<br>&nbsp;&nbsp;&nbsp; ...<br><br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; { _T("Pen"), _T("WA"), -200000 },&nbsp;&nbsp;&nbsp; { _T("Paper"), _T("WA"), 100000 },<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; { _T("Books"), _T("WA"), 100000 },<br>&nbsp;&nbsp;&nbsp; };<br><br>&nbsp;&nbsp;&nbsp; ...<br><br>&nbsp;&nbsp;&nbsp; BOOL bUseCurrencyFormat = TRUE;<br>&nbsp;&nbsp;&nbsp; for (i = 0; i &lt; m_wndReport.GetRows()-&gt;GetCount(); i++)<br>&nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CXTPReportRow* pRow = m_wndReport.GetRows()-&gt;GetAt(i);<br><br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; if (pRow-&gt;IsGroupRow())<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CXTPReportGroupRow* pGroupRow = reinterpret_cast&lt;CXTPReportGroupRow*&gt;(pRow);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; if(bUseCurrencyFormat)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br><b>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; pGroupRow-&gt;SetFormatString(_T(" Subtotal "));<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; pGroupRow-&gt;SetCurrencyFormat(&amp;m_fmtCurrency);</b><br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; else<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; pGroupRow-&gt;SetFormatString(_T(" Subtotal $=%.02f"));<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; pGroupRow-&gt;SetFormula(_T("SUMSUB(R*C1:R*C8)"));<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; pGroupRow-&gt;SetCaption(_T("x"));<br><br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; bUseCurrencyFormat = !bUseCurrencyFormat;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; }<br><br>&nbsp;&nbsp;&nbsp; return FALSE;<br>}</div><div><br></div><div><br></div><div><br></div><div>You can initiate the m_fmtCurrency structure with different values to get the desired result.<br></div><div><br></div><div><div>Regards,</div>Artem Gontarenko</div>]]>
   </description>
   <pubDate>Mon, 03 Jun 2019 09:18:58 +0000</pubDate>
   <guid isPermaLink="true">http://forum.codejock.com/forum_posts.asp?TID=23851&amp;PID=77355&amp;title=solvedthousand-character-in-the-subtotal-of-gro#77355</guid>
  </item> 
  <item>
   <title><![CDATA[[SOLVED]Thousand character in the Subtotal of Gro : Hello Artem,CURRENCYFMT structure...]]></title>
   <link>http://forum.codejock.com/forum_posts.asp?TID=23851&amp;PID=77354&amp;title=solvedthousand-character-in-the-subtotal-of-gro#77354</link>
   <description>
    <![CDATA[<strong>Author:</strong> <a href="http://forum.codejock.com/member_profile.asp?PF=9311">ylaroye</a><br /><strong>Subject:</strong> 23851<br /><strong>Posted:</strong> 03 June 2019 at 7:56am<br /><br />Hello Artem,<div><br></div><div>CURRENCYFMT structure and GetCurrencyFormat function are only used in Source\Chart\Utils\XTPChartNumberFormat.cpp and XTPChartNumberFormat.h files.</div><div><br></div><div>I haven't seen in&nbsp;Xtreme ToolkitPro v19.0.0.050119 where CURRENCYFMT structure and GetCurrencyFormat function are used for the ReportControl (in "Source" and "Samples" sub-folders).</div><div><br></div><div>Can you send me your modified FormulaDlg.cpp/FormulaDlg.h files to understand how you have implemented it?</div><div><br></div><div>Regards,</div><div><br></div><div>Yves Laroye</div><div><br></div><div><br></div><div><br></div>]]>
   </description>
   <pubDate>Mon, 03 Jun 2019 07:56:17 +0000</pubDate>
   <guid isPermaLink="true">http://forum.codejock.com/forum_posts.asp?TID=23851&amp;PID=77354&amp;title=solvedthousand-character-in-the-subtotal-of-gro#77354</guid>
  </item> 
  <item>
   <title><![CDATA[[SOLVED]Thousand character in the Subtotal of Gro : Hello,We added same functionality...]]></title>
   <link>http://forum.codejock.com/forum_posts.asp?TID=23851&amp;PID=77353&amp;title=solvedthousand-character-in-the-subtotal-of-gro#77353</link>
   <description>
    <![CDATA[<strong>Author:</strong> <a href="http://forum.codejock.com/member_profile.asp?PF=9012">agontarenko</a><br /><strong>Subject:</strong> 23851<br /><strong>Posted:</strong> 03 June 2019 at 6:11am<br /><br /><div>Hello,</div><div><br></div><div>We added same functionality but by using CURRENCYFMT structure and GetCurrencyFormat function. This allows to get currency string&nbsp; more flexible.</div><div><br></div><div>See BOOL CFormulaDlg::OnInitDialog() function in ReportSample.</div><div><br></div><div><img src="uploads/9012/ReportSample_72vimcmNxc.png" height="467" width="647" border="0" /><br></div><div></div><div><br></div><div>Regards,</div><div>Artem Gontarenko<br></div>]]>
   </description>
   <pubDate>Mon, 03 Jun 2019 06:11:43 +0000</pubDate>
   <guid isPermaLink="true">http://forum.codejock.com/forum_posts.asp?TID=23851&amp;PID=77353&amp;title=solvedthousand-character-in-the-subtotal-of-gro#77353</guid>
  </item> 
  <item>
   <title><![CDATA[[SOLVED]Thousand character in the Subtotal of Gro : I am disappointed to see that...]]></title>
   <link>http://forum.codejock.com/forum_posts.asp?TID=23851&amp;PID=77326&amp;title=solvedthousand-character-in-the-subtotal-of-gro#77326</link>
   <description>
    <![CDATA[<strong>Author:</strong> <a href="http://forum.codejock.com/member_profile.asp?PF=9311">ylaroye</a><br /><strong>Subject:</strong> 23851<br /><strong>Posted:</strong> 11 May 2019 at 4:41pm<br /><br /><div>I am disappointed to see that my following proposal for evolution was not retained in version 19.0.0 Beta 1 while it is legitimate and that I proposed the code to implement it. Why?</div><span style=": rgb248, 248, 252;"><div><span style=": rgb248, 248, 252;"><br></span></div><div><span style=": rgb248, 248, 252;">------------------------------------</span></div>In a financial application, there is need to present the amounts with the thousand separator. This can be done for the elements in the ReportControl lines but not for the GroupRow.</span><div style=": rgb248, 248, 252;">I propose an evolution on the SetFormatString method allowing to manage:</div><div style=": rgb248, 248, 252;">- the thousand separator =&gt; keyword 'T'</div><div style=": rgb248, 248, 252;">- the decimal separator =&gt; keyword 'D'</div><div style=": rgb248, 248, 252;">- the sign '-' (sometimes represented with parentheses: -1234 =&gt; (1234)) =&gt; keyword 'N'</div><div style=": rgb248, 248, 252;"><br></div><div style=": rgb248, 248, 252;">These 3 elements must be put between '&#091;&#093;' after the '%' and the value of each element is the character just behind the keyword.</div><div style=": rgb248, 248, 252;">Example: 'Subtotal =% &#091;T D, N (&#093;. 02f $'</div><div style=": rgb248, 248, 252;">&nbsp; &nbsp; T = Blank</div><div style=": rgb248, 248, 252;">&nbsp; &nbsp; D = Comma</div><div style=": rgb248, 248, 252;">&nbsp; &nbsp; N = Parenthesis</div><div style=": rgb248, 248, 252;"><br></div><div style=": rgb248, 248, 252;"><a href="http://forum.codejock.com/uploads/9311/XTPReportGroupRow.zip" rel="nofollow">uploads/9311/XTPReportGroupRow.zip</a></div><div style=": rgb248, 248, 252;"><br></div><div style=": rgb248, 248, 252;"><img src="uploads/9311/ReportSample&#070;ormula.png" height="576" width="758" border="0" /><br></div><div style=": rgb248, 248, 252;"><br></div><div style=": rgb248, 248, 252;"><div ="msgsignature"="" style="width: 1333.2px;">Product:&nbsp;<strong>XTP 18.6.0</strong>&nbsp;and&nbsp;<strong>XTP 19.0.0 Beta 1&nbsp;</strong>on VC++ 6.0</div><div ="msgsignature"="" style="width: 1333.2px;">Platform: Windows 10 (64bit)</div><div><br></div></div>]]>
   </description>
   <pubDate>Sat, 11 May 2019 16:41:11 +0000</pubDate>
   <guid isPermaLink="true">http://forum.codejock.com/forum_posts.asp?TID=23851&amp;PID=77326&amp;title=solvedthousand-character-in-the-subtotal-of-gro#77326</guid>
  </item> 
 </channel>
</rss>