Deutsche Version
Contents
Contact: info@friendlyGIS.com
Copyright© friendlyGIS ® GmbH 2000-2010
Last update: January 1st, 2011
|
Enhancements & Bugfixes
Development history
This page contains a list of enhancements, bugfixes and known problems with their description and the version, in which they have been solved.
Released bug fixes
Bugs fixed in Version 2.05
No. |
Date |
Bug version |
Description |
Solution |
Date Solved |
Fix version |
38 |
04.04.03 |
2.00 |
When the connection times out during a post (form), the entries made are lost on re-login. This leads to a hang on the frontend if data entry is necessary and you need to restart from the top index to resolve this. |
Now jumps to the main page. |
Null |
2.05 |
56 |
12.09.03 |
2.03 |
If the index has been invalidated, the title string does not disappear. Also, changes in the selection of indexed objects are not reflected in the ps_manager menu. |
has been fixed with bug #72 |
Null |
2.05 |
57 |
14.09.03 |
2.01 (dispatcher) |
The dispatcher says "exiting system" on startup. This is nonsense... |
Remove message from code. |
17.11.03 |
2.05 |
60 |
03.11.03 |
2.04 |
Numerical fields cannot be updated. |
The int!update_rwo() method must use the method value_from_string() on the field descriptor to figure out the real value! |
03.11.03 |
2.05 |
61 |
21.10.03 |
2.04 FWO |
In Methode swl_get_objekt_id1() wird beim Einfügen des Hydranten ein Fehler erzeugt. Ein Feld "bezeichung" gibt es nicht |
Tippfehler, Methode geändert |
04.11.03 |
2.05 |
64 |
03.11.03 |
2.04 |
The button for update is showed even if the user does not have write access. Therefore, he is able to insert himself as the updater! |
Remove button if no update right. |
05.11.03 |
2.05 |
65 |
03.11.03 |
2.04 |
If input entries are used readonly, they are not visible on the first glance as being readonly. They just cannot be accessed with the cursor. |
Changed the input() and textarea() methods of the html_wrapper. Now, on readonly fields, they produce an invisible field (necessary for data transfer in forms!) and output the value in front of it. |
05.11.03 |
2.05 |
66 |
01.11.03 |
2.04 |
An older bug which occured occasionally: When entering a record for the first time (wartung), the RWO gets _unset on insert, but all values etc. are OK.
Within debugging sessions, we could find that the generators do not seem to run correctly. Might come from the creation of the detached record, which is done from the result_table of a join field. |
The detached record seems to have some link to the non-writable dataset. The problem disappears when we re-init the record before entering it by using the method new_detached_record() on a writable table. |
05.11.03 |
2.05 |
67 |
05.11.03 |
2.04 |
If there are history records without dates (which is not useful, but possible), there is a traceback in the sorted lists. |
Secure against unset fields by using appropriate sorting procedures. |
05.11.03 |
2.05 |
68 |
06.11.03 |
2.04 |
When entering regular maintenance histories, the entry is not reflected in the master record if the interval was "---" before. |
Change method syk_wa_historie.swl_after_update_action() so that "---" is treated like "unbekannt". Also do it for syk_st_historie! |
06.11.03 |
2.05 |
69 |
06.11.03 |
2.04 |
Opening regular maintenances in a new window is not useful, because we might input the first one more than once. |
Remove the _blank destination. |
06.11.03 |
2.05 |
70 |
06.11.03 |
2.05 |
Entering histories for hydrant does not work. There is no owner information in the generated history records at all! |
Shared constant owners is wrong. Must be an image problem, because in the code, it is correct! (no, it is defined in GMC200003067.magik) |
06.11.03 |
2.05 |
74 |
26.11.03 |
2.04 |
The dispatcher, when intercepting PUTs, cannot pass the PUT data on after a refreshed login. This is very annoying if you time out in a data entry form. |
Optimal: Pass on the form data
Minimal: Go to the main searchpage after timeout.
Realised: Minimal approach on 26.11.2003 |
26.11.03 |
2.05 |
76 |
26.11.03 |
2.04 |
Page headings should use the page_headings shared constant, if defined. This is the standard behaviour. |
Change default pages creation |
04.12.03 |
2.05 |
77 |
20.11.03 |
2.04 |
Errors occur with table search for flurstueck - if string fields are within from...to fields, the values are treated bad. And, there is no predicate.eq, but predicate.ge and predicate.le which might be slower. |
Optimise method make_predicate_for_table() |
28.11.03 |
2.05 |
78 |
26.11.03 |
2.04 |
The result tables lack the link to jump back to the owning page! This is not very elegant. |
Fix the names of the tags (srch_ref_desc / src_ref_title) |
29.11.03 |
2.05 |
Bugs fixed in Version 2.04
No. |
Date |
Bug version |
Description |
Solution |
Date Solved |
Fix version |
54 |
28.06.03 |
2.02 |
If standard visible fields are configured, the default settings are added as a page even if page-wise settings exist. They should only be used if no specific visibility is defined. |
Do not use the default visibility if there are pages defined in method swl_setup_default_pages() |
07.10.03 |
2.04 |
Bugs fixed in Version 2.03 (patch)
No. |
Date |
Bug version |
Description |
Solution |
Date Solved |
Fix version |
36 |
08.06.03 |
2.02 |
The search doesn't find all words which are visible in SW-Lookup. |
Reason: SEPIA uses old hard-coded mechanism to collect the visible fields. Write new method especially for SW-Lookup. |
09.06.03 |
2.03 (patch) |
41 |
08.06.03 |
2.02 |
The list of fields in the ps_field_config_menu is unsorted. This leads to a true mess when selecting fields from complex objects. |
Sort the list alphabetically and by field type. |
10.06.03 |
2.03 (patch) |
43 |
12.06.03 |
2.02 |
Geänderte externe Namen für Felder werden nicht verwendet. |
Bisher wird die Methode external_name des field_descriptors verwendet. Eine neue Methode für die Ermittlung des externen Feldnamens (swl_external_field_name()) erstellen und auf diese in den beiden Feld-Tabellen-Methoden in swl_html_wrapper zugreifen. |
16.06.03 |
2.03 (patch) |
45 |
12.06.03 |
2.02 |
The number of results must be displayed when doing a table search. |
Count the results and output the number in both formats. Use the message :good_results. |
15.06.03 |
2.03 (patch) |
46 |
12.06.03 |
2.02 |
The number of fields which are displayed in a table should be configurable - swl_get_rwo_short_desc() |
Changed the config menu to have a new entry for the number of fields. New methods in ps_manager store the value in sepia and the method swl_get_rwo_short_desc uses the value for deciding the number of fields to be displayed. |
15.06.03 |
2.03 (patch) |
47 |
15.06.03 |
2.02 |
Traceback occurs when pressing "up" in the list of visible fields when the upmost field is selected.
---- traceback ----
sw!version=3.1.0.SP2
os_text_encoding=cp1252
condition(binary_operator_undefined).invoke()
condition(information).raise(:binary_operator_undefined, simple_vector:[1-10])
binary_operator(cf).dispatch_failed(unset, 11)
operator_dispatch_failure(unset, 11)
binary_operator(cf).invoke(unset, 11)
operator cf wrapper(unset, 11)
operator >(unset, 11)
rope:[1-11][unset]
rope:[1-1].fast_elements()
a sorted_collection.fast_elements()
a ps_fields_config_menu.move_selection(-1)
a ps_fields_config_menu.btn_up()
a ps_fields_config_menu.perform_safely(:|btn_up()|) |
Check that the new position is not a header and fieldname is _unset. |
16.06.03 |
2.03 (patch) |
51 |
18.06.03 |
2.02 |
When field information is uncached due to a change in the visible field configuration, sepia procedures are not changed. This might lead to errors when indexing without a restart. |
Call sepia_uncache(), if it is understood. |
18.06.03 |
2.03 (patch) |
52 |
18.06.03 |
2.02 |
sepia methods for alk objects are still not working. This is due to the fact that the data structures in different ALK versions differ wideliy. |
Use another approach: Instead of providing sepia_get_search_string methods, provide a sepia_output_proc(). Rework this standard method to extract the normal code part and make it available for all subclassed methods. |
18.06.03 |
2.03 (patch) |
Bugs fixed in Version 2.03 (patch FWO)
No. |
Date |
Bug version |
Description |
Solution |
Date Solved |
Fix version |
44 |
12.06.03 |
2.02-FWO |
Arbeitsablauf für die Wartungsbearbeitung muß optimiert werden - direkter Sprung in die betreffenden Objekte. Zeitrahmen für Wartung konfigurierbar machen und bei Liste und Objekt berücksichtigen. |
Folgende änderungen einbringen:
- Kurze Meldung für :input_cyclic_work und diese vor den Standard-Arbeiten-Text stellen. Daran erkennen, ob es eine zukünftige Wartung sein soll: Verbessert Erkennbarkeit der anstehenden Arbeiten
- Liste der anstehenden Wartungen nicht als Ergebnisliste, sondern als eigene HTML-Tabelle (ist ja recht einfach). Diese mit einem Link für den Sprung zum Objekt selbst, für die Eintragung oder für den Sprung zum Elternobjekt versehen.
- Zeitraum konfigurierbar machen, in dem Wartungsarbeiten eingebbar sind (SEPIA fwo_swl_history_range).
- diesen Zeitraum als Vorgabe für die Liste verwenden!
- Beim Sprung in die Liste anstehender Wartungsarbeiten sinnvolle Vorgaben machen. |
17.06.03 |
2.03 (patch FWO) |
Bugs fixed in Version 2.02
No. |
Date |
Bug version |
Description |
Solution |
Date Solved |
Fix version |
37 |
01.06.03 |
2.01 |
Wrong entries for the internal names of layouts could lead to distorted images which come from the misinterpretation of underscores |
Replace underscores and all other special characters from internal names of layouts. See also Bug #34 |
02.06.03 |
2.02 |
Bugs fixed in Version 1.30
No. |
Date |
Bug version |
Description |
Solution |
Date Solved |
Fix version |
3 |
23.05.01 |
1.2 |
If we try to produce the test display of an object which has no graphics, a condition is raised. This condition is not caught, instead a traceback on the prompt appears. |
the button must use a new_safe(), because the condition has already been raised. |
26.08.01 |
1.30 |
Bugs fixed in Version 1.21
No. |
Date |
Bug version |
Description |
Solution |
Date Solved |
Fix version |
1 |
22.05.01 |
1.2 |
The display with individual visibilities did not work |
Inquiries showed that if the visibilities were saved, they did not contain the right data.
Method save_scale_visibility() had been given the additional argument from_ace_control, but did accidentally not use it.
This has been fixed. |
22.05.01 |
1.21 |
2 |
23.05.01 |
1.2 |
The ps_comm_acp did not recognize if the connection to the dispatcher has been lost. Instead, the connection had to be re-established manually. |
Inquiries showed that the C function swl_inet_input() did loop endlessly if the call to read() on the socket returned a value of -1. This was because of a former change to allow large data blocks read (they are delivered in several blocks) and the loop tested only for the return value 0 (not -1). |
23.05.01 |
1.21 |
5 |
01.06.01 |
1.2 |
When an object has no overview graphics defined, the graphics appears in the same size as the main graphics (not 300x200). Additionally, the part of the graphics which matches the desired bounds is painted smaller. |
The reason lies in method graphics_creation_arguments(). There, the width and height fields have not been reset to the desired value. |
20.06.01 |
1.21 |
6 |
02.06.01 |
1.2 |
Sometimes, Images are scrambled. They seem not to be scrambled by the PeerServer? |
Perhaps a block size boundary problem?
No, probably a text/binary problem which should be fixed with the changes for bug #12 |
25.06.01 |
1.21 |
10 |
24.06.01 |
1.2 |
Warning output when HTTP/1.0 is read on startup should be suppressed |
If HTTP is the answer, we do no longer issue a warning in method ps_manager.send_string(). |
25.06.01 |
1.21 |
13 |
20.06.01 |
1.2 |
After performing the POST request, the answer seems not to be finished, and the page cannot be displayed (must be issued again) when switching back in the browser.
This effect is only seen with MSIE and StarOffice, not with Netscape or HotJava. |
Instead of sending a "200 OK" answer on the POST, we now send a "303 See Other" answer, which leads directly to the generated page.
In order to do so, the whole ConnectionData has been rewritten so that it uses the URI as a key, not the filename. The other classes had to be corrected, too. |
25.06.01 |
1.21 |
14 |
25.06.01 |
1.2 |
If words in the search text have a trailing comma, this comma is included in the search word. Interpunction, however, should be eliminated during index creation. |
The method sepia_magik.begin_index() uses the method get_word() on text_input_stream, which seems to deliver words including interpunction.
For a first fix, we remove trailing ".,:" from any word during indexing (this covers most of the cases where this effect will show up). |
25.06.01 |
1.21 |
15 |
20.06.01 |
1.2 |
A fixed view scale is only roughly reflected by the system. E. g. 1:1500 will become 1:1487 etc. |
This has to do with the view scale generation - there is currently a bounding box calculated which is then used to draw. Rounding then leads to the aberrations. To solve this, we reworked the whole drawing mechanism, so that the view scale is used if it is the base of the configuration. |
27.06.01 |
1.21 |
16 |
06.07.01 |
1.21 |
SEPIA stops indexing when an RWO has an internal error, like bad methods for logical fields. |
Should catch errors, log them and continue with the next table after a given number of errors per table. |
01.01.02 |
1.21 |
21 |
22.09.01 |
1.21 |
If an overview is created which has been defined, sometimes the image is smaller than the window, has a black border on lower right side, and a wrong aspect ratio |
clip_bounds seem to have been dangling around in the .window of the painter - now we reset the clip_bounds when we do a bounds_for_rwo(), this seems to help. |
23.09.01 |
1.21 |
Known (unreleased) bugs
No. |
Date |
Bug version |
Description |
Solution |
Date Solved |
Fix version |
29 |
29.09.02 |
1.30 |
The directory for the dispatcher in the installation procedure is not created. Instead, copying does not take place and the warning "opendir: no such file or directory" is output at the prompt. |
|
Null |
|
42 |
08.06.03 |
2.01 |
Traceback occurs, if the list in sepia configuration is unselected and the add button is pressed:
**** Error: Index 1 out of bounds
index_out_of_bounds(index=1)
---- traceback ----
sw!version=3.1.0.SP2
os_text_encoding=cp1252
condition(index_out_of_bounds).invoke()
condition(information).raise(:index_out_of_bounds, simple_vector:[1-2])
rope:[1-0].out_of_bounds(simple_vector:[1-1])
rope:[1-0].key_not_found(simple_vector:[1-1])
rope:[1-0][1]
a sorted_collection.nth(1)
a sorted_collection[1]
a sorted_collection.first
a sepia_config_menu.list_select(True)
a sepia_config_menu.select()
button_item(Zufügen).doit() |
|
Null |
|
49 |
17.06.03 |
2.02 |
In the list of fields, more than one field cannot be moved in parallel. |
|
Null |
|
53 |
19.06.03 |
2.02 |
During the initialisation of a peerserver connection (when loading templates and mime types), the dispatcher should block other connections because if they are up, the answer disturbs the process of loading the templates and mime types. |
|
Null |
|
58 |
11.10.03 |
1.05 |
Bei der Auswahl der Schemapläne gibt es immer nur ein Format (Schemaplan). Das sollte aber erweiterbar sein! |
|
Null |
|
59 |
03.11.03 |
2.04 FWO |
FWO Extension: The button for first entry of the histories does not appear until the "send changes" button is pressed for the first time. |
This is no error: The button appears only if the creator or updater is in the same group as the current user.
However, this might be subject to a configuration option? |
Null |
|
62 |
21.10.03 |
2.04 |
Attribut "Status" in OK Hydrant ist keine Auswahlliste? |
this is no error of sw-lookup. It is a false implementation of gm_fwa_hydrant.can_match?() |
Null |
|
Released enhancements
Enhancements released with Version 2.05
No. |
Date |
Bug version |
Description |
Solution |
Date Solved |
Fix version |
32 |
14.05.03 |
|
ALK- und ALB- Schnittstelle für Flurstücke; Ziel: Suche nach Gemeinde, Flur, Gemarkung, Flst-Nr.
Manfred Schubert zu Geo-Lim 460
Kerstin Kirchhoff 458 |
alk_support_code.magik dient diesem Zweck. |
Null |
2.05 |
35 |
02.06.03 |
2.02 |
The save-load process now only saves and loads layout information. Perhaps, also visible field information should be storable. |
Implement a button which makes the limitation switchable. |
04.12.03 |
2.05 |
39 |
04.04.03 |
2.00 |
When object configuration is changed (add or replace objects from index), the index is completely invalidated and must be rebuilt. |
This has been fixed as bug#72 |
Null |
2.05 |
48 |
16.06.03 |
2.02 |
If, for example, only the value of the number of fields is changed, it is not reflected until the peerserver restarts. |
Implement a clean uncaching mechanism and call it whenever something is changed.
Should be fixed with version 2.05 |
Null |
2.05 |
63 |
03.11.03 |
2.04 FWO |
The field "Detailinfo" does not provide useful information in the short description |
Change the method dd_record_mixin.swl_get_rwo_short_desc() which is changed for the FWO model anyway. |
05.11.03 |
2.05 |
71 |
12.11.03 |
2.04 |
With large indices, many searches (at least the more unlucky ones) lead to a deadlock, which kills the peerserver and causes a several minutes blackout on the systen. |
Implement a self-aborting mechanism on the search page level, which returns the search gracefully while providing information about the search abortion. |
25.11.03 |
2.05 |
72 |
24.11.03 |
2.04 |
It should be (and must be) possible to add or remove tables from an index without invalidating the index in total. |
Save tables removed from the index in a configuration variable, and test for new tables by looking at the existing index. Then, first delete the ones remembered, then do incremental indexing, and for tables without existing entries in sepia, index the complete table. |
27.11.03 |
2.05 |
73 |
26.11.03 |
2.04 |
The SEPIA should allow to save the index list. Also, the level of children should be reduced to 1 because most lower-level children simply lead to nonsens when indexing.
And, the calling ps_manager.menu should be updated when the index has been changed. |
New methods save_idx_config_to_file() and load_idx_config_from_file() written and included in menu. |
26.11.03 |
2.05 |
75 |
25.11.03 |
2.04 |
The index text should omit the fieldnames, since most often we cannot search for them effectively while we get a lot of garbage in the index! |
Method sepia_make_fields_proc_text() extended, the sepia config var fieldnames_in_searchtext may be set to true to get the old behaviour |
26.11.03 |
2.05 |
Enhancements released with Version 2.02
No. |
Date |
Bug version |
Description |
Solution |
Date Solved |
Fix version |
19 |
27.08.01 |
1.21 |
It should be possible to load and save the configuration values for tables, so that they can be delivered for standard fachschalen objects. |
This is a new feature in Version 2.x |
01.06.03 |
2.02 |
Enhancements released with Version 1.30
No. |
Date |
Bug version |
Description |
Solution |
Date Solved |
Fix version |
17 |
20.06.01 |
1.2 |
SEPIA needs to do incremental indexing for large datasets. |
This has been introduced with version 1.30 |
30.09.02 |
1.30 |
20 |
27.08.01 |
1.21 |
It should be possible to delete an already defined view, in case of erroneous entries. |
Add a new button to do this |
01.01.02 |
1.30 |
23 |
01.04.02 |
1.21 |
The installation must be simplified. It should be enough to load one file, which inquires the necessary data, which should be set to reasonable default values. |
New component fghh_install provides this, and is released with version 1.30. |
01.07.02 |
1.30 |
Enhancements released with Version 1.21
No. |
Date |
Bug version |
Description |
Solution |
Date Solved |
Fix version |
7 |
02.06.01 |
1.2 |
The labels for the thread status are not updated automatically. They cannot be by the threads themselves, but should be updated at least when the ps_manager status changes (especially on shutdown). |
The thread labels are updated when changing the status. However, this does not always reflect the correct state perfectly. |
24.06.01 |
1.21 |
9 |
19.06.01 |
1.2 |
SW-Lookup should provide the ability to display inner worlds, like in TK Fachschale. |
Provide a view internals which provides the ability to display internal worlds. The simple solution is to provide a layout with name "internals" to select the correct ACE and visibility information needed for display. |
01.06.02 |
1.21 |
12 |
24.06.01 |
1.2 |
Standard images should be in PNG Format, plus a hint that .gif can be produced if the browser does not understand PNG. |
Insert PNG mime type in swldispatcher.mim and change the image_types shared constant. Fixed a bug in the ACP code, which opened files to send as text files which destroys the PNG header. This should also fix bug #6 ! |
25.06.01 |
1.21 |
Planned enhancements
No. |
Date |
Bug version |
Description |
Solution |
Date Solved |
Fix version |
8 |
20.06.01 |
1.2 |
SW-Lookup should provide true-scale plotting on simple devices, at least to the possible extent. Also, the scale numbers should be rounded by a reasonable amount to provide useful output. |
|
Null |
|
18 |
26.08.01 |
1.21 |
If a drawing function fails, we should catch this error and try to produce the image which has been drawn so far, perhaps with a warning string on it. |
|
Null |
|
30 |
12.05.03 |
2.0 |
Manual should describe the allowed entries in the "internal name" field for layouts. See also Bug #34 and Bug #37 |
|
Null |
|
40 |
04.04.03 |
2.00 |
It should be possible to run the installation unattended by setting some environment variables. This makes it possible to include the installation procedure in site-specific automated processes. |
Was realised in version 2.05 - but is still undocumented due to personal changes in partner company (no more feedback) |
Null |
|
50 |
18.06.03 |
2.02 |
It should be possible to reset the visible fields to the database defined default settings with a click. |
|
Null |
|
|