Wiki » History » Version 27

Manuel Madrid, 08/14/2014 02:41 PM

1 10 Manuel Madrid
h1. Useful links
2 2 Manuel Madrid
3 10 Manuel Madrid
h2. Java Excel API
4 1 Manuel Madrid
* http://www.andykhan.com/jexcelapi/
5 2 Manuel Madrid
* http://sourceforge.net/projects/jexcelapi/?source=navbar
6 2 Manuel Madrid
* http://search.maven.org/#artifactdetails|net.sourceforge.jexcelapi|jxl|2.6.12|jar
7 2 Manuel Madrid
8 16 Manuel Madrid
h1. Google Summer of Code weekly reports history
9 3 Manuel Madrid
10 27 Manuel Madrid
h2. Week 12
11 27 Manuel Madrid
12 27 Manuel Madrid
h3. What did I get done this week?
13 27 Manuel Madrid
14 27 Manuel Madrid
I insisted on the implementation of a combo box for selecting the fields that contains the coordinates. Unfortunately finally I was not able to finish the work as I encountered big problems.
15 27 Manuel Madrid
16 27 Manuel Madrid
h3. What do I plan on doing next week?
17 27 Manuel Madrid
18 27 Manuel Madrid
Next week I will release a new build of the plugin. It will be available in the Files section of the project website.
19 27 Manuel Madrid
20 27 Manuel Madrid
h3. Am I blocked on anything?
21 27 Manuel Madrid
22 27 Manuel Madrid
As I said I finally couldn't finish the implementation of the combo box for selecting the coordinate fields. I hope to finish it after the programme.
23 27 Manuel Madrid
24 26 Manuel Madrid
h2. Week 11
25 26 Manuel Madrid
26 26 Manuel Madrid
h3. What did I get done this week?
27 26 Manuel Madrid
28 26 Manuel Madrid
I have been trying to add a combo box for selecting the fields that contains the coordinates in order to improve the usability of this feature but I found some problems that I didn't expected.
29 26 Manuel Madrid
30 26 Manuel Madrid
h3. What do I plan on doing next week?
31 26 Manuel Madrid
32 26 Manuel Madrid
Next week I will give a last try to the combo box and will add the writing support feature.
33 26 Manuel Madrid
34 26 Manuel Madrid
h3. Am I blocked on anything?
35 26 Manuel Madrid
36 26 Manuel Madrid
I thought that the implementation of the combo box for selecting the fields that contains the coordinates was pretty similar than the one for selecting the sheet but it's not. I found two big differences that require quite a lot of extra work:
37 26 Manuel Madrid
* This parameter depends on other.
38 26 Manuel Madrid
* It is required to modify the driver in order to make a pre-reading of the spreadsheet file.
39 26 Manuel Madrid
40 26 Manuel Madrid
I'm still trying to add those changes.
41 26 Manuel Madrid
42 24 Manuel Madrid
h2. Week 10
43 24 Manuel Madrid
44 24 Manuel Madrid
h3. What did I get done this week?
45 24 Manuel Madrid
46 24 Manuel Madrid
Although I had planned to start with the writing support I finally decided to fix the feature request I opened last week [1] as I found an affordable way to do it. Finally, then, we will have a combo box for selecting the spreadsheet we want to load.
47 24 Manuel Madrid
48 24 Manuel Madrid
I have to say that I'm very happy with this as I think that it is a very important usability improvement.
49 24 Manuel Madrid
50 24 Manuel Madrid
While doing that I found and fixed a couple of issues affecting the gvSIG core: [2] and [3].  Hopefully those changes will be included in the next gvSIG 2.1 build.
51 24 Manuel Madrid
52 24 Manuel Madrid
h3. What do I plan on doing next week?
53 24 Manuel Madrid
54 24 Manuel Madrid
I'm considering to implement a similar solution for the "Point (X,Y,Z)" parameter in order to be able to select the name of the fields containing the coordinates from a combo box instead of just typing them, avoiding most mistakes.
55 24 Manuel Madrid
56 24 Manuel Madrid
h3. Am I blocked on anything?
57 24 Manuel Madrid
58 24 Manuel Madrid
No, I'm not.
59 24 Manuel Madrid
60 24 Manuel Madrid
[1] https://redmine.gvsig.net/redmine/issues/2689
61 1 Manuel Madrid
[2] https://redmine.gvsig.net/redmine/issues/2721
62 1 Manuel Madrid
[3] https://redmine.gvsig.net/redmine/issues/2722
63 25 Manuel Madrid
64 25 Manuel Madrid
h2. Week 9
65 24 Manuel Madrid
66 23 Manuel Madrid
h3. What did I get done this week?
67 23 Manuel Madrid
68 23 Manuel Madrid
This week I focused on testing the multiple spreadsheet support with latest gvSIG 2.1 build for both as a layer and a as a table cases. The functionality is working fine. I just detected one remarkable issue related with usability [1]. Unfortunately, to carry out this suggestion is too complicated and time-consuming to be done within the GSoC program as it would require to implement a new tab within the Load Layer and Load Table dialog boxes specific for Excel spreadsheets.
69 23 Manuel Madrid
70 23 Manuel Madrid
h3. What do I plan on doing next week?
71 23 Manuel Madrid
72 23 Manuel Madrid
Next week I will start the implementation of the writing support which will allow to export a gvSIG table to Excel spreadsheet format.
73 23 Manuel Madrid
74 23 Manuel Madrid
75 23 Manuel Madrid
h3. Am I blocked on anything?
76 23 Manuel Madrid
77 23 Manuel Madrid
No, I'm not.
78 23 Manuel Madrid
79 23 Manuel Madrid
[1] https://redmine.gvsig.net/redmine/issues/2689
80 23 Manuel Madrid
81 22 Manuel Madrid
h2. Week 8
82 22 Manuel Madrid
83 22 Manuel Madrid
h3. What did I get done this week?
84 22 Manuel Madrid
85 22 Manuel Madrid
This week I focused on fixing the issue [1]. I have to say that, after spending a lot of time looking for the cause of the problem, it was a little bit embarrassing to discover that this was not a bug but my mistake. I was systematically giving a wrong input for the "Point" parameter: I was typing the original name of the columns instead of the name of the headers (first row).
86 22 Manuel Madrid
87 22 Manuel Madrid
The good news are that the spatial support is working fine so I'm happy after all.
88 22 Manuel Madrid
89 22 Manuel Madrid
h3. What do I plan on doing next week?
90 22 Manuel Madrid
91 22 Manuel Madrid
Next week I will focus on testing the multiple spreadsheet support, which is already implemented. I also plan to prepare the implementation of the write support, which I will address the following week.
92 22 Manuel Madrid
93 22 Manuel Madrid
h3. Am I blocked on anything?
94 22 Manuel Madrid
95 22 Manuel Madrid
No, I'm not.
96 22 Manuel Madrid
97 22 Manuel Madrid
[1] https://redmine.gvsig.net/redmine/issues/2606
98 22 Manuel Madrid
99 20 Manuel Madrid
h2. Week 7
100 19 Manuel Madrid
101 20 Manuel Madrid
h3. What did I get done this week?
102 19 Manuel Madrid
103 19 Manuel Madrid
This week I focused on creating the first version of the user manual describing the functionalities developed so far.
104 19 Manuel Madrid
105 19 Manuel Madrid
I created the manual in ReStructuredText format as this is the format used in the gvSIG project for documentation. I converted the source file to PDF an uploaded to the project site [1]. I also uploaded the source file and the images to the SVN.
106 19 Manuel Madrid
107 20 Manuel Madrid
h3. What do I plan on doing next week?
108 19 Manuel Madrid
109 19 Manuel Madrid
I will focus on trying to fix the only bug detected so far that is directly related with the plugin [2].
110 19 Manuel Madrid
111 20 Manuel Madrid
h3. Am I blocked on anything?
112 19 Manuel Madrid
113 19 Manuel Madrid
I found problems converting the rest file to PDF. It took me quite a long time to figure out the cause of the problem, which was related with the quality of the images. However I'm not blocked at this moment as I could fix the problem.
114 19 Manuel Madrid
115 19 Manuel Madrid
[1] https://redmine.gvsig.net/redmine/attachments/download/923/jexcel_plugin_user_manual_v03.pdf
116 19 Manuel Madrid
117 21 Manuel Madrid
[2] https://redmine.gvsig.net/redmine/issues/2606
118 19 Manuel Madrid
119 17 Manuel Madrid
h2. Week 6
120 17 Manuel Madrid
121 17 Manuel Madrid
h3. What did I get done this week?
122 17 Manuel Madrid
123 17 Manuel Madrid
This week I focused on testing the plugin. I created a first version of the plugin test plan [1] including the main test cases involved. I also executed the tests.
124 17 Manuel Madrid
125 17 Manuel Madrid
As a result of the tests I detected a few issues that I reported to the gvSIG-Desktop project bugtraker [2]. Only one of them seems to be directly related with the jexcel plugin [3].
126 17 Manuel Madrid
127 17 Manuel Madrid
I'm happy because the plugin seems to be quite stable so far.
128 17 Manuel Madrid
129 17 Manuel Madrid
h3. What do I plan on doing next week?
130 17 Manuel Madrid
131 17 Manuel Madrid
I will focus on creating the user manual. Also will try to fix the only bug that is directly related with the plugin.
132 17 Manuel Madrid
133 17 Manuel Madrid
h3. Am I blocked on anything?
134 17 Manuel Madrid
135 17 Manuel Madrid
No.
136 17 Manuel Madrid
137 17 Manuel Madrid
[1] https://redmine.gvsig.net/redmine/attachments/download/912/org.gvsig.jexcel.app.mainplugin_test_plan.html
138 17 Manuel Madrid
139 17 Manuel Madrid
[2] https://redmine.gvsig.net/redmine/projects/gvsig-desktop/issues
140 17 Manuel Madrid
141 17 Manuel Madrid
[3] https://redmine.gvsig.net/redmine/issues/2606 
142 17 Manuel Madrid
143 10 Manuel Madrid
h2. Week 5
144 3 Manuel Madrid
145 10 Manuel Madrid
h3. What did I get done this week?
146 7 Manuel Madrid
147 8 Manuel Madrid
This week I have been learning the procedures for generating plugin installation packages. I found some problems when trying to configure the downloading URL of the package but finally I got it. As Joaquín, my mentor, suggested, I opened an issue ticket explaining the problem because it could be useful for other developers.
148 3 Manuel Madrid
149 8 Manuel Madrid
I uploaded the installation package to the project site at:
150 1 Manuel Madrid
151 3 Manuel Madrid
https://redmine.gvsig.net/redmine/attachments/download/895/gvSIG-desktop-2.1.0-org.gvsig.jexcel.app.mainplugin-1.0.0-SNAPSHOT-1-testing-all-all-j1_5.gvspkg
152 3 Manuel Madrid
153 1 Manuel Madrid
I also opened a ticket asking the gvSIG project admins for adding it to the official package repository:
154 8 Manuel Madrid
155 8 Manuel Madrid
https://redmine.gvsig.net/redmine/issues/2587
156 1 Manuel Madrid
157 10 Manuel Madrid
h3. What do I plan on doing next week?
158 9 Manuel Madrid
159 9 Manuel Madrid
I will test the package and will create user documentation for the current functionalities.
160 3 Manuel Madrid
161 10 Manuel Madrid
h3. Am I blocked on anything?
162 3 Manuel Madrid
163 9 Manuel Madrid
Not really.
164 3 Manuel Madrid
165 10 Manuel Madrid
h2. Week 4
166 1 Manuel Madrid
167 10 Manuel Madrid
h3. What did I get done this week?
168 3 Manuel Madrid
169 9 Manuel Madrid
I fixed some bugs related with the detection of the columns types. Now the plugin already recognize the following types: integer, long, float and double. The rest of the data is managed as string.
170 1 Manuel Madrid
171 9 Manuel Madrid
I finally decided to go for the spatial support. I made some changes and now the plugin is already able to load tables containing coordinates (X,Y and Z) as point layers.
172 3 Manuel Madrid
173 11 Manuel Madrid
h3. What do I plan on doing next week?
174 1 Manuel Madrid
175 9 Manuel Madrid
I will get to know how to generate the plugin package. Then I will generate an addon that could be installed from the gvSIG addons manager. I will check that it can be installed on the last gvSIG 2.1 build (2227). Finally I will upload the package to the gvSIG official repo so it can be installed by everyone.
176 3 Manuel Madrid
177 11 Manuel Madrid
h3. Am I blocked on anything?
178 3 Manuel Madrid
179 9 Manuel Madrid
I had some problems trying to use the latest version of the gvSIG library org.gvsig.tools. I wanted to use it as it has some interesting bugfixes but I finally couldn't.
180 3 Manuel Madrid
181 9 Manuel Madrid
Since those changes won't be available until the next gvSIG build release, Joaquín, my mentor, suggested to take a workaround in the meantime.
182 1 Manuel Madrid
183 11 Manuel Madrid
h2. Week 3
184 3 Manuel Madrid
185 11 Manuel Madrid
h3 What did I get done this week?
186 1 Manuel Madrid
187 9 Manuel Madrid
I adapted the source code of the CSV provider in order to be able to read Excel spreadsheets using the jexcelapi library. Finally I used more amount of source code of the CSV provider than expected.
188 1 Manuel Madrid
189 9 Manuel Madrid
I converted to Excel file format through LibreOffice the following files:
190 9 Manuel Madrid
* http://downloads.gvsig.org/download/geodata/tables/CSV/poblacionINE.csv.zip
191 9 Manuel Madrid
* http://downloads.gvsig.org/download/geodata/tables/CSV/torrent_4.csv.zip
192 7 Manuel Madrid
193 9 Manuel Madrid
I uploaded them to the plugin folder and used them for testing the data loading.
194 7 Manuel Madrid
195 9 Manuel Madrid
Now it is already possible to load them as tables in gvSIG with minor issues that I will try to fix the next week.
196 1 Manuel Madrid
197 11 Manuel Madrid
h3. What do I plan on doing next week?
198 7 Manuel Madrid
199 9 Manuel Madrid
I will fix some issues affecting the detection of the column types.
200 1 Manuel Madrid
201 9 Manuel Madrid
Depending on how long takes me to fix this issues I will consider to address the implementation of the spacial data support, despite it was initially planned in the next iteration, some weeks later.
202 1 Manuel Madrid
203 11 Manuel Madrid
h3. Am I blocked on anything?
204 1 Manuel Madrid
205 9 Manuel Madrid
I thought I could get more information from the Excel file than I finally got, as I couldn't get the information regarding the column type and the headers, in case they had.
206 1 Manuel Madrid
207 9 Manuel Madrid
This made me spend more time than expected studying the jexcelapi needlessly as I finally reused some of the CSV provider source code. I have to say that this made me think if using the jexcelapi library was the right decision but I finally decided to carry on with it. 
208 1 Manuel Madrid
209 11 Manuel Madrid
h2. Week 2
210 1 Manuel Madrid
211 11 Manuel Madrid
h3. What did I get done this week?
212 7 Manuel Madrid
213 9 Manuel Madrid
* Created the maven multi-mode structure for the project.
214 9 Manuel Madrid
* Added the library modules and configuration files needed to compile and deploy the gvSIG plugin.
215 9 Manuel Madrid
* Uploaded the project to the SVN:
216 9 Manuel Madrid
 https://devel.gvsig.org/svn/gvsig-jexcel
