Various Dataface Ideas(wishlists)

A place for users and developers of the Xataface to discuss and receive support.

Postby Aoirthoir » Mon Jul 10, 2006 1:20 pm

I have quite a few things here Mr. Steve. I will break them out into other messages if you prefer or think that will be more efficient. Many of these are perhaps a long time wishlist and not immediately necessary. Some of them, such as the ones regarding the layout of the tables (for instance the wide horizontal scrolling when there are a lot of fields on a table) might already be manageable, perhaps with adjustments by dataface programmers to the smarty templates? So I am just tossing them all out here now to record them:

Parent Record Fields displayed when editing a child record.

Similarly if editing a relationship record, that you got to by clicking in a relationship, perhaps some way of displaying the originating record info and table name so we know where we were coming from? (Back button of course would yield some errors on occasion if we had edited and saved information.)

Display Tab (Just like Detail but only Displays data, no editing capability)

Option to display NO fields in list (or detail or display) so individual fields can be turned on instead of turning lots of fields off. (If the Dataface Configurator is created then this might be moot)

All buttons such as action menu, search field etc. displayed on left. (If the table is long then we currently have to scroll horizontally to access these options.)

Have an option so that in a list records can be displayed in more than one row. (So perhaps the rows wont be so long on tables with lots of fields, especially when lots of those fields need to be seen in a list...)

How about rows in List View being displayed in a Field, with only certain fields displayed (perhaps using a concat). Then a display (or even edit) form displayed to the right/left/bottom/top of this scrolling field. Then as you scroll up and down in this field, the rest of the fields change to display info for the highlighted record.

Dataface Report writer. Basically very much what dataface already is, but the option to display the same info without all of the links and so on that make the Dataface program. (Of course a report writer is more complex than what I just said, But I think dataface has a lot of the basics built in and could eventually be a fantastic report writer in some circumstances.)

Support to display Views just as the current ability to support tables. (Thus relationships would be built into MySQL)

On the Menu on the left we have the ability to change the display name for a table in the conf.ini file under the [_tables] section. Thus a statement contacts_table = "Contact Information" causes the term Contact Information to display on the menu on the right. If however contacts_table is a part of a relationship from another table, the tab for the relationship would say contacts_table and not "Contact Information". Perhaps a way exists to modify this as well to either make it say the same thing or something entirely different?

Option to have find display LIST instead of Detail. (Perhaps a checkbox so if we want to go to first record found in Detail mode or to go to a list instead...)

Ability to store in a config file (or later in a preferences for users) to determine the standard number of records to display in List mode. Rather than the currently 30 automatically.

If in a list, display beside each record the number of the current record of the SET. Thus if it is part of a find and 100 records are found than this record is 3 of that hundred.

Box to enter what page you wish to go to, rather than just a link for the next 30 (next 100 etc)

Primary Key field displayed in FIND, just in case.

Custom Sidebar instructions. I LOVE the sidebar in find. It is fantastic. This would be a nice feature to have for all the dataface screens. With the info stored in a database so users or admins could updated it. In addition a sidebar for a user to be able to add her own comments to a page in the program, for personal notes, reminders how to do this or that, etc.

Dataface in Dataface not just configs. (This is actually the dataface configurator we spoke about on the other board. In the basics and to start it should just be a database of all options in dataface. I can set this up once i know the options, I'll just set up a bunch of MySQL tables. Then, even if Dataface itself does not integrate to it, we could write out the config files....Which brings up, can dataface write out text files? If not perhaps that could be a feature request.

All buttons, find, save, etc at the top and bottom.

From what I see in the comments it appears this is already existing but just in case, Dataface to call stored procedures? (Currently I am working on triggers, which Dataface wont need to implement since they are done automatically..for things like a history table...but stored procedure access would also be nice...)

Have the ability to manipulate, search, etc a subset of data. (Perhaps simply using stored procedures? or stored procedures to copy data to a copy table?)

Can dataface create tables itself? (I am assuming it can if we input the SQL directly?)

Can dataface Display (for debugging or learning purposes for instance) the SQL calls it makes, the same way PHPMyAdmin does? (With the ability to turn that feature off so regular users cannot do so?

Could dataface have the ability to have an SQL input field?
Aoirthoir
 
Posts: 420
Joined: Wed Dec 31, 1969 5:00 pm

Postby shannah » Mon Jul 10, 2006 3:09 pm

>Parent Record Fields displayed when editing a child record.
THis is a good idea. Dataface 0.6 allows you to add this quite easily yourself, but a non-intrusive, collapsible block above the related-record form would probably be nice addition that nobody could complain about.

>Similarly if editing a relationship record, that you got to by clicking
> in a relationship, perhaps some way of displaying the originating record
> info and table name so we know where we were coming from? (Back button of
> course would yield some errors on occasion if we had edited and saved information.)

Yes.. this is a tricky bit to deal with, since records can be related to any number of records. I have partially solved the problem with Dataface 0.6 by allowing you to define a method named getBreadCrumbs() that returns the "Path" per se to the current record. That was if the record is generally always treated as a sub-record of another, then the breadcrumbs will reflect it. (oh ya, I have added bread-crumbs along the top to keep track of where you are and make it easier to navigate).

>Display Tab (Just like Detail but only Displays data, no editing capability)
Done. This is part of Dataface 0.6

>Option to display NO fields in list (or detail or display) so individual
> fields can be turned on instead of turning lots of fields off.
>(If the Dataface Configurator is created then this might be moot)

Good idea. Please add this to the bug tracker as a feature request if you get a chance: http://framework.weblite.ca/development/issue-tracker/

>Have an option so that in a list records can be displayed in more than one row.
>(So perhaps the rows wont be so long on tables with lots of fields, especially
>when lots of those fields need to be seen in a list...)
Do you see this still as a tabular list (with rows and columns) or more of a summary list (like google search results)?


>All buttons such as action menu, search field etc. displayed on left.
> (If the table is long then we currently have to scroll horizontally to access these options.)
Done. This is done in Dataface 0.6

>How about rows in List View being displayed in a Field, with only certain fields displayed
>(perhaps using a concat). Then a display (or even edit) form displayed to the right/left/bottom/top
> of this scrolling field. Then as you scroll up and down in this field, the rest of the fields
>change to display info for the highlighted record.

Sounds like a nifty UI idea.. not quite on the radar yet though. Please add to issue tracker.

> Dataface Report writer
I have been looking into open-source products like Jasper Reports and I-Reports and like what they offer in terms of report generation. Certainly reporting would be a good feature for Dataface but I am still doing research to find the best way to implement it. If I can make Dataface work nicely with products like I-Reports and Jasper reports, I would prefer that to developing a custom reports system.

>Support to display Views just as the current ability to support tables. (Thus relationships would be built into MySQL)
Certainly the right direction. I'm currently working on a View class to serve as a surrogate view. I.e. you give it an SQL query, and Dataface treats it as a table so you can add/edit/delete records from the "view". Do you mean something like this - or more for it to work well with MySQL's Views?

> On the Menu on the left we have the ability to change the display name for a
> table in the conf.ini file under the [_tables] section.
The contents of the conf.ini file are loaded into the Dataface_Application::_conf['_tables'] variable which can be accessed as follows:
Code: Select all
$app =& Dataface_Application::getInstance();
print_r($app->_conf['_tables']);


If you wanted to change the name of a table depending on the context, you could do something like the following in your index.php file before the call to $app->display();

Code: Select all
if ( $condition == true ){
    $app->_conf['_tables']['contacts_table'] = "Contact Information";
} else {
    $app->_conf['_tables']['contacts_table'] = 'contacts_table';
}


> Option to have find display LIST instead of Detail.
Done in dataface 0.6

> Ability to store in a config file (or later in a preferences for users)
> to determine the standard number of records to display in List mode. Rather than
> the currently 30 automatically.
Good idea. Please add to issue tracker.

> If in a list, display beside each record the number of the current record of
> the SET. Thus if it is part of a find and 100 records are found than this record
> is 3 of that hundred.
Good idea. Please add to issue tracker.

> Box to enter what page you wish to go to, rather than just a link for the next 30 (next 100 etc)
Dataface 0.6 takes a more googlish approach by providing prev/next links in addition to direct links to each page (1,2,3,...)

> Primary Key field displayed in FIND, just in case.
Done in 0.6

>Custom Sidebar instructions. I LOVE the sidebar in find.
> It is fantastic. This would be a nice feature to have for all the
> dataface screens. With the info stored in a database so users or admins
> could updated it. In addition a sidebar for a user to be able to add her
> own comments to a page in the program, for personal notes, reminders how
> to do this or that, etc.
A built-in help system is definitely a must for any "user-friendly" app. This is a good idea. Dataface 0.6 allows you to insert your own content to just about any section of the application using Delegate classes. But we should definitely work on moving "frequently-needed" help into a core help system... Not on the radar yet.. but soon.


> Dataface in Dataface not just configs. (This is actually the dataface
> configurator we spoke about on the other board. In the basics and to start
> it should just be a database of all options in dataface. I can set this up
> once i know the options, I'll just set up a bunch of MySQL tables. Then, even
> if Dataface itself does not integrate to it, we could write out the config
> files....Which brings up, can dataface write out text files? If not perhaps
> that could be a feature request.

All of the reading and writing of config files is contained in the ConfigTool class. It can read and write to both the database and the file-system (as INI files). I haven't "activated" the database reading/writing because of some minor issues that cropped up in testing. I am committed to building a web-based administration tool for dataface, and this would work best with database storage - so I will definitely get this running at some point.

> All buttons, find, save, etc at the top and bottom.
Good idea.. Please add to issue tracker.

> Can dataface create tables itself? (I am assuming it can if we input the SQL directly?)
Not quite clear how you mean. Dataface just runs on PHP so you can use mysql query calls directly to create tables.

> Can dataface Display (for debugging or learning purposes for instance)
> the SQL calls it makes, the same way PHPMyAdmin does? (With the ability to
> turn that feature off so regular users cannot do so?
Excellent idea. Please add to issue tracker.

>Could dataface have the ability to have an SQL input field?
0.6 will allow you to define your own actions. It would be an easy thing to create an SQL query action to just display the results of an SQL query.

Thanks for the input

Best regards

Steve
--
Steve Hannah
@shannah78 (on twitter)
sjhannah.com blog
shannah
 
Posts: 4457
Joined: Wed Dec 31, 1969 5:00 pm

Postby Aoirthoir » Tue Jul 11, 2006 6:47 am

>>Display Tab (Just like Detail but only Displays data, no editing capability)
>Done. This is part of Dataface 0.6

>>All buttons such as action menu, search field etc. displayed on left.
>> (If the table is long then we currently have to scroll horizontally to access these options.)
>Done. This is done in Dataface 0.6

>> Option to have find display LIST instead of Detail.
>Done in dataface 0.6

>> Primary Key field displayed in FIND, just in case.
>Done in 0.6


Excellent. Thanks.
Aoirthoir
 
Posts: 420
Joined: Wed Dec 31, 1969 5:00 pm

Postby Aoirthoir » Tue Jul 11, 2006 6:58 am

>Option to display NO fields in list (or detail or display) so individual
> fields can be turned on instead of turning lots of fields off.
>(If the Dataface Configurator is created then this might be moot)

Good idea. Please add this to the bug tracker as a feature request if you get a chance: http://framework.weblite.ca/development/issue-tracker/

>How about rows in List View being displayed in a Field, with only certain fields displayed
>(perhaps using a concat). Then a display (or even edit) form displayed to the right/left/bottom/top
> of this scrolling field. Then as you scroll up and down in this field, the rest of the fields
>change to display info for the highlighted record.

Sounds like a nifty UI idea.. not quite on the radar yet though. Please add to issue tracker.

> Ability to store in a config file (or later in a preferences for users)
> to determine the standard number of records to display in List mode. Rather than
> the currently 30 automatically.
Good idea. Please add to issue tracker.

> If in a list, display beside each record the number of the current record of
> the SET. Thus if it is part of a find and 100 records are found than this record
> is 3 of that hundred.
Good idea. Please add to issue tracker.

> All buttons, find, save, etc at the top and bottom.
Good idea.. Please add to issue tracker.

> Can dataface create tables itself? (I am assuming it can if we input the SQL directly?)
Not quite clear how you mean. Dataface just runs on PHP so you can use mysql query calls directly to create tables.

> Can dataface Display (for debugging or learning purposes for instance)
> the SQL calls it makes, the same way PHPMyAdmin does? (With the ability to
> turn that feature off so regular users cannot do so?
Excellent idea. Please add to issue tracker.


***************

Will do so by the weekend if not before.
Aoirthoir
 
Posts: 420
Joined: Wed Dec 31, 1969 5:00 pm

Postby Aoirthoir » Tue Jul 11, 2006 7:20 am

> Box to enter what page you wish to go to, rather than just a link for the next 30 (next 100 etc)
Dataface 0.6 takes a more googlish approach by providing prev/next links in addition to direct links to each page (1,2,3,...)


Excellent. Thanks
Aoirthoir
 
Posts: 420
Joined: Wed Dec 31, 1969 5:00 pm

Postby Aoirthoir » Tue Jul 11, 2006 7:26 am

*********
>Parent Record Fields displayed when editing a child record.
THis is a good idea. Dataface 0.6 allows you to add this quite easily yourself, but a non-intrusive, collapsible block above the related-record form would probably be nice addition that nobody could complain about.
=================
Not at all. Actually I like it being collapsible so we can move it out of the way. Great idea.


*********
>Similarly if editing a relationship record, that you got to by clicking
> in a relationship, perhaps some way of displaying the originating record
> info and table name so we know where we were coming from? (Back button of
> course would yield some errors on occasion if we had edited and saved information.)

Yes.. this is a tricky bit to deal with, since records can be related to any number of records. I have partially solved the problem with Dataface 0.6 by allowing you to define a method named getBreadCrumbs() that returns the "Path" per se to the current record. That was if the record is generally always treated as a sub-record of another, then the breadcrumbs will reflect it. (oh ya, I have added bread-crumbs along the top to keep track of where you are and make it easier to navigate).

===============
Ok I think the return path thing will definitely help. As I play around with it I will know more. Now if the return path is clickable...that would be excellent. There might be other ways to do this as well with the relationships. For instance have the form info displayed for a customer, and to the side a list of all the orders...or the particular relationship. This is kinda similar to the one above. Though honestly the collapsible block above would seem to me to solve a lot of it. So if I go to customer detail. Click order relationship tab. Click edit on it, then the customer info continues to be displayed as a block above, (or to the side, whatever, its easy to move around with css)..then viola we have what we were looking for.


*********
>Have an option so that in a list records can be displayed in more than one row.
>(So perhaps the rows wont be so long on tables with lots of fields, especially
>when lots of those fields need to be seen in a list...)
Do you see this still as a tabular list (with rows and columns) or more of a summary list (like google search results)?
=============
Ah I had not thought about the google search results thing. That too is excellent. Naturally if we are able to implement both that will be great. This is not huge on my priority list now for two reasons. 1..you have the buttons to the left in the next version so I wont have to scroll to click them. Also for now I will just remove fields if we dont want that many displayed. Or since the buttons are to the left if there is a time when we want all that info they can scroll. But in the future both options would be nice. That is tabular and summary...(although these things might be fine in a report writer type situation....with a simple list being available for searching editing so on...

**************
> Dataface Report writer
I have been looking into open-source products like Jasper Reports and I-Reports and like what they offer in terms of report generation. Certainly reporting would be a good feature for Dataface but I am still doing research to find the best way to implement it. If I can make Dataface work nicely with products like I-Reports and Jasper reports, I would prefer that to developing a custom reports system.
==================
Ok I agree fully there. It'd be like me asking you to implement a template system when we have smarty templates. Its funny cause I just started looking into those also. Ive been wrackin my brain, how do I do all these printouts that we want. Sometimes they will work in html, sometimes they wont. Its going to depend (for instance the label printer I use might work well or not...we will see). But I did not want to be forced to use crystal or something if I did not have to, when, as much as possible we could create an open system. So I am totally with you on that. I'll start looking also see if I can find anything pure php. (took me a long time of searching to find your product)

******************
>Support to display Views just as the current ability to support tables. (Thus relationships would be built into MySQL)
Certainly the right direction. I'm currently working on a View class to serve as a surrogate view. I.e. you give it an SQL query, and Dataface treats it as a table so you can add/edit/delete records from the "view". Do you mean something like this - or more for it to work well with MySQL's Views?
=====================
Both definitely. As I understand MySQLs Views, I can edit them just like I can a table. But I also like your idea. What I am trying to accomplish is as much seperation of everything as possible. Just as with CSS we have a seperation from HTML, and a centralizing of styles and layout possibilities across all documents on a site, so too we have with dataface. Now with SQL (all the triggers/stored procedures/ views etc) we have the ability for the logic of a lot of things to be stored right in the DBMS. Thus it would apply no matter what. So...let us say I have to go into phpMyAdmin and make a change for some reason to a record. Well with a trigger, my change will automatically be saved to the history. If I have to make a change to the order, my change will automatically recalculate the totals. All of this will happen even though I am not at the point using dataface. If I have to change a thousand records at once, they would all immediately have the history record added..so on.

So let's say Dataface has the ability in the future to access MySQL views just as it does with tables. Viola! I can add a view and then make a couple of changes (add lines to the config.ini) and I have an entire update to the application. Now what I do not know is, with views, in mysql, how it handles adds. If I have an order view on a line item will it add another line item? Etc...I have to learn about that. And I have more to learn about views.

But in the long run, I think both methods, the one you are working on..the View Class for surrogate views or the mysql views, would be beneficial.

************************
> On the Menu on the left we have the ability to change the display name for a
> table in the conf.ini file under the [_tables] section.
The contents of the conf.ini file are loaded into the Dataface_Application::_conf['_tables'] variable which can be accessed as follows:
[code snipped]
======================
Ah I like that. I am thinking more though on the relationships tab. So that the contents of the relationships tab are the same as specified in the config.ini for the related file. So lets say I am have a config file thus:

[_tables]
customers = "Customer Information"
cus_ords = "Customer Orders"

So on the left it will say Customer Information and Customer Orders. However if I have a relationship set up on the customer information detail screen for orders, the tab will say cus_ords.

Hope thats a better explanation...its the tab I might want changed.

***************
[my comments snipped]
A built-in help system is definitely a must for any "user-friendly" app. This is a good idea. Dataface 0.6 allows you to insert your own content to just about any section of the application using Delegate classes. But we should definitely work on moving "frequently-needed" help into a core help system... Not on the radar yet.. but soon.
=======================
Great. As I said the sidebar you have for find is "Most Excellent Dude" :D

**************
> Dataface in Dataface not just configs. [my comments snipped]

All of the reading and writing of config files is contained in the ConfigTool class. It can read and write to both the database and the file-system (as INI files). I haven't "activated" the database reading/writing because of some minor issues that cropped up in testing. I am committed to building a web-based administration tool for dataface, and this would work best with database storage - so I will definitely get this running at some point.
===============
Yes you've talked about it before. Since the config files can be written to that might allow me to work on it myself. So can dataface natively write out other file formats?

*********************
>Could dataface have the ability to have an SQL input field?
0.6 will allow you to define your own actions. It would be an easy thing to create an SQL query action to just display the results of an SQL query.
=====================
Ah ok thats what we are looking for. Omer's post has more on this as well.

**********
Thanks for the input

Best regards

Steve

===========

I think we are all happy with Dataface. I know I am excited about the direction it is going. I've got to learn php so I don't know how much help I would be there. But Ive really begun to delve deep into SQL. And I like it a lot. So if there are things I can do or learn to help Dataface just let me know. Obviously any of the tasks I am working on like the histories, tagging and so forth, I am willing to write up how-tos on. As I learn more about the views I will update you on that as well.
Aoirthoir
 
Posts: 420
Joined: Wed Dec 31, 1969 5:00 pm


Return to Xataface Users

Who is online

Users browsing this forum: No registered users and 23 guests

cron
Powered by Dataface
© 2005-2007 Steve Hannah All rights reserved