Revision 20501 trunk/libraries/libDataSourceBaseDrivers/src/org/gvsig/data/datastores/vectorial/file/dbf/utils/DbaseFileWriter.java

View differences:

DbaseFileWriter.java
79 79
import org.gvsig.data.exception.InitializeWriterException;
80 80
import org.gvsig.data.exception.UnsupportedEncodingException;
81 81
import org.gvsig.data.exception.WriteException;
82
import org.gvsig.data.vectorial.DefaultAttributeDescriptor;
82 83
import org.gvsig.data.vectorial.IFeature;
83 84
import org.gvsig.data.vectorial.IFeatureAttributeDescriptor;
84 85
import org.gvsig.data.vectorial.IFeatureType;
......
170 171

  
171 172
    Iterator iterator=featureType.iterator();
172 173
   int i=0;
173
    while (iterator.hasNext()) {
174
   int jGeom=0;
175
   while (iterator.hasNext()) {
174 176
	   IFeatureAttributeDescriptor fad = (IFeatureAttributeDescriptor) iterator.next();
175 177
	   String type=fad.getDataType();
178
	   i=((DefaultAttributeDescriptor)fad).originalPosition();
176 179
//	   int i=fad.ordinal();
177 180
	   if (featureType.getDefaultGeometry()!=null && featureType.getDefaultGeometry().equals(fad.getName())){
181
		   jGeom++;
178 182
		   continue;
179 183
	   }
180
	   String fieldString = fieldString(type, feature, i);
184
	   String fieldString = fieldString(type, feature, i-jGeom);
181 185
	   if (fieldString==null){
182 186
		   if (type==IFeatureAttributeDescriptor.TYPE_STRING){
183 187
			   fieldString = NULL_STRING;
......
227 231
    Iterator iterator=featureType.iterator();
228 232
    while (iterator.hasNext()) {
229 233
 	   IFeatureAttributeDescriptor fad = (IFeatureAttributeDescriptor) iterator.next();
230
    	int i=fad.ordinal();
234
    	int i=((DefaultAttributeDescriptor)fad).originalPosition();
231 235
 	   String type=fad.getDataType();
232 236
    	String fieldString = fieldString(type, feature, i);
233 237
    	try {

Also available in: Unified diff