217 1 Manuel Madrid
218 3 Manuel Madrid
The SVN is also available from the gvSIG Redmine:
219 9 Manuel Madrid
 https://devel.gvsig.org/redmine/projects/gvsig-jexcel/repository
220 3 Manuel Madrid
221 11 Manuel Madrid
h3. What do I plan on doing next week?
222 3 Manuel Madrid
223 7 Manuel Madrid
Next week I will try to have a preliminar version of the plugin that allows just to load data, without taking into account types and parameters.
224 7 Manuel Madrid
225 11 Manuel Madrid
h3. Am I blocked on anything?
226 7 Manuel Madrid
227 12 Manuel Madrid
Had problems to find where to register the new data provider.
228 12 Manuel Madrid
229 12 Manuel Madrid
It was specially time-consuming to get familiar with the maven project structure.
230 12 Manuel Madrid
231 12 Manuel Madrid
I also found some problems to upload the source code to the SVN.
232 12 Manuel Madrid
233 12 Manuel Madrid
I was not sure if some aspects of the maven general configuration are correct.
234 3 Manuel Madrid
235 9 Manuel Madrid
Finally I could fix all those problems so I made the expected progress.
236 3 Manuel Madrid
237 11 Manuel Madrid
h2. Week 1
238 3 Manuel Madrid
239 11 Manuel Madrid
h3. What did you get done this week?
240 3 Manuel Madrid
241 9 Manuel Madrid
In order to implement the Excel data provider for gvSIG I will use as a basis a Java library that provides access to Excel data.
242 7 Manuel Madrid
243 9 Manuel Madrid
I considered the following alternatives:
244 15 Manuel Madrid
* POI-HSSF and POI-XSSF - Java API To Access Microsoft Excel Format Files
245 15 Manuel Madrid
* SmartXLS for Java
246 15 Manuel Madrid
* Java Excel API
247 7 Manuel Madrid
248 9 Manuel Madrid
I finally decided to go for the last one as it is powerful enough and it looks quite simple. It seems that this project doesn't have activity since 2010 but I hope this is not a problem.
249 7 Manuel Madrid
250 9 Manuel Madrid
Those are the most relevant links of this library:
251 18 Manuel Madrid
* http://www.andykhan.com/jexcelapi/
252 18 Manuel Madrid
* http://sourceforge.net/projects/jexcelapi/?source=navbar
253 18 Manuel Madrid
* http://search.maven.org/#artifactdetails|net.sourceforge.jexcelapi|jxl|2.6.12|jar
254 3 Manuel Madrid
255 7 Manuel Madrid
I've got a project within the gvSIG project infrastructure:
256 14 Manuel Madrid
 https://devel.gvsig.org/redmine/projects/gvsig-jexcel
257 3 Manuel Madrid
258 7 Manuel Madrid
The source code will be stored at:
259 9 Manuel Madrid
 https://devel.gvsig.org/svn/gvsig-jexcel
260 3 Manuel Madrid
261 11 Manuel Madrid
h3 What do you plan on doing next week?
262 7 Manuel Madrid
263 9 Manuel Madrid
I plan to create the Maven projects infrastructure. I will use as a basis the following gvSIG projects:
264 9 Manuel Madrid
 * gvSIG data provider for DGN
265 3 Manuel Madrid
    https://devel.gvsig.org/redmine/projects/gvsig-dgn
266 9 Manuel Madrid
 * gvSIG data provider for DXF
267 3 Manuel Madrid
    https://devel.gvsig.org/redmine/projects/gvsig-dxf
268 3 Manuel Madrid
269 9 Manuel Madrid
I also will use the gvSIG CVS data provider to compose the project skeleton.
270 3 Manuel Madrid
271 11 Manuel Madrid
h3. Are you blocked on anything?
272 3 Manuel Madrid
273 9 Manuel Madrid
Not, so far.