You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@poi.apache.org by Marius Oancea <ma...@sec.co.ro> on 2003/11/14 16:30:21 UTC

AreaPtg in Data validation

Hi,
    I created DVRecord and DVALRecord needed to support data validation 
in xls.

  I created this 2 records by yaking info from "Excel Developer Guide".

  I have a problem.


Example of the problem:

1. List data validation using inline values:

	I create a cell (D4). I create a validation rule for area D4:D4 and setted ruleType = 3 (list validation). At this validation rule i set Expression1 as "\"entry1;entry2;entry3;....\"".

	I generate xls and all is ok but the length of Expression1 cannot be more than 256 char (limitation given by the excel formulas).

	To workaround this problem I tryed another approach:

	I created some other cells (E1 containing entry1, E2 containing entry2 .....). Then i told to the validation rule that the validity is by formula and as expression 1 i setted "=$E$1:$E$4".

	The dropdown refuse to open in this case. If i go to cell D4 and open the Data Validation xls menu and then close all is woking then.

	I tried to use biffviewer to look what is changed but nothing is changed in DV or DVAL records.

	
	The problem appears to be from AreaPtg line 136.

	If I change :
        	array[offset] = (byte) (sid *+ ptgClass*);

	into 
        	array[offset] = (byte) (sid);

	then all is working. I just wanted to ask you if this hes no inpact on other thins too.




	10x
		Marius

-- 
"Why program by hand in five days what you can spend five years of your life automating." - Terence Parr


Re: AreaPtg in Data validation

Posted by av...@itellix.com.
Each Ptg can be one of three classes, which is what the ptgClass variable 
controls.... It can take values of 0,0x20 or 0x40 .... What you need to ensure 
is that for a validation rule, when the ptg is created, its ptgClass is 0. 
Generally removing the ptgClass variable might not be too good...

What I would suggest is, if you contribute your code and and provide some 
testcases, we can debug is together.. I myself do not know too much about data 
validation records. 

Regards
-
Avik
 

Quoting Marius Oancea <ma...@sec.co.ro>:

> Hi,
>     I created DVRecord and DVALRecord needed to support data validation 
> in xls.
> 
>   I created this 2 records by yaking info from "Excel Developer Guide".
> 
>   I have a problem.
> 
> 
> Example of the problem:
> 
> 1. List data validation using inline values:
> 
> 	I create a cell (D4). I create a validation rule for area D4:D4 and 
setted
> ruleType = 3 (list validation). At this validation rule i set Expression1 as
> "\"entry1;entry2;entry3;....\"".
> 
> 	I generate xls and all is ok but the length of Expression1 cannot be 
more
> than 256 char (limitation given by the excel formulas).
> 
> 	To workaround this problem I tryed another approach:
> 
> 	I created some other cells (E1 containing entry1, E2 containing entry2
> .....). Then i told to the validation rule that the validity is by formula
> and as expression 1 i setted "=$E$1:$E$4".
> 
> 	The dropdown refuse to open in this case. If i go to cell D4 and open 
the
> Data Validation xls menu and then close all is woking then.
> 
> 	I tried to use biffviewer to look what is changed but nothing is 
changed in
> DV or DVAL records.
> 
> 	
> 	The problem appears to be from AreaPtg line 136.
> 
> 	If I change :
>         	array[offset] = (byte) (sid *+ ptgClass*);
> 
> 	into 
>         	array[offset] = (byte) (sid);
> 
> 	then all is working. I just wanted to ask you if this hes no inpact 
on other
> thins too.
> 
> 
> 
> 
> 	10x
> 		Marius
> 
> -- 
> "Why program by hand in five days what you can spend five years of your life
> automating." - Terence Parr
> 
> 




---------------------------------------------------------------------
To unsubscribe, e-mail: poi-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: poi-user-help@jakarta.apache.org