Hi there. A question that im almost sure of getting no positive answer to: Is it possible to create some kind of form that lets me dynamically create controls and move them around? Of course not =) But the question is if there is a possibility to create something like that: A customer of ours wants a graphical overview of bins in his location, how they are aligned, where they lie and whats in them. Now because they have about 300 shelfs and on each up to 100 bins where each bin contains one item, they need such a tool in order to be able to keep the overview and allocate new bins for new items. What would you suggest? BTW: has someone an example of how to write an external application that accesses/edits Navision data? I fear it will come to the point that i’ll have to write one …
oof, sure it is possible we have made a gantt chart sollution (also drag and drop) made with a OCX embedding technique which communicates through ActiveX automation with Navision. This is done within a navision form but it are not navision controls it is just a trick to force a OCX control on a navision form and communicate with navision. but it is lots and lots of work ! Took me bout 1/2 year and requires more then 5000 lines of code …
What janpieter has done sounds like a very high end integration to Navision. But I think that ahed may be able to work with a simpler solution. I am guessing that the most complex part of Jan’s implementation was making it flexible enough to handle all differnt scenarios. What I am guessing that ahead needs is just a hard coded solution to work with this one scenario. Making the assumption that there is a similar pattern to all bins, you could do the following. Create a Card Form, Design it to be as large as possible to fit the smallest screen it will work on, and disable the resize, and Don’t allow it to run full screen. Divide the form into fixed areas, (for examle), left half would be warehouse layout, right would be Detail, bottom would be snapshot and buttons. On the left, create lots and lots of controls to represent shelves, each button may for example represent 10 shelves, (you need to decide), and make those buttons look like a picture of the warehouse. On the right use either a matirx form or a list form to create details of the shelves. (Again it depends on what the warhouse looks like. At the bottom have a small snapshot information area, and buttons. In the snapshot area, you would show specific Bin number, Item number, quantity etc. BUT keep it to a minimum. For full detail use buttons, and thats why NEVER run full screen, because you want to be ale to open multiple screens at a time. Now when the form opens, the warehose view on the left will have icons to indicate the status of a group of shelves/bins, Full, part fill empty etc, click on the control (button) to then “zoom” in on the rigth, and show the detail. As you click on each specific bin, the detail is shown at the bottom of the screen. You will be amazed at how well this can work, and it is not a big thing to program. You could get this running in 50-100 hours. And for the efficiency it will provide to your client, it will be a good investment. Of course its no where near the solution Jan offeres, but then 1/2 a year of code turns out at about $150,000, which is not cheap.
Our output Management solution “LaserNet” are able to solve this is a very simple way - this are standard features in our product. - I suggest that we give you a 30 min. presentation of LaserNet (off course an internet demo (through the internet)) If this is of any interest try to visit www.efstech.com - and let me know and I will set up this internet meeting.
If you have access to Navision 4.0 you can have a look at the forms 630, 631 and 632 (Bar Chart …). The controls on these forms are placed and sized dynamically and you also can resize the whole form. The size and position of the controls will be adapted on resizing.
For an example of how to pass data to an external application from Navision have a look at codeunit 5500 in Navision 4.0. This is used by Navision to call the production schedule (yes I know it’s basic!) and pass data to it via XML. The production schedule is a seperate application that resides in the Navision directory.
These are some great options offered here to solve this issue, I suggest you look at all the available options, BUT keep in mind that in the long run, the siplest solution is often (aka almost always) the best.
Thank you guys! I see you have some very interesting solutions. @janpieter: I thought of something similar but as soon as i saw that navision controls cannot be created dynamically, i gave up my solution. @David Singleton: Your solution was the next thing i was thinking of, but the problem is that the user needs to be able to split a bin into some smaller ones and assign them … i guess thats not so easy @LaserNet: What is LaserNet? @Timo: The problem is that they are sized dynamically, BUT NOT created dynamically @GaryFrostick: Im having a look right now …
I am not suggesting that each graphical icon represents one bin, but a group of bins. Clicking on the icon would open up a form that would be the drill down, tis would give you the detail level, and it would nto matter if the bin was broken in to sub bins.