Commit b0b0015a authored by arawankar's avatar arawankar

1.Changes made to validate employee code from of header.

On add new,If employee code from of header has been changed after addition of detail row,then system should show an error. 
EmpLvePrkBalTrfDefault.java
EmpLvePrkBalTrfIC.java
emp_lveprkbal_trf22.xml
AD89SUN091.sql
d_emp_lveprkbal_trf22.srd


git-svn-id: http://15.206.35.175/svn/proteus/business-java/trunk@192737 ce508802-f39f-4f6c-b175-0d175dae99d5
parent de0c9d16
...@@ -591,7 +591,7 @@ public class EmpLvePrkBalTrfIC extends ValidatorEJB implements EmpLvePrkBalTrfIC ...@@ -591,7 +591,7 @@ public class EmpLvePrkBalTrfIC extends ValidatorEJB implements EmpLvePrkBalTrfIC
break; break;
//Modified by Anjali R. on[20/10/2018][Start] //Modified by Anjali R. on[20/10/2018][Start]
case 2 : /*case 2 :
parentNodeList = dom.getElementsByTagName("Detail2"); parentNodeList = dom.getElementsByTagName("Detail2");
parentNode = parentNodeList.item(0); parentNode = parentNodeList.item(0);
childNodeList = parentNode.getChildNodes(); childNodeList = parentNode.getChildNodes();
...@@ -644,7 +644,7 @@ public class EmpLvePrkBalTrfIC extends ValidatorEJB implements EmpLvePrkBalTrfIC ...@@ -644,7 +644,7 @@ public class EmpLvePrkBalTrfIC extends ValidatorEJB implements EmpLvePrkBalTrfIC
valueXmlString.append("</Detail1>"); valueXmlString.append("</Detail1>");
System.out.println("itm_default--["+valueXmlString+"]"); System.out.println("itm_default--["+valueXmlString+"]");
} }
break; break;*/
//Modified by Anjali R. on[20/10/2018][End] //Modified by Anjali R. on[20/10/2018][End]
} }
valueXmlString.append("</Root>"); valueXmlString.append("</Root>");
...@@ -802,6 +802,11 @@ public class EmpLvePrkBalTrfIC extends ValidatorEJB implements EmpLvePrkBalTrfIC ...@@ -802,6 +802,11 @@ public class EmpLvePrkBalTrfIC extends ValidatorEJB implements EmpLvePrkBalTrfIC
ITMDBAccessEJB itmDBAccess = null; ITMDBAccessEJB itmDBAccess = null;
Connection conn = null; Connection conn = null;
//Modified by Anjali R. on[05/11/2018][Start]
ArrayList<String> empFrList = null;
//Modified by Anjali R. on[05/11/2018][End]
try try
{ {
conn = getConnection(); conn = getConnection();
...@@ -811,6 +816,11 @@ public class EmpLvePrkBalTrfIC extends ValidatorEJB implements EmpLvePrkBalTrfIC ...@@ -811,6 +816,11 @@ public class EmpLvePrkBalTrfIC extends ValidatorEJB implements EmpLvePrkBalTrfIC
//InitialContext ctx = new InitialContext(appConnect.getProperty()); //InitialContext ctx = new InitialContext(appConnect.getProperty());
//itmDBAccess = (ITMDBAccessLocal)ctx.lookup("ibase/ITMDBAccessEJB/local"); //itmDBAccess = (ITMDBAccessLocal)ctx.lookup("ibase/ITMDBAccessEJB/local");
itmDBAccess = new ITMDBAccessEJB(); itmDBAccess = new ITMDBAccessEJB();
//Modified by Anjali R. on[05/11/2018][Start]
empFrList = new ArrayList<>();
//Modified by Anjali R. on[05/11/2018][End]
System.out.println("objContext ..:: ["+objContext+"]"); System.out.println("objContext ..:: ["+objContext+"]");
if( objContext != null && objContext.trim().length() > 0 ) if( objContext != null && objContext.trim().length() > 0 )
{ {
...@@ -899,6 +909,27 @@ public class EmpLvePrkBalTrfIC extends ValidatorEJB implements EmpLvePrkBalTrfIC ...@@ -899,6 +909,27 @@ public class EmpLvePrkBalTrfIC extends ValidatorEJB implements EmpLvePrkBalTrfIC
} }
else else
{ {
//Modified by Anjali R. on [05/11/2018][Validate employee code from][Start]
if("A".equalsIgnoreCase( editFlag ))
{
String tempEmpCodeFr = "";
empFrList = getEmpFromList(dom2, "2");
int listSize = empFrList.size();
System.out.println("Result of --["+empFrList+"]listSize--["+listSize+"]");
for(int i = 0;i < listSize ; i++)
{
tempEmpCodeFr = checkNull(empFrList.get(i));
System.out.println("EMployee from --["+tempEmpCodeFr+"]");
if(!tempEmpCodeFr.equalsIgnoreCase(empCodeFrom))
{
//Header and detail employee code from mismatch
retString = itmDBAccess.getErrorString( "", "VTELPTRF29", userId, "", conn );
return retString;
}
}
}
//Modified by Anjali R. on [05/11/2018][Validate employee code from][End]
//Modified by Anjali R. on[07/09/2018][Start] //Modified by Anjali R. on[07/09/2018][Start]
count = 0; count = 0;
//sql = " SELECT COUNT(*) AS EMP_CNT FROM EMPLOYEE WHERE EMP_CODE = ? "; //sql = " SELECT COUNT(*) AS EMP_CNT FROM EMPLOYEE WHERE EMP_CODE = ? ";
...@@ -1649,4 +1680,50 @@ public class EmpLvePrkBalTrfIC extends ValidatorEJB implements EmpLvePrkBalTrfIC ...@@ -1649,4 +1680,50 @@ public class EmpLvePrkBalTrfIC extends ValidatorEJB implements EmpLvePrkBalTrfIC
return delRowCount; return delRowCount;
} }
//Method added by Anjali R. on [05/11/2018][To get detail employee code from]
private ArrayList<String> getEmpFromList (Document dom ,String objContext) throws ITMException
{
ArrayList<String> empFromList = null;
NodeList empFrNodeList = null;
int nodeLength = 0;
Node parentNode = null;
String value = "";
int i = 0;
E12GenericUtility genericUtility = null;
try
{
genericUtility = new E12GenericUtility();
empFromList = new ArrayList<>();
empFrNodeList = dom.getElementsByTagName("Detail"+objContext);
nodeLength = empFrNodeList.getLength();
System.out.println("nodeLength--["+nodeLength+"]");
for(i = 0;i < nodeLength ; i++)
{
parentNode = empFrNodeList.item(i);
value = checkNull(genericUtility.getColumnValueFromNode("emp_code__fr", parentNode));
System.out.println("value--["+value+"]");
empFromList.add(value);
}
}
catch(Exception e)
{
if(genericUtility != null)
{
genericUtility = null;
}
}
finally
{
if(genericUtility != null)
{
genericUtility = null;
}
}
System.out.println("Returning from empFromList---["+empFromList+"]");
return empFromList;
}
} }
...@@ -203,6 +203,11 @@ public class EmpLvePrkBalTrfDefault extends ActionHandlerEJB implements EmpLvePr ...@@ -203,6 +203,11 @@ public class EmpLvePrkBalTrfDefault extends ActionHandlerEJB implements EmpLvePr
//valueXmlBuff.append("<exp_date>").append("<![CDATA[").append( endDate == null ? "" : sdf.format( endDate ) ).append("]]>").append("</exp_date>\r\n"); //valueXmlBuff.append("<exp_date>").append("<![CDATA[").append( endDate == null ? "" : sdf.format( endDate ) ).append("]]>").append("</exp_date>\r\n");
valueXmlBuff.append("<exp_date>").append("<![CDATA[").append( expDate == null ? "" : sdf.format( expDate ) ).append("]]>").append("</exp_date>\r\n"); valueXmlBuff.append("<exp_date>").append("<![CDATA[").append( expDate == null ? "" : sdf.format( expDate ) ).append("]]>").append("</exp_date>\r\n");
//Modified by Anjali R. on[20/09/2018][End] //Modified by Anjali R. on[20/09/2018][End]
//Modified by Anjali R. on [05/11/2018][To set header employee code in detail from on defualt action][Start]
valueXmlBuff.append("<emp_code__fr>").append("<![CDATA[").append( empCodeFrom == null ? "" : empCodeFrom).append("]]>").append("</emp_code__fr>\r\n");
//Modified by Anjali R. on [05/11/2018][To set header employee code in detail from on defualt action][End]
valueXmlBuff.append("<balance>").append("<![CDATA[").append( balance ).append("]]>").append("</balance>\r\n"); valueXmlBuff.append("<balance>").append("<![CDATA[").append( balance ).append("]]>").append("</balance>\r\n");
valueXmlBuff.append("<acct_prd>").append("<![CDATA[").append( acctPrd ).append("]]>").append("</acct_prd>\r\n"); valueXmlBuff.append("<acct_prd>").append("<![CDATA[").append( acctPrd ).append("]]>").append("</acct_prd>\r\n");
valueXmlBuff.append("<lve_unit>").append("<![CDATA[").append( lveUnit ).append("]]>").append("</lve_unit>\r\n"); valueXmlBuff.append("<lve_unit>").append("<![CDATA[").append( lveUnit ).append("]]>").append("</lve_unit>\r\n");
...@@ -278,6 +283,9 @@ public class EmpLvePrkBalTrfDefault extends ActionHandlerEJB implements EmpLvePr ...@@ -278,6 +283,9 @@ public class EmpLvePrkBalTrfDefault extends ActionHandlerEJB implements EmpLvePr
valueXmlBuff.append("<acct_prd>").append("<![CDATA[").append( acctPrd ).append("]]>").append("</acct_prd>\r\n"); valueXmlBuff.append("<acct_prd>").append("<![CDATA[").append( acctPrd ).append("]]>").append("</acct_prd>\r\n");
valueXmlBuff.append("<lve_unit>").append("<![CDATA[").append( lveUnit ).append("]]>").append("</lve_unit>\r\n"); valueXmlBuff.append("<lve_unit>").append("<![CDATA[").append( lveUnit ).append("]]>").append("</lve_unit>\r\n");
valueXmlBuff.append("<encashable>").append("<![CDATA[").append( encashable ).append("]]>").append("</encashable>\r\n"); valueXmlBuff.append("<encashable>").append("<![CDATA[").append( encashable ).append("]]>").append("</encashable>\r\n");
//Modified by Anjali R. on [05/11/2018][To set header employee code in detail from on defualt action][Start]
valueXmlBuff.append("<emp_code__fr>").append("<![CDATA[").append( empCodeFrom == null ? "" : empCodeFrom).append("]]>").append("</emp_code__fr>\r\n");
//Modified by Anjali R. on [05/11/2018][To set header employee code in detail from on defualt action][End]
valueXmlBuff.append("</Detail>"); valueXmlBuff.append("</Detail>");
} }
//Modified by Anjali R. on [24/09/2018][If no records exist][Start] //Modified by Anjali R. on [24/09/2018][If no records exist][Start]
......
...@@ -2347,4 +2347,15 @@ begin ...@@ -2347,4 +2347,15 @@ begin
end; end;
/ /
-------------------------------ADDED BY ANJALI R. ON[07/09/2018][END]------------------------------------------ -------------------------------ADDED BY ANJALI R. ON[07/09/2018][END]------------------------------------------
\ No newline at end of file
-------------------------------ADDED BY ANJALI R. ON[06/11/2018][Start]------------------------------------------
SET DEFINE OFF;
INSERT INTO MESSAGES (MSG_NO,MSG_STR,MSG_DESCR,MSG_TYPE,MSG_OPT,MSG_TIME,ALARM,ERR_SOURCE,CHG_DATE,CHG_USER,CHG_TERM,OVERRIDE_INPUT,MAIL_OPTION)
VALUES ('VTELPTRF29','Employee code From mismatch','Employee code from of header not matched with detail.','E',NULL,NULL,NULL,NULL,SYSDATE,'BASE','BASE',NULL,NULL);
COMMIT;
-------------------------------ADDED BY ANJALI R. ON[06/11/2018][END]------------------------------------------
\ No newline at end of file
...@@ -39,7 +39,7 @@ ...@@ -39,7 +39,7 @@
<color>536870912</color> <color>536870912</color>
</Footer> </Footer>
<Detail> <Detail>
<height>183</height> <height>226</height>
<color>536870912</color> <color>536870912</color>
</Detail> </Detail>
<TableDefinition> <TableDefinition>
...@@ -142,7 +142,13 @@ ...@@ -142,7 +142,13 @@
<name>lve_unit</name> <name>lve_unit</name>
<dbname>emp_lveprkbal_trfdet.lve_unit</dbname> <dbname>emp_lveprkbal_trfdet.lve_unit</dbname>
</table_column> </table_column>
<retrieve>PBSELECT( VERSION(400) TABLE(NAME=&quot;emp_lveprkbal_trfdet&quot; ) TABLE(NAME=&quot;emp_lveprkbal_trfhdr&quot; ) COLUMN(NAME=&quot;emp_lveprkbal_trfdet.tran_id&quot;) COLUMN(NAME=&quot;emp_lveprkbal_trfdet.line_no&quot;) COLUMN(NAME=&quot;emp_lveprkbal_trfdet.balance_code&quot;) COMPUTE(NAME=&quot;FN_GET_LVEPRK_DESCR(EMP_LVEPRKBAL_TRFHDR.TRAN_TYPE , EMP_LVEPRKBAL_TRFDET.BALANCE_CODE) balance_code_descr&quot;) COLUMN(NAME=&quot;emp_lveprkbal_trfdet.from_date&quot;) COLUMN(NAME=&quot;emp_lveprkbal_trfdet.to_date&quot;) COLUMN(NAME=&quot;emp_lveprkbal_trfdet.exp_date&quot;) COLUMN(NAME=&quot;emp_lveprkbal_trfdet.balance&quot;) COLUMN(NAME=&quot;emp_lveprkbal_trfdet.adj_date_fr&quot;) COLUMN(NAME=&quot;emp_lveprkbal_trfdet.adj_date_to&quot;) COLUMN(NAME=&quot;emp_lveprkbal_trfdet.tran_id__ref&quot;) COLUMN(NAME=&quot;emp_lveprkbal_trfdet.encashable&quot;) COLUMN(NAME=&quot;emp_lveprkbal_trfdet.acct_prd&quot;) COLUMN(NAME=&quot;emp_lveprkbal_trfdet.lve_unit&quot;) JOIN (LEFT=&quot;emp_lveprkbal_trfdet.tran_id&quot; OP =&quot;=&quot;RIGHT=&quot;emp_lveprkbal_trfhdr.tran_id&quot; )WHERE( EXP1 =&quot;EMP_LVEPRKBAL_TRFDET.TRAN_ID&quot; OP =&quot;=&quot; EXP2 =&quot;:tran_id&quot; LOGIC =&quot;And&quot; ) WHERE( EXP1 =&quot;EMP_LVEPRKBAL_TRFDET.LINE_NO&quot; OP =&quot;=&quot; EXP2 =&quot;:line_no&quot; ) ) ARG(NAME = &quot;tran_id&quot; TYPE = string) ARG(NAME = &quot;line_no&quot; TYPE = number) </retrieve> <table_column>
<type size="10">char</type>
<updatewhereclause>yes</updatewhereclause>
<name>emp_code__fr</name>
<dbname>emp_lveprkbal_trfhdr.emp_code__fr</dbname>
</table_column>
<retrieve>PBSELECT( VERSION(400) TABLE(NAME=&quot;emp_lveprkbal_trfdet&quot; ) TABLE(NAME=&quot;emp_lveprkbal_trfhdr&quot; ) COLUMN(NAME=&quot;emp_lveprkbal_trfdet.tran_id&quot;) COLUMN(NAME=&quot;emp_lveprkbal_trfdet.line_no&quot;) COLUMN(NAME=&quot;emp_lveprkbal_trfdet.balance_code&quot;) COMPUTE(NAME=&quot;FN_GET_LVEPRK_DESCR(EMP_LVEPRKBAL_TRFHDR.TRAN_TYPE , EMP_LVEPRKBAL_TRFDET.BALANCE_CODE) balance_code_descr&quot;) COLUMN(NAME=&quot;emp_lveprkbal_trfdet.from_date&quot;) COLUMN(NAME=&quot;emp_lveprkbal_trfdet.to_date&quot;) COLUMN(NAME=&quot;emp_lveprkbal_trfdet.exp_date&quot;) COLUMN(NAME=&quot;emp_lveprkbal_trfdet.balance&quot;) COLUMN(NAME=&quot;emp_lveprkbal_trfdet.adj_date_fr&quot;) COLUMN(NAME=&quot;emp_lveprkbal_trfdet.adj_date_to&quot;) COLUMN(NAME=&quot;emp_lveprkbal_trfdet.tran_id__ref&quot;) COLUMN(NAME=&quot;emp_lveprkbal_trfdet.encashable&quot;) COLUMN(NAME=&quot;emp_lveprkbal_trfdet.acct_prd&quot;) COLUMN(NAME=&quot;emp_lveprkbal_trfdet.lve_unit&quot;) COMPUTE(NAME=&quot;emp_code__fr&quot;) JOIN (LEFT=&quot;emp_lveprkbal_trfdet.tran_id&quot; OP =&quot;=&quot;RIGHT=&quot;emp_lveprkbal_trfhdr.tran_id&quot; )WHERE( EXP1 =&quot;EMP_LVEPRKBAL_TRFDET.TRAN_ID&quot; OP =&quot;=&quot; EXP2 =&quot;:tran_id&quot; LOGIC =&quot;And&quot; ) WHERE( EXP1 =&quot;EMP_LVEPRKBAL_TRFDET.LINE_NO&quot; OP =&quot;=&quot; EXP2 =&quot;:line_no&quot; ) ) ARG(NAME = &quot;tran_id&quot; TYPE = string) ARG(NAME = &quot;line_no&quot; TYPE = number) </retrieve>
<update>emp_lveprkbal_trfdet</update> <update>emp_lveprkbal_trfdet</update>
<updatewhere>0</updatewhere> <updatewhere>0</updatewhere>
<updatekeyinplace>no</updatekeyinplace> <updatekeyinplace>no</updatekeyinplace>
...@@ -721,34 +727,6 @@ ...@@ -721,34 +727,6 @@
<color>16777215</color> <color>16777215</color>
</background> </background>
</ColumnObject> </ColumnObject>
<TextObject>
<band>Detail</band>
<alignment>1</alignment>
<text>Adjustment Date To :</text>
<border>0</border>
<color>33554432</color>
<x>326</x>
<y>139</y>
<height>16</height>
<width>123</width>
<html>
<valueishtml>0</valueishtml>
</html>
<name>adj_date_to_t</name>
<visible>0</visible>
<font>
<face>Arial</face>
<height>-10</height>
<weight>400</weight>
<family>2</family>
<pitch>2</pitch>
<charset>0</charset>
</font>
<background>
<mode>2</mode>
<color>67108864</color>
</background>
</TextObject>
<TextObject> <TextObject>
<band>Detail</band> <band>Detail</band>
<alignment>1</alignment> <alignment>1</alignment>
...@@ -879,25 +857,27 @@ ...@@ -879,25 +857,27 @@
</ColumnObject> </ColumnObject>
<ColumnObject> <ColumnObject>
<band>Detail</band> <band>Detail</band>
<id>10</id> <id>13</id>
<alignment>0</alignment> <alignment>0</alignment>
<tabsequence>32766</tabsequence> <tabsequence>32766</tabsequence>
<border>5</border> <border>5</border>
<color>33554432</color> <color>33554432</color>
<x>455</x> <x>168</x>
<y>141</y> <y>116</y>
<height>15</height> <height>16</height>
<width>105</width> <width>105</width>
<format>[shortdate] [time]</format> <format>[general]</format>
<html> <html>
<valueishtml>0</valueishtml> <valueishtml>0</valueishtml>
</html> </html>
<name>adj_date_to</name> <name>acct_prd</name>
<visible>0</visible> <visible>0</visible>
<EditStyle style="edit"> <EditStyle style="edit">
<limit>0</limit> <limit>6</limit>
<case>any</case> <case>any</case>
<focusrectangle>no</focusrectangle>
<autoselect>yes</autoselect> <autoselect>yes</autoselect>
<autohscroll>yes</autohscroll>
<imemode>0</imemode> <imemode>0</imemode>
</EditStyle> </EditStyle>
<font> <font>
...@@ -913,29 +893,55 @@ ...@@ -913,29 +893,55 @@
<color>16777215</color> <color>16777215</color>
</background> </background>
</ColumnObject> </ColumnObject>
<TextObject>
<band>Detail</band>
<alignment>1</alignment>
<text>Adjustment Date From :</text>
<border>0</border>
<color>33554432</color>
<x>41</x>
<y>139</y>
<height>16</height>
<width>123</width>
<html>
<valueishtml>0</valueishtml>
</html>
<name>adj_date_fr_t</name>
<visible>0</visible>
<font>
<face>Arial</face>
<height>-10</height>
<weight>400</weight>
<family>2</family>
<pitch>2</pitch>
<charset>0</charset>
</font>
<background>
<mode>2</mode>
<color>67108864</color>
</background>
</TextObject>
<ColumnObject> <ColumnObject>
<band>Detail</band> <band>Detail</band>
<id>13</id> <id>9</id>
<alignment>0</alignment> <alignment>0</alignment>
<tabsequence>32766</tabsequence> <tabsequence>32766</tabsequence>
<border>5</border> <border>5</border>
<color>33554432</color> <color>33554432</color>
<x>168</x> <x>168</x>
<y>116</y> <y>141</y>
<height>16</height> <height>15</height>
<width>105</width> <width>105</width>
<format>[general]</format> <format>[shortdate] [time]</format>
<html> <html>
<valueishtml>0</valueishtml> <valueishtml>0</valueishtml>
</html> </html>
<name>acct_prd</name> <name>adj_date_fr</name>
<visible>0</visible> <visible>0</visible>
<EditStyle style="edit"> <EditStyle style="edit">
<limit>6</limit> <limit>0</limit>
<case>any</case> <case>any</case>
<focusrectangle>no</focusrectangle>
<autoselect>yes</autoselect> <autoselect>yes</autoselect>
<autohscroll>yes</autohscroll>
<imemode>0</imemode> <imemode>0</imemode>
</EditStyle> </EditStyle>
<font> <font>
...@@ -954,17 +960,17 @@ ...@@ -954,17 +960,17 @@
<TextObject> <TextObject>
<band>Detail</band> <band>Detail</band>
<alignment>1</alignment> <alignment>1</alignment>
<text>Adjustment Date From :</text> <text>Adjustment Date To :</text>
<border>0</border> <border>0</border>
<color>33554432</color> <color>33554432</color>
<x>41</x> <x>326</x>
<y>139</y> <y>139</y>
<height>16</height> <height>16</height>
<width>123</width> <width>123</width>
<html> <html>
<valueishtml>0</valueishtml> <valueishtml>0</valueishtml>
</html> </html>
<name>adj_date_fr_t</name> <name>adj_date_to_t</name>
<visible>0</visible> <visible>0</visible>
<font> <font>
<face>Arial</face> <face>Arial</face>
...@@ -981,12 +987,12 @@ ...@@ -981,12 +987,12 @@
</TextObject> </TextObject>
<ColumnObject> <ColumnObject>
<band>Detail</band> <band>Detail</band>
<id>9</id> <id>10</id>
<alignment>0</alignment> <alignment>0</alignment>
<tabsequence>32766</tabsequence> <tabsequence>32766</tabsequence>
<border>5</border> <border>5</border>
<color>33554432</color> <color>33554432</color>
<x>168</x> <x>455</x>
<y>141</y> <y>141</y>
<height>15</height> <height>15</height>
<width>105</width> <width>105</width>
...@@ -994,7 +1000,7 @@ ...@@ -994,7 +1000,7 @@
<html> <html>
<valueishtml>0</valueishtml> <valueishtml>0</valueishtml>
</html> </html>
<name>adj_date_fr</name> <name>adj_date_to</name>
<visible>0</visible> <visible>0</visible>
<EditStyle style="edit"> <EditStyle style="edit">
<limit>0</limit> <limit>0</limit>
...@@ -1015,6 +1021,35 @@ ...@@ -1015,6 +1021,35 @@
<color>16777215</color> <color>16777215</color>
</background> </background>
</ColumnObject> </ColumnObject>
<ColumnObject>
<band>Detail</band>
<id>15</id>
<alignment>0</alignment>
<tabsequence>32766</tabsequence>
<border>5</border>
<color>33554432</color>
<x>455</x>
<y>163</y>
<height>15</height>
<width>105</width>
<html>
<valueishtml>0</valueishtml>
</html>
<name>emp_code__fr</name>
<visible>1</visible>
<font>
<face>Arial</face>
<height>-10</height>
<weight>400</weight>
<family>2</family>
<pitch>2</pitch>
<charset>0</charset>
</font>
<background>
<mode>2</mode>
<color>16777215</color>
</background>
</ColumnObject>
<HtmlTable> <HtmlTable>
<border>1</border> <border>1</border>
</HtmlTable> </HtmlTable>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment