Database tool for technical documentations? lazarus / 16-Databases ---------------------------------------------------------------------- stephanweber · 2024-02-15 09:45 Hi, I am an electrical engineer designing analog circuits. We simulate and measure new designs regarding noise, speed, gain, linearity, etc. e.g. vs input frequency, temperature, supply voltages, process corners, etc. So you do parameter sweeps, corner analysis and Monte-Carlo. 1st you do it interactively, like you plot curves immediately and try to improve the circuit more and more. At some point you freeze the design and focus on verification, and last you create a documentation (like a word file) and a presentation (e.g. power-point for a design review). So you collect a lot of tables which can saved e.g. as CSV files. Problem is that there are so many dimensions, like you have 20 key outputs and specificactions, 10 numerical parameters and also non- numerical but ordinal parameters (like simulation results with and without layout parasitics). Task: I wonder can't we save all numerical data blindly, then assign few keywords (of course the output names and environmental conditions but also details like to which sub-part of the system data belongs, whether it is a pre-layout result or post-layout result, if it belongs to a budget like accuracy or bandwidth, etc.)? And then put all CSV's into a single data directory, and let a tool collect the required data and create a sub-tables and plots? Like "show how the whole design (i.e. full IP and subblocks) behaves vs temperature" or "same for a certain sub-block but vs supply in pre- layout simulation" or "sum up all DC accuracy errors for output #2", or "show all spec violations and list the critical conditions", etc. Is there such a tool? How to create it elegantly with Lazarus? I use TChart a lot, also CSV and TStringTable, but have no DB experiences. Remark: Of course, we can also save data to different directories, but often things belong simultaneously to different categories, so it is not clear if something can be find under directory "OutputBuffer" or "AccuracyBudget" or under "ECOs" or "OutputBuffer", e.g. because ECO is done on the output buffer. These missing links in normal data "structures" make it difficult to see the whole picture or to get out specific things. Bye Stephan ---------------------------------------------------------------------- TRon · 2024-02-15 10:02 I am assuming you meant a report designer or template parser ? In case the first you could use something like lazreport/fpreport but there are also template parsers. Depends a little on how you store and/or process the data. For displaying the data there are also charts such as TAChart but depending on the implementation the data is to be feed/provided (to the chart) in a particular manner. I am not aware of a ready t go tool unless there is something available ins the commercial domain (I simply do not know if they exist) ---------------------------------------------------------------------- Thaddy · 2024-02-15 10:10 Have a look at fpdoc. You can store its results in a database of course. It can do both code instrumentation as any other kind of documentation like documenting CAD and the like. ---------------------------------------------------------------------- Thaddy · 2024-02-15 10:29 BTW a complete commercial solution is Oracle AutoVue, which I worked on while it was being developed and owned by Cyco Software. After a long list of take overs it is know owned by Oracle. Reasonably expensive, but market leader in the AutoCad world. Can be combined with Meridian for a complete solution. Can read/write and manage history of most CAD software and its documentation. ---------------------------------------------------------------------- Kays · 2024-02-17 14:57 Quote from: stephanweber on February 15, 2024, 10:45:55 am[…] I wonder can't we save all numerical data blindly, then assign few keywords […]? And then put all CSV's into a single data directory, and let a tool collect the required data and create a sub-tables and plots? […]Generated documentation is useless if you don’t edit it so one way or another you will spend a lot of time on it, but I also have the impression you don’t mean documentation proper, but a number of spec charts, right? Maybe I haven’t understood the task quite well.Quote from: stephanweber on February 15, 2024, 10:45:55 am[…] Of course, we can also save data to different directories, but often things belong simultaneously to different categories, so it is not clear if something can be find under directory "OutputBuffer" or "AccuracyBudget" or under "ECOs" or "OutputBuffer", […]You create hardlinks. The same file coexists in multiple directories (≈ categories). ---------------------------------------------------------------------- cdbc · 2024-02-17 17:06 Hi Would you like to make such an application, in fpc/lazarus yourself? I.e.: an app that can store your values in database-tables, a backend. And then be able to use that backend as the basis for your different viewing / presentation -tasks going forwards? If so, then the fpc/laz combo _is_ the right tool, the question then remains, how proficient are you in coding obj-pascal? Regards Benny ---------------------------------------------------------------------- stephanweber · 2024-02-19 13:42 Many thanks for your hints! I inspected AutoVue a bit, but it looks a bit different. I am aware of hard links, but of course I do not want to create them all. Bye Stephan ---------------------------------------------------------------------- Zvoni · 2024-02-19 15:31 To answer "if you can use a DB-Tool for your scenario": I think the pertinent question is: Do those CSV's all have the same Structure? As in: the same number of "Fields/Columns" (and going along with it: the same Fieldname)? Because if yes, i think there is a way to set up a DB in such a way, that you can create "dynamic" queries dependant on what the user wants to see ("DC Errors...", "...list critical conditions") But it all depends on where/if those values are actually in the CSV. Some specific examples would be helpful ("This is what such a CSV looks like", "For the DC Error Report i need the Values in Fields blablablabl" etc.) Just your statement "some things belong in different categories" is a clear "m:m-scenario" in DB-speak. Your "documentation Word/Powerpoint" would just be "BLOBS" in the Database