Skip to main content

I try to make a simple transformation but couldn’t reach my goal so I thought someone might be able to help me ?

Here is the origin of my data : actually I read a dgn file which has only one layer called « Default » with more than 8.000 elements. These elements are cells. When I read this dgn file with FME , it splits the cells into lines but I don't want this. I want to get one point for each cell. So I use the transformers on cells in this order : 'labelpointreplacer' then 'coordinate extractor' then 'vertex creator' and finally 'sampler' (group by "igds_cell_sequence_number") to do this job and it works.

In the end I have as many points as there are cells.

But now I want to import these points into a PostGIS database.

So I want to use :

 

The internal parameter ‘igds_linkage{0}.string’ indicates wich layer each element should belong.

 

The parameter ‘fme_feature_type’ is set do ‘Default’.

 

 

I use the transformers ‘attribute exposer’ and ‘attribute creator’ to assign the values of the parameter ‘igds_linkage{0}.string’ to the parameter ‘fme_feature_type’.

 

 

Then I want to change this dgn file with FME so that in the end I get as many layers than there are ‘fme_feature_type’ values.

 

 

But I cannot succeed…

Do you know how I could work to make it happen ?!

 

I already tried different FME transformers : fanout, attribute splitter, list exploder, tester, … but with no result.

Any help would be highly appreciated.

First of all: The DGN reader has an option not to split cells:

Uncheck the marked setting.