IRC logs of #tryton for Friday, 2009-01-16 #tryton log beginning Fri Jan 16 00:00:02 CET 2009
vengfulsquirrelFor example the color/size stuff does not make sense to me.00:00
X0d_of_N0dthere are a acouple of options here00:00
X0d_of_N0dthe accounting system we're currently using has "configurable" boms and "variable" boms00:01
X0d_of_N0dconfigurable boms are like we said, variable boms are boms where there's only one item, but the amount of that item is determined at time of order00:02
X0d_of_N0dhowever if we just had a regular bom line that included part and quantity one could simply put in the same item multiple times with different quantities to get the same effect as a "variable" bom00:03
X0d_of_N0das far as color goes, we could assume that the same item in a different color would have a different part number00:03
carloscedk: would be possible that you share the hgweb.config file you use for ?00:03
X0d_of_N0dof course, the question becomes how we store configurations00:05
vengfulsquirrelYeah well where to store them is question one I guess, purchase orders, sales, and production runs?00:06
X0d_of_N0dWhen a purchase order gets created, that would triger the configuration00:09
X0d_of_N0dit has to be configured before a purchase order can be actually entered into the system00:09
vengfulsquirrelYeah but you would only need to configure the product when you added it while filling in the purchase order.00:10
X0d_of_N0dthat would be the proper workflow00:10
X0d_of_N0dSo where in sales do you think it could be stored?00:13
vengfulsquirrelYeah seems like the model could be stored outside of the actual order line in all those cases and the configurator would just know how to fill the order line correctly.00:13
vengfulsquirrelSo there would be some recursive structure but the order itself wouldn't really need to know about it because its order line would be filled correctly.00:13
X0d_of_N0dbut why not just store it there?00:14
vengfulsquirrelAs a rollup of order lines?00:14
vengfulsquirrelWell we'd have to face-lift the entire view/print/storage process for sales and purchases.00:15
vengfulsquirrelI am not familiar with the existing design though so I'll have to look into that.00:16
X0d_of_N0dwe'd need a configure button to appear for configurable boms, and we'd need to add a field to the db for configuration00:17
X0d_of_N0dand we'd need to store the rev aswell00:18
vengfulsquirrelThe revision of the configurable bom ?00:19
X0d_of_N0dACTION stops for a sec...00:20
X0d_of_N0dsales order, not purchase order.... it would be configured when it's sold00:20
vengfulsquirreloh i figured you'd need to do both.. when you asked a supplier for something you might have to configure what you want to buy.. does that never happen ?00:21
X0d_of_N0dno, that's their problem00:22
X0d_of_N0dyou just enter a new part number for each different configuration00:22
vengfulsquirrelso would you not need to configure a product for production either?  the only configuration happens at sale time?00:24
X0d_of_N0dfor what we're doing I don't think we need to worry about that now00:24
X0d_of_N0dI can think of cases where you might want to be able to configure something during production, but for what we're doing we don't care right now00:25
X0d_of_N0dso, yeah, the only time you need to configure something is when you sell it00:25
vengfulsquirrelSo now routings/workcenters and scheduling.00:30
vengfulsquirrelI had planned to allocate the materials at the start of the route and then the finished product would pop out at the end is that do heavy handed?00:31
vengfulsquirrelWill resources not need to show up until half-way through the route?00:31
vengfulsquirrel*too heavy handed00:32
X0d_of_N0dthere are two types of allocation00:32
vengfulsquirrelSorry I'm talking specifically about materials/products/subassemblies whatever is pulled from stock and used in one giving routing.00:32
X0d_of_N0dthere's real allocation (it's not there anymore at all) and virtual allocation (it's there, but we're gonna use it so don't plan on using it for anything else)00:32
X0d_of_N0dwhen a sales order becomes a production order all the stock needed for everything should be virtually allocated, then at each step as the work order is opened the stock should then be allocated00:34
vengfulsquirrelhmm okay well i had planned on having a production run use moves to get the production materials out of Storage and into the Production Input Zone.00:35
X0d_of_N0dyeah, that sounds good00:36
vengfulsquirrelSo you could physically or virtually do that, I guess it doesn't matte.r00:36
vengfulsquirrelThen you move things 'into' production when it starts and out if it stops.. and when its done the materials are just in production and your finished products come out into the Production Output Zone.00:37
X0d_of_N0dexcept that it would move things out of storage so it would be harder to keep track of the items00:37
X0d_of_N0dyou had a chart of this, didn't you?00:38
vengfulsquirrelYeah I was trying to find it.00:39
vengfulsquirrelYeah Input and Output should probably be children of production.00:44
vengfulsquirreli wanted a sink for materials though and a source for finished products00:47
X0d_of_N0dwell, shouldn't that be lost & found?00:48
vengfulsquirrelYeah I guess maybe I misunderstand what lost and found was for, ha and took it too literally.00:49
vengfulsquirrelIs this too ridiculous?   I updated it so you might have to refresh.00:50
vengfulsquirrelyeah actually that's kind of annoying in the same way except now its shop floor that is pooling up past materials and finished products.00:51
vengfulsquirrelWell I'll keep thinking but yeah something like Assign->Schedule->Start->Done  With options to Cancel and Stop for a Production Run.00:53
X0d_of_N0dwhere the resources are allocated should be defined in the route or something similar00:57
carlosikks: hi, around?00:58
vengfulsquirrelYeah I guess Assign would pull stock from storage, but Schedule would do resource/workcenter assignment based on the routings.00:58
X0d_of_N0dthe schedule should create a move order, then when work actually begins the move order gets fulfilled00:59
vengfulsquirrelHmm do draft Moves block products from being assigned elsewherE/01:01
X0d_of_N0dor rather, do draft moves block products from being assigned elsewhere?01:03
cedkX0d_of_N0d: no01:03
vengfulsquirrelSo the move must be done before work can start to guaranteee the product can be assigned.01:04
cedkvengfulsquirrel: or assigned01:04
vengfulsquirrelOkay yeah great that works as I had planned then.01:05
vengfulsquirrelExcept we'd probably use an internal packing with a bunch of moves and it all would get assigned before work could start and then it would change to Done once work started.01:06
cedkvengfulsquirrel: I think that all that moves must be handle by a kind of production object (not the internal packing)01:07
vengfulsquirrelOh okay, noted.01:08
X0d_of_N0dwhat about just adding a field to inventory to signify how much is allocated01:08
vengfulsquirrelThat's what moves are I thought.01:09
vengfulsquirrelExcept much more convenient.01:09
cedkvengfulsquirrel: but I think it must also have a kind of meta-model that display all moves collapsed for today production01:10
X0d_of_N0dthe problem with moving stuff is that it doesn't *actually* move... so it makes things confusing01:10
cedkfor today or for any other time base for production (hours, week, etc...)01:10
vengfulsquirrelWell you could build that based on production runs finished during any time range if the moves are stored per production run.01:11
vengfulsquirrelX0d_of_N0d: What do you mean they don't actually move?01:11
cedkX0d_of_N0d: as the stock is double entry, you must create move to change stock quantity01:12
X0d_of_N0dyou assign something to production by moving it into a production area...01:12
vengfulsquirrelNo assign just says I'm going to move this... don't move it.01:12
vengfulsquirrelDone means I moved it, its not there anymore.01:13
cedkvengfulsquirrel: but I think that you will prepare products for a set of production01:13
vengfulsquirrelcedk: Right like pull all the production materials in the morning to satisfy all production runs for that day?01:14
cedkvengfulsquirrel: yes, but for the all day, you can have many production order, so you will have many little move and I think it is better to collapse all those moves01:15
vengfulsquirrelHa oh I see what you mean by collapse, I thought you meant some sort of gui construct.01:16
cedkit is just some thoughts01:16
vengfulsquirrelcedk: Is there any functionality regarding consolidating moves like that in tryton right now ?01:18
vengfulsquirrelIt might confuse the system if 10 production runs point to the same move which overcompensates for their quantity.01:18
cedkvengfulsquirrel: no01:18
cedkbut now, I readed the MPC on wiki01:19
cedkand I think that if we work with period perhaps what I said is no more right01:20
cedkvengfulsquirrel: is there one MPC per production line?01:21
cedkvengfulsquirrel: Master Production Calendar01:21
vengfulsquirrelHa oh great my names are killing me.01:21
vengfulsquirrelThat is all rough, I was just trying to formulate on there, I still have to go over the double level planning with X0d to see if its even possible.01:22
vengfulsquirrelThe calendar was just to sort of setup a structure for planning to take place in... and then it would be used to produce a rough schedule of when to produce things..  and then during each period a detailed scheduling would be created using routings.01:23
-!- bechamel(n=user@ has left #tryton01:23
cedkvengfulsquirrel: routings?01:24
vengfulsquirrelIf routings were defined of course, they are a plan for a path between workcenters.  If you have a set production line routings are mostly not needed or are trivial.01:26
carlosgood night01:28
vengfulsquirrelX0d_of_N0d: Hey so I think the moves setup is flexible and can be solved later.01:29
X0d_of_N0dso what do we have left?01:30
vengfulsquirrelX0d_of_N0d: Capacity, Routing definition, Workcetner definition, how scheduling works for routings ... how that fits into the overall master schedule... and then how that all is updated when s*** hits the fan.01:31
vengfulsquirrelSo just like 95% more stuff.01:32
X0d_of_N0dcapacity is part of scheduling, we should talk about anything related to scheduling last01:32
vengfulsquirrelWell routing definition, workcenter definition exist purely for scheduling.01:33
X0d_of_N0dwell routing relies on workcenters so lets talk about those01:33
cedkscheduling is for MRPII, no ?01:34
vengfulsquirrelYeah routing/workcenters are for mrp II but I have to make sure MRP I doesn't have to be rewritten for MRP II.  And even with MRP I some sort of basic scheduling functionality must exist for MPR I.01:35
X0d_of_N0dMRP, MRP II... the more I read the less I think anyone knows01:35
X0d_of_N0dMRP needs to be able to schedule purchase orders to make sure materials exist01:36
vengfulsquirrelright and schedule production runs for a similar reason01:37
vengfulsquirrelbut without routings and workcenters that is all pretty straight forward because the scheduling is pretty rough01:37
cedkyes but MRP I consider that you have infinite capacity01:37
vengfulsquirrelyes it only takes time into account01:37
vengfulsquirreland usually rough buffered time01:37
cedkI think that MRPI must schedule at last time and with MRPII we delay depending of the capacity01:39
vengfulsquirrelX0d_of_N0d: For routings you need operations and each operation needs some set of resources, some set of workers, a workcenter or a group of workcenters(which one wc is selected from), a setup time(optional), a run time and a cleanup time(optional).  I am not sure how to handle the complexity of operations shared between routings or if one operation should happen on more than 1 workcenter.01:40
X0d_of_N0dMRP I says "you need to make this", MRP II says "you need to make this, and you should make it on these work centers at this time"01:40
X0d_of_N0dkeeping track of workers isn't something I've seen in other mrp packages. It could be useful but usually they're ignored01:42
X0d_of_N0dI think we can safely ignore workers as a resource at the moment01:42
cedkvengfulsquirrel: I think that it is too difficult to write a program that plannify correctly everythings, I think you must allow to over schedule and let the user to handle this issue01:43
X0d_of_N0dcedk: I disagree, but I do think this should be looked at later rather than now01:44
X0d_of_N0dso lets see....01:44
vengfulsquirrelcedk: Well with two levels of scheduling it would be less hard, but we could make the scheduling kind of pluggable.01:44
cedkX0d_of_N0d: for me it is a NP-complete problem01:44
X0d_of_N0dcedk: it is, but you don't have to be perfect... just close01:45
cedkX0d_of_N0d: that is what I try to say, the system must allow to break some rules, like allocating more ressources01:46
X0d_of_N0dcedk: and when it does it brings up an error and asks the user to take care of it01:46
cedkvengfulsquirrel: I find that two levels make stuff more complicated (and in Tryton we like simple things)01:47
vengfulsquirrelUntil I have a better idea I had planned to do basic MRP I scheduling across a year for each period.  Then within each period capacity scheduling could be done based on the production orders, where you could of course do things like force-schedule and override capacity constraints.01:47
cedkX0d_of_N0d: not an error a warning :-)01:47
X0d_of_N0dcedk: indeed01:48
vengfulsquirrelDoes my two-level scheduling plan make sense?01:48
cedkvengfulsquirrel: don't understand very well01:49
X0d_of_N0dcedk: I think there are cases where the kind of fine-grained control over manufacturing would get in the way for some people01:50
X0d_of_N0dACTION needs to think about it a bit01:50
vengfulsquirrelUsing product lead times and product demand for each period schedule purchase order requests and requests for production runs for each period assuming infinite capacity.01:51
cedkvengfulsquirrel: purchase order requests are already done by the module stock_supply01:52
vengfulsquirrelThen within EACH period you can attempt to schedule production runs to satisfy the production requests based on capacity restraints and workcenter scheduling.01:52
cedkvengfulsquirrel: did you look how we handle the purchase request in stock_supply01:53
vengfulsquirrelcedk: Those are based on a fixed product amount though right?01:53
cedkwe don't work with fixed periods01:54
vengfulsquirrelLike if you go below 100 units order more.01:54
vengfulsquirrelI looked at it a few weeks ago but not in specific detail.01:54
cedkvengfulsquirrel: yes but it is more the way to catch when you must purchase new products01:54
cedkvengfulsquirrel: we look for a period bewteen the ealier delevery date and the next one01:55
cedkand I think that production can be schedule in the same way01:55
cedkbased on a floating period depending of the production time and some other factors01:56
X0d_of_N0dyou calc lead time based on history?01:56
cedkX0d_of_N0d: no it define on the product (product supplier)01:56
X0d_of_N0dcedk: is there any plan for pricelist capability so this can be done on a per supplier/per product level?01:57
cedkX0d_of_N0d: but it is possible to create a module that analysie history and compute the lead time for each supplier01:57
cedkX0d_of_N0d: lead time is alread by supplier and quantity01:57
cedkfor price list, the hook are there, so you can write a module that match your needs01:58
cedkbut for now, we don't like the pricelist from OpenERP because it tries to implement every things01:58
cedkand we think it is better to have simple stuff on which you plug module to extend it01:59
X0d_of_N0dso where are lead times defined in the ui?01:59
cedkX0d_of_N0d: on the product, Suppliers tabs02:01
cedkX0d_of_N0d: and you have delivery time per suppliers02:01
cedkX0d_of_N0d: sorry it is not by quantity02:02
cedkthe price is linked to the quantity but not the delivery time02:02
X0d_of_N0dhum... what module needs to be installed to get that? I don't have a supplier's tab02:02
cedkX0d_of_N0d: purchase02:03
cedkand the product must be purchasable :-)02:03
cedkvengfulsquirrel: did you already start the model design?02:04
X0d_of_N0dcedk: just out of curisity, do you know if tinyerp has per product/per supplier lead times?02:05
cedkby the way, as you are native english speakers, don't hesitate to correct us02:06
vengfulsquirrelI haven't written any code for it yet no or any usable model diagram I guess.  I've just been trying to make a long term plan.02:06
cedkX0d_of_N0d: I don't think02:07
cedkX0d_of_N0d: do you think it is needed02:07
cedkvengfulsquirrel: ok02:08
X0d_of_N0dcedk: it's a big thing here02:08
cedkX0d_of_N0d: I think it can be customized02:09
cedkX0d_of_N0d: there is two function in trytond/modules/purchase/ on purchase.product_supplier02:10
cedkthe functions: compute_supply_date and compute_purchase_date02:10
cedkso you can override it to compute like you want02:10
cedkX0d_of_N0d: I have made a module (not yet public) that allow to define the week day of delivery02:11
cedkX0d_of_N0d: but for quantity, I think we must change some part of the base code02:13
cedkX0d_of_N0d: could you submit a issue on roundup for that?02:13
cedkX0d_of_N0d: I will put it on the TODO list of pruchase02:15
CIA-10tryton: C?dric Krier <> default * 212:9a3809e9cfcb purchase/TODO: Add todo for delivery_time02:17
cedkgood night02:17
vengfulsquirrelcedk: good night, ttyl02:17
X0d_of_N0dhum damn, he left before I had a chance to tell him that it looks like tryton already has the functionality we need as far as lead times go02:21
X0d_of_N0dso the stock module might take care of orders then?02:23
vengfulsquirrelWell I'm not sure if I understood him correctly I was just looking at it but I think it just works based on a fixed quantity.02:24
X0d_of_N0dso quantity sinks below a set level and it triggers an order02:24
X0d_of_N0dbut we want orders based on demand02:25
vengfulsquirrelyeah, fluctuating demand02:25
vengfulsquirreland it needs to be computed sometimes from a hiearchy of lead times based on individual products02:26
X0d_of_N0dbut that is sort of external to everything... I mean, that can be added to the code later without us  thinking about it now02:26
vengfulsquirrelI wonder what happens with multiple suppliers02:26
X0d_of_N0dthere would always be a default supplier02:26
vengfulsquirrelYeah ha you keep saying that but all the planning information must be available and that depends on how the data is structured.02:27
vengfulsquirrelSorry but with different lead times, but yeah having a single default supplier would solve that.02:27
vengfulsquirrelAnd also for the transition to happen from phase one to phase two we need to know how those two planning schemes would mesh.02:28
X0d_of_N0ddemand is in closed sales orders02:28
X0d_of_N0drather, predicted demand would be in historical sales orders and existing demand would be in open sales orders02:29
X0d_of_N0dso that's already taken care of for us02:29
vengfulsquirrelYeah setting the demand is the easy part, as far as I'm concerned.02:29
X0d_of_N0dbut if demand is outside our module, then we don't have to worry about it right now02:30
X0d_of_N0dWhat we need, first, is to be able to create a sales order and have it pull all the stuff from stock based on the bom structure02:31
X0d_of_N0dand create the work orders, etc...02:31
X0d_of_N0dthat's basic functionality02:31
vengfulsquirrelYeah in a make to order scenario02:33
X0d_of_N0dright, don't worry about workcenters or scheduling or anything... just worry about making sure the bom structure is right so the right stuff gets pulled from stock02:34
vengfulsquirrelHa I've been talking about make-to-stock this entire time.02:34
vengfulsquirrelOkay yeah so that's fine we already talked about the bom that just needs to be passed on to a production request02:35
X0d_of_N0dI think we can gain a lot by breaking this up into very small manageable pieces...02:35
X0d_of_N0dso the first thing to do is just implement the bom structure we talked about and tie it to sales and stock02:37
X0d_of_N0dperhaps now would be a good time to figure out the roadmap?02:37
vengfulsquirrelYeah okay we can do that02:38
X0d_of_N0dI've got the wiki open for editing02:39
X0d_of_N0dok... so 1 is easy02:39
X0d_of_N0d"implement bom structure and tie it to inventory and sales"02:39
vengfulsquirrelso high level02:40
X0d_of_N0dyou think it should be broken down more?02:40
vengfulsquirrelImplement configurable(local and global substitutes), phantom and recursive bom structures.02:40
X0d_of_N0d2) allow configuration through sales interface02:41
X0d_of_N0ds/\(sales\)/\1 order/02:41
vengfulsquirrelI think its actually called sales.02:42
vengfulsquirrelThat's fine.02:42
X0d_of_N0dmake sales orders generate production requests02:43
X0d_of_N0dwe need an interface for production requests02:43
X0d_of_N0dso perhaps 1) create an area for the production interface02:44
vengfulsquirrelWell there will need to be another main menu entry for Production Management.02:44
vengfulsquirrelI'm not sure if that's what you mean.02:44
X0d_of_N0dyeah, it is02:44
X0d_of_N0doh, what exactly do you mean "configurable(local and global substitutes)"02:45
vengfulsquirrelA list of products that could be used, but it needs different constraints.02:47
X0d_of_N0dwhat's the difference between global and local substitutes?02:48
vengfulsquirrelLocal are for the current assembly like 40/60/80 MB drive.02:48
vengfulsquirrelGlobal are like ACME 10ft cable or ABC 10ft cable.02:48
vengfulsquirrelLike anywhere every those can be used interchangeably.02:49
X0d_of_N0dimplementation wise they should be the same though02:49
vengfulsquirrelHmm yeah global substitutes sound pretty fishy to me overall so maybe we should just drop that if its not familiar to you.02:50
X0d_of_N0dyeah, a bom should be recursive so global and local mean the same thing essentially02:51
vengfulsquirrelYeah I guess my examples would be the same, but for some reason they were different.02:51
X0d_of_N0dACTION shruggs02:51
vengfulsquirrelLet's go with ignoring it until further notice.02:51
X0d_of_N0dok, so lets move on02:51
X0d_of_N0dso 3 was allow configuration of configurable boms in sales02:52
X0d_of_N0d4) create production order tables and interface02:52
vengfulsquirrelwell i was calling it production run but production order is fine02:53
vengfulsquirrelproduction request-->production order02:53
X0d_of_N0dright, so that it's the same as everything else02:54
vengfulsquirrelyeah that's fine02:54
vengfulsquirrelthe relationship between production order and production request are a little fishy though... like how does one connect to the other02:54
X0d_of_N0d"draft production"02:54
X0d_of_N0dI think we should use the same terminology as is used elsewhere02:55
X0d_of_N0dso "draft production run"???02:55
vengfulsquirrelwait yeah drop run and just call it order02:56
vengfulsquirreldraft production order02:56
X0d_of_N0d"draft production order" -> "production order"02:56
X0d_of_N0dor rather -> "open production order" -> "completed production order"02:57
vengfulsquirreldraft, assigned, started, stopped, done, canceled02:58
X0d_of_N0d4) create production order tables and interface that allows for manual production workflow through various states:02:59
X0d_of_N0dactually it seems like that should go above the configuration of boms in sales thing03:01
X0d_of_N0dsound cool?03:01
vengfulsquirrelyeah except you can't produce configurable items until you .. configure them03:02
X0d_of_N0dok, we'll leave it03:02
X0d_of_N0dbut we have to be able to create boms before we can have sales orders trigger their configuration03:03
X0d_of_N0dso the logical flow seems to me to be create interface for manually running production workflow03:04
X0d_of_N0dthen have sales orders trigger creation of draft production orders03:04
X0d_of_N0dthen allow for configuration from sales orders03:05
vengfulsquirrelokay yeah wait so production requests are gone, ha i missed that earlier03:06
vengfulsquirrelare those only something planning would produce or are we just eliminating those completely03:06
-!- X0d_of_N0d(i=user@gateway/tor/x-5c95cd63f0af1d20) has joined #tryton03:07
X0d_of_N0dACTION looks around03:07
vengfulsquirrelSo how do production requests fit into this ?03:10
X0d_of_N0dlemme save the wiki really quick and you can see what I've got right now03:13
X0d_of_N0dACTION toys with wiki syntax a bit03:15
X0d_of_N0droad map is at the bottom of the page03:18
vengfulsquirrel6/3 should probably be the same thing03:18
X0d_of_N0dwhat about putting 6 as 403:20
vengfulsquirrelyeah that's fine03:20
vengfulsquirrelactually maybe 3 should become two parts and 2 should also be expanded to reflect the model design and the ui design03:22
vengfulsquirrelalso what about versioning?03:22
X0d_of_N0dso should we set more goals for the roadmap or just decide to add them from here as things go?03:22
X0d_of_N0dok, so make 3 2 parts03:23
X0d_of_N0dhow should it be broken up you think?03:23
X0d_of_N0doh yeah, nm.. I'm a little out there today03:24
X0d_of_N0dnot enough sleep, too much beer last night, hehe03:24
vengfulsquirrelyeah my sleep schedule has been whack all week03:24
vengfulsquirrelbut no beer :(03:24
vengfulsquirrelha a lot of coffee though03:25
X0d_of_N0dI wasn't planning on really drinking last night, but I found this bourbon stout....03:25
X0d_of_N0dreally good beer03:25
X0d_of_N0dok, revisioning03:26
vengfulsquirrelYeah sounds thick03:26
X0d_of_N0dvengfulsquirrel: yeah, really thick... and really dark03:26
X0d_of_N0danyway... yeah... bom revisioning03:26
X0d_of_N0dok, there are a couple of ways to do this....03:27
X0d_of_N0dso we're going to store production lead time in boms or in product?03:28
X0d_of_N0dwhat about storing the bom in product?03:28
X0d_of_N0derr... the interface in product03:29
vengfulsquirrelthe bom interfacE?03:30
vengfulsquirrelyou mean to create boms03:30
X0d_of_N0dwe could add a checkbox to product near sellable (salable..need to put in a ticket to fix that) and purchasable03:30
X0d_of_N0djust add "manufactured in house" or something03:31
X0d_of_N0doh yeah...duh "makeable"03:32
vengfulsquirrelthat's a word03:32
X0d_of_N0dif makeable is check it adds a bom tab03:32
vengfulsquirrelyeah or producable03:33
X0d_of_N0dit is03:33
vengfulsquirrelhmm yeah we could do that and put the lead time for production in there03:33
X0d_of_N0dand this is where we'd later put routing and bom type and all that03:35
X0d_of_N0dhum... bom revisions though03:36
vengfulsquirrelyeah that sounds good until i see a problem03:37
vengfulsquirrelthen i can also just copy/paste the code for salable or purchasable03:37
vengfulsquirrelto get the fancy notebook tabs03:37
vengfulsquirrelThe revisioning is kind of an issue though because we will definately need it later but it will be hard to add it if we aren't using it already.03:40
vengfulsquirrelI think a bom version should go from draft to done and then be readonly or something like that.03:40
X0d_of_N0dinteresting sellable gets taged by firefox as being spelled wrong...hum...03:41
X0d_of_N0dhum, right03:41
X0d_of_N0dlets see...03:41
vengfulsquirrelThen if someone wants to make a change they have to make a new draft and move it to done etc.03:41
vengfulsquirrelAnd the rest of the system depends on a fixed bom version03:41
X0d_of_N0da lot of times boms have dates on them03:42
vengfulsquirrelvalid from/to ?03:42
X0d_of_N0dtwo boms for the same product cannot be valid at the same time...03:42
vengfulsquirrelyeah we could have that and fall back to using the most recent done version otherwise.03:42
X0d_of_N0dand if a bom is currently valid it cannot be changed, it has to be invalidated03:42
vengfulsquirrelright well it can never be changed you just have to paint over it with a new version03:44
vengfulsquirrelwhat if a product doesn't have any valid bom at all ?03:44
vengfulsquirrelalso what if a product only have invalid boms?03:45
X0d_of_N0dthen it can't be produced03:45
vengfulsquirrelwhat if production is taking place and someone goes and invalidates all the boms?03:45
X0d_of_N0dit should raise a warning "there are no valid boms for this item, it cannot be produced"03:45
X0d_of_N0dafter the production order becomes valid the bom_id becomes linked to it03:46
X0d_of_N0dvalid or not03:46
vengfulsquirrelso valid really only effects initial usage03:47
X0d_of_N0dthat is used through production no matter what03:47
X0d_of_N0dif you want it to effect an active prodution run you have to stop the run03:47
vengfulsquirrelwell probably cancel the run and create a new one and furthermore maybe create a new sale03:48
vengfulsquirrelif the bom used inititally was wrong03:48
vengfulsquirrel*to configure it03:48
X0d_of_N0dI don't think you should have to create a new sale...03:49
X0d_of_N0dwell, yeah, if it was a misconfigured bom then you would03:49
vengfulsquirrelbut that would be one case usually you could just recreate the production order and get the new bom03:49
X0d_of_N0dbut lets say you are in the middle of a run and you find out that widget X breaks randomly, but you fixed it with widget X-103:49
vengfulsquirrelokay but yeah sorry earlier i asked about production requests, are those only for planning then03:50
vengfulsquirrelsales go straight to production orders03:50
vengfulsquirreli guess a production request will kind of be a planning version of a sale03:51
X0d_of_N0dno, sales should go to production requests... a production order needs to take place at a given time so it must be scheduled03:51
vengfulsquirrelokay can you explain how that would work03:51
X0d_of_N0dwell actually....03:51
vengfulsquirrelspecifically how they would be related03:52
X0d_of_N0dhere's the workflow03:52
vengfulsquirrelsince one production could technically satisfy 10 production requests03:52
X0d_of_N0d1) customer orders the product03:52
X0d_of_N0dand there's also also the issue that a customer might order something and you don't need a production request because you already have it in stock03:53
X0d_of_N0dwhich is actually what you want03:53
X0d_of_N0dor better you just finished producing what the customer ordered03:53
X0d_of_N0dso 1) customer orders the product03:54
X0d_of_N0d2) system checks to see if the product is already in inventory or there is already something being produced that's not already sold03:54
X0d_of_N0d3) if something needs to be produced then a "draft production order" is created03:55
X0d_of_N0dwell I was thinking that we'd then schedule the production order...03:58
X0d_of_N0dbut in reality you schedule work orders03:58
vengfulsquirrela production order is really the parent of many work orders as far as i can tell03:58
vengfulsquirrelwhere a work order is what each workcenter on a routing receives03:58
vengfulsquirrelfor now we are scheduling the production order03:59
vengfulsquirrelwhich essentially does nothing03:59
vengfulsquirrelbut in the future it would lay out the routing and pass out work orders03:59
X0d_of_N0dso I guess you don't schedule production orders, you just accept them and they create "draft work orders", which the user then schedules across workcenters03:59
vengfulsquirrelwell you can keep rough tracking04:00
vengfulsquirrelthink of it as every product has an indepenedent routing with a single workcenter04:00
vengfulsquirreldo schedule a production order would be to schedule each work order04:01
vengfulsquirrel*to schedule04:01
vengfulsquirrelSo for now to schedule just means you are setting a time to start04:01
vengfulsquirreland then you start it.. and then you say its done.. and then the product is moved to production output zone04:02
X0d_of_N0dright, and we can make it more granular later04:02
vengfulsquirrelso work orders don't exist right now04:02
vengfulsquirreli hope that will extend to your system correctly04:03
X0d_of_N0dyeah, that's fine actually04:03
X0d_of_N0dbom revisions....04:03
X0d_of_N0dwe need to figure out bom revisions04:03
vengfulsquirrelif we make bom's readonly i don't see a problem04:03
vengfulsquirrelwith it04:03
vengfulsquirreli mean we can solve it somehow04:03
X0d_of_N0dhow do we store them?04:04
vengfulsquirrelthat's the only tihng that would seriuosly f' us04:04
vengfulsquirrelthe revisions?  just copy the entire previuos bom into a Draft Bom with a new version number04:04
X0d_of_N0dso for each rev we just store another copy of the bom in the db?04:05
vengfulsquirrelbut they are single level04:05
vengfulsquirrel*minus phantoms04:05
vengfulsquirrelso multiple-level-ish04:05
vengfulsquirrelbut like each sub-assmelby that is stocked has its own bom04:05
X0d_of_N0dI think they can all be single level04:06
vengfulsquirreland revisions04:06
vengfulsquirreloh yeah phantom sub assemblies i guess could be seperate04:06
vengfulsquirrelwe have to figure out where to make those04:06
X0d_of_N0dso the layout is like "bom_id, product_id, rev, type, lines"04:07
vengfulsquirrelyeah i don't know i need to read up on postgres sequences04:08
X0d_of_N0dI think phantoms would be different in the product area.04:08
vengfulsquirrelyeah maybe you have to make them in the production management section04:08
X0d_of_N0dwhy not give them a part number? make them just the same as everything else except that they're phantom boms?04:09
vengfulsquirrelX0d_of_N0d: yeah maybe I have to look into it, you are right though it would need to share some properties which would make it hard to make it seperate04:10
X0d_of_N0dunstockable phantom boms could just have a product type that's like "unstockable" or something04:10
vengfulsquirrelthey have consumables04:10
X0d_of_N0dthat could work04:10
vengfulsquirreli'm not sure quite what those are for but maybe yeah we could use that or if it comes to it make another type04:10
vengfulsquirrelokay though04:11
vengfulsquirrelso all single level04:12
vengfulsquirreli can't imagine that is really going to be a big problem of storage04:12
vengfulsquirrelcopying everything over and over04:12
vengfulsquirrelits just bom lines and a bom container04:12
X0d_of_N0dit's not really a lot of text or anything04:12
X0d_of_N0dif it's a problem in the long term we can reorganize it. I think the structure is simple enough that it wouldn't be a problem to do that04:13
vengfulsquirrelSo anyways can we go back to the process again04:15
vengfulsquirreli still don't understand the request part04:15
X0d_of_N0dyeah, where were we?04:15
CIA-10tryton: * r417 /wiki/ Edited wiki page through web user interface.04:15
X0d_of_N0dACTION looks at CIA-1004:16
vengfulsquirrel1 customer sale, 2 fulfill from inventory or fulfill from production 3 create draft production order (requests?)04:16
X0d_of_N0dthat's some serious lag04:16
vengfulsquirrelha yeah there is a lot of lag04:16
X0d_of_N0dok 4) schedule (activate) the order04:16
X0d_of_N0da user would activate the order so it can be scheduled in an efficient way rather than having the computer schedule everything at the wrong time or whatever04:17
vengfulsquirrelokay well i kind of feel like maybe the user should decide to fulfill from stock version schedule a production request04:18
X0d_of_N0dhum... so scheduling would actually be "assign" in the terminology04:18
X0d_of_N0dwhen the order is assigned then virtual stock would be allocated, when the order is run then that stock would actually be moved into the bit /dev/null or whatever04:19
X0d_of_N0dand the product would be pulled out of lost & found and put into "production output"04:20
vengfulsquirrelyeah i kind of feel like that is abusing lost and found, but something like that04:20
vengfulsquirreli think it actually would be pulled out of the production location04:21
vengfulsquirreland put into production output04:21
vengfulsquirrelor the shop floor04:21
X0d_of_N0dperhaps there could be a production bucket04:21
X0d_of_N0ds/bucket/account/ I guess04:21
X0d_of_N0dyou'd have a "used materials" account that stuff would get dumped into04:22
X0d_of_N0dwhat is the lost and found for?04:22
X0d_of_N0dif it's not for that I mean?04:22
vengfulsquirrelwell I don't know but I interpretted it as for when people make mistakes and literally are losing inventory and finding inventory... its like a mistake collector04:23
vengfulsquirrelif your numbers are high in there it means your inventory tracking sucks04:23
X0d_of_N0dok, then we should't use it04:23
vengfulsquirrelwell that was my interpretation i gotta ask cedk or bechamel04:24
X0d_of_N0disn't there an "inventory loss" account?04:24
vengfulsquirrela financial account ?04:24
X0d_of_N0dno a location04:24
X0d_of_N0di meant04:25
vengfulsquirreli added a mod to do that04:25
vengfulsquirrelfor my own purposes04:25
vengfulsquirrelmaybe you saw that in an old diagram04:25
X0d_of_N0dI'm pretty sure that's how tinyerp does it04:25
vengfulsquirrelpushes it all into lost and foudn ?04:25
X0d_of_N0dno, there's an inventory loss04:26
X0d_of_N0dmanufactured products come out of inventory loss04:26
vengfulsquirreloh right for when stuff actually is broken04:26
vengfulsquirrelha oh man04:26
vengfulsquirrelyeah that's what i don't want to do04:26
X0d_of_N0dI dunno04:26
vengfulsquirrelbut maybe i'm wrong04:26
X0d_of_N0dso you're thinking about pulling them out of the shop floor?04:27
vengfulsquirrelyeah and the numbers actually on the shop floor mean nothing04:27
vengfulsquirrelthe only numbers that mean anything are the input zone and the output zone04:27
vengfulsquirrelWhat do you think ?04:28
X0d_of_N0dit seems like the place where products come from and where materials go should be different04:28
X0d_of_N0dbecause you might want to run a report that finds out everything you used in production and you could use your "used materials" location for that04:29
X0d_of_N0dlikewise you might want to know how many products you made, and you could use your "production something whatever" to generate that04:29
vengfulsquirrelyeah okay so maybe it should be disconnected04:29
vengfulsquirrelconsumed, produced04:30
vengfulsquirrelkind of like customer, supplier04:30
vengfulsquirrela lot of moves i guess04:30
vengfulsquirrelstorage->input->consumed produced->output->storage04:30
X0d_of_N0dI think that's fine04:31
vengfulsquirrelso the shop floor will be split in two04:31
vengfulsquirrelin that diagram04:31
vengfulsquirreland not named shop floor04:31
X0d_of_N0dmaybe there should be a "shop floor" just for inventory tracking... but I guess we can drop it for now04:32
-!- gremly(n=oscar@ has joined #tryton04:34
X0d_of_N0ddid you update it?04:38
X0d_of_N0dahh ok04:39
X0d_of_N0dyeah, I like it04:39
vengfulsquirrelgreat done04:39
vengfulsquirreluntil cedk hates it ha04:39
X0d_of_N0dif he has a better idea then great, we'll impliment it04:40
X0d_of_N0dso do we want to do any more on the roadmap?04:42
X0d_of_N0dI updated it again04:42
vengfulsquirrelYeah so when I say production requests I mean literally records in the db called production requests, did you think I meant programmed requests to production to create a production order ?04:43
X0d_of_N0dI'm with you on that04:44
vengfulsquirrelOkay those aren't mentioned on the road map04:44
X0d_of_N0dok, lemme get that04:44
X0d_of_N0dat the end?04:45
X0d_of_N0derr nm04:45
vengfulsquirrel have sales orders trigger creation of draft production orders04:45
vengfulsquirrelthat just skips of production requests04:45
X0d_of_N0ddraft production order == production request04:45
vengfulsquirrelha okay and there is the confusion04:46
X0d_of_N0dyeah, my bad...04:46
X0d_of_N0dthe terminology of mrp, yeah...04:47
vengfulsquirrelso a production order can be draft but that's not the same as a draft production request04:47
vengfulsquirrelHow does a sale know it has production requests in the queue and how does a production request know it is being fulfilled by a production order?04:48
vengfulsquirrelI guess many to many .. then many to many .04:48
vengfulsquirrelRight ?04:48
vengfulsquirrelSomehow we will need to tie all those together probably.04:48
X0d_of_N0dthere wouldn't be production requests and production orders, production requests are just another term for draft production order04:50
vengfulsquirrelokay the only problem with that is if we every do planning like a billion draft production orders are going to be submitted04:51
X0d_of_N0dproduction orders would have a one2one field that links to a sales order if one exists04:51
vengfulsquirrelalso what if you have 10 orders for 10 of something and you just want to make one production order of 100 ?04:52
X0d_of_N0dwe'd have a draft produciton order for each thing produced... we'd probably want to have some way of collapsing them04:52
vengfulsquirrelcan a production order have multiple products on it?04:52
vengfulsquirreloh sweet jesus04:53
vengfulsquirrelits a good thing we talked about this today04:53
X0d_of_N0dwell, that's arbitrary04:53
X0d_of_N0dit's up to us to figure out04:53
X0d_of_N0dif we don't want a ton of production ordres than we need a production order that can have multiple items04:53
vengfulsquirrelwell i think that's really confusing for production04:53
vengfulsquirrelor well when we do scheduling04:54
vengfulsquirrelthat's impossible04:54
vengfulsquirrelso one product per production order04:54
vengfulsquirrelso a sales order might generated many production orders04:54
vengfulsquirreldepending on what's not in stock04:54
vengfulsquirreland then those will be scheduled appropriately by production04:54
X0d_of_N0dthe other side of it would be, what if you want to make a run of 100 do-dads based on an order of 100 do-dads04:54
X0d_of_N0drather than 100 seperate runs of 1 do-dad04:55
vengfulsquirreloh well there is a quantity04:55
vengfulsquirrelproduct, quantity04:55
X0d_of_N0doh, you were thinking like "make product A and B"04:55
vengfulsquirreli'm more worried of wanted to collapce multiple sale orders for the same product into one production order04:55
X0d_of_N0dyeah, no. one product, one order04:56
vengfulsquirrelwhich isn't one2one04:56
vengfulsquirrelmaybe it should be one2many04:56
X0d_of_N0dvengfulsquirrel: we should do that at some point, but I don't think we need to do that now04:56
X0d_of_N0dbut then how do we keep track of what's what? I mean, you're running 100 items... you have a list of 50 sales orders04:57
vengfulsquirrelyou mean whose item came out damaged?04:57
X0d_of_N0ddo you have 50 free to add to other sales orders? or do you have 25? or does each sales order have 2 or what?04:57
vengfulsquirrelfriendsies probably04:57
X0d_of_N0dthat would be another question04:58
vengfulsquirreloh gross04:58
vengfulsquirrelyeah i don't know04:58
X0d_of_N0dfor now it's one2one04:58
vengfulsquirrelyou mean if you can only make 100 but someone order 7704:58
X0d_of_N0dwe can change it later if we want04:58
vengfulsquirrelwell honestly i would never use it04:59
vengfulsquirrelso if it works for your business04:59
vengfulsquirrelwe only do make to stock04:59
X0d_of_N0dyeah, we'll just impliment what we need and worry about other stuff later04:59
vengfulsquirrelTONIGHT i'm going to send an email out asking for feedback04:59
vengfulsquirreland maybe some other people will get interested04:59
vengfulsquirrelcedk and bechamel both wanted me to do that I think05:00
X0d_of_N0dit would be cool to get more feedback05:00
vengfulsquirrelbut yeah one2one05:00
vengfulsquirrelfor now05:00
vengfulsquirreland production requests don't exist05:01
X0d_of_N0dACTION nods05:01
vengfulsquirrelso much progress its like were almost done05:01
X0d_of_N0dyeah, almost ready to start05:01
vengfulsquirrelha yeah seriuosly05:01
vengfulsquirreli have to add some plant addon too05:01
vengfulsquirrelwhich is why i need to start soon05:02
vengfulsquirrelso i can addon to SOMETHING05:02
X0d_of_N0dI've got some other work to do here, but I'll try to help you out as soon as I can... and I'm always open for you to send me code or ask questions if you need any help or anything05:03
X0d_of_N0dsound fair?05:03
vengfulsquirrelYeah that's fine for phase one and a while into planning but eventually i'll have to be a least splitting the coding.05:04
vengfulsquirrelHave you done customizations on openerp ?05:04
X0d_of_N0dyeah, no problem, when you're side is done I05:05
X0d_of_N0dI'll take over05:05
X0d_of_N0dmost of my work with openerp has been under the hood05:05
X0d_of_N0dI'm trying to learn more about tryton, which looks like it's a lot easier to work with05:05
vengfulsquirrelyeah its a lot easier to install05:06
X0d_of_N0dand has way better documentation05:06
X0d_of_N0dand the directory structure is better, the code is cleaner... etc05:06
vengfulsquirrelYeah it definately seems cleaner which is why i thought i'd start using it since i have no experience with either.05:07
X0d_of_N0dtinyerp seems to slowly be getting worse on a lot of levels...05:08
X0d_of_N0dwell, yeah, whatever05:08
vengfulsquirrelI think they took a lot of time to move over to that trac-like software which might have set them back a bit.05:08
vengfulsquirrelbut yeah I don't know hopefully things work out for both groups05:09
vengfulsquirrelAnyways so05:10
vengfulsquirrelI'm going to put up the location diagram05:10
vengfulsquirrelinto g-code05:10
X0d_of_N0dand modify the bom structure diagram?05:10
vengfulsquirreland ughh maybe clean up the bom christmas tree05:10
vengfulsquirreland then move the road map to the top05:10
vengfulsquirreland maybe make it more sentence like and then clean up the feature list a bit05:11
vengfulsquirrelare the comments still applicable?05:11
X0d_of_N0dthe notes thing?05:12
vengfulsquirrelyour notes05:12
vengfulsquirreli think the second and third one are solved05:12
vengfulsquirrelthe first one always confused me05:12
X0d_of_N0dthe last two can be dropped05:12
X0d_of_N0dlets see05:12
X0d_of_N0drather than having workcenters we could have resources that contain workcenters05:13
vengfulsquirrelOh hmm05:13
X0d_of_N0dthat way things could be scheduled across multiple workcenters05:13
vengfulsquirrelyeah i was thinking of making groups of workcenters and tieing a routing operation to a group05:13
vengfulsquirrelso then it could be chosen within that group05:14
vengfulsquirrelis that what you mean?05:14
vengfulsquirrelyeah so i think being explicitly about the workcenter might be required05:14
vengfulsquirreland doing resources seperately05:14
vengfulsquirrellike trucks/tools or whatever05:14
vengfulsquirrelis that what a resource is ?05:14
X0d_of_N0dI was just thinking about a term to use05:15
-!- X0d_of_N0d(i=user@gateway/tor/x-5c95cd63f0af1d20) has joined #tryton05:19
-!- vengfulsquirrel( has joined #tryton05:19
-!- CIA-10(n=CIA@ has joined #tryton05:19
-!- johbo( has joined #tryton05:19
-!- panthera( has joined #tryton05:19
-!- yangoon( has joined #tryton05:26
-!- X0d_of_N0d(i=user@gateway/tor/x-5c95cd63f0af1d20) has joined #tryton05:26
-!- vengfulsquirrel( has joined #tryton05:26
-!- CIA-10(n=CIA@ has joined #tryton05:26
-!- johbo( has joined #tryton05:26
-!- panthera( has joined #tryton05:26
vengfulsquirrel X0d_of_N0d: Did I just drop?  What if people don't want to make to order?05:27
vengfulsquirrelWow another problem is I think we need to break this up into more cohesive modules.05:53
-!- gremly(n=oscar@ has joined #tryton06:21
X0d_of_N0dpeople might want to track that stuff down, but we don't need to worry about that right now06:43
X0d_of_N0dif people want to make to stock you could manually generate the production orders06:48
X0d_of_N0dI'm heading home06:50
X0d_of_N0dwe'll talk tomorrow06:50
vengfulsquirrelokay talk to you then06:51
-!- vengfulsquirrel( has left #tryton06:52
-!- vengfulsquirrel( has joined #tryton06:52
CIA-10tryton: vengfulsquirrel * r420 /wiki/ Edited wiki page through web user interface.07:13
vengfulsquirrelHas anyone successfully uploaded images to the wiki?07:26
-!- Timitos(n=Timitos@ has joined #tryton08:22
vengfulsquirrelTimitos: Are you able to checkout the wiki ?08:41
vengfulsquirrelTimitos: Or do you know how I should display a photo, that's what I was trying to do.08:42
-!- nicoe( has joined #tryton09:28
-!- carlos(n=carlos@ has joined #tryton09:30
-!- enlightx(n=enlightx@ has joined #tryton09:49
-!- simahawk(n=simao@ has joined #tryton10:08
-!- simao_(n=simao@ has joined #tryton10:08
CIA-10tryton: vengfulsquirrel * r421 /wiki/ Updated wiki page text and externally linked to some figures until they can be uploaded somewhere officially.10:15
-!- bechamel(n=user@ has joined #tryton10:19
-!- carlos( has joined #tryton10:27
-!- cristi_an(i=5978d3ce@gateway/web/ajax/ has joined #tryton10:53
-!- cristi_an(i=5978d3ce@gateway/web/ajax/ has left #tryton10:58
-!- cristi_an(n=cristi@ has joined #tryton11:04
cristi_anbechamel: in the party menu11:06
cristi_anif i install only that module11:07
cristi_anthe menu looks like this Parties/New Party   Adresses/new Addess but on category11:08
cristi_anthere are edit and new11:08
cristi_anwhat is the reason not having edit on address or party as well ?11:08
bechamelcristi_an: there is no technical reason, just end user considerations11:10
bechamelcristi_an: actually there is edit for party and adress too, it's just the name11:11
bechamelcristi_an: the idea is that once created, there are no big changes on categories, so the defaut menu just open the tree of categories11:12
cristi_ansao only logical and application reasons11:12
-!- cedk(n=ced@gentoo/developer/cedk) has joined #tryton11:18
-!- Gedd( has joined #tryton11:19
cristi_anthe csv for translation is stored in the db ?11:31
cedkcristi_an: yes in ir.translation11:33
cristi_anthe content from csv11:33
cedkcristi_an: yes, you can look in ir/ there is two function for import and export11:34
cristi_ani will follwow this11:37
cristi_anhow can i specify a model filed is unique ?11:53
bechamelread explanation about _sql_constraints, and a "grep UNIQUE modules/*/*py" should give you some examples11:58
-!- gremly(n=oscar@ has joined #tryton12:16
cristi_anin a custom scenario12:21
cristi_anis possible to ad the shortcuts on new save delete12:21
cristi_anon the buttons ?12:22
cedkcristi_an: there is (CTRL+N, CTRL+S, CTRL+D)12:23
cedkcristi_an: and you can change it if you want12:23
cristi_anmaybe a wizzard on the the begging informing the user this shortcuts ?12:24
cedkcristi_an: go in the menu form, put the cursor on one entry and type the new shortcut12:24
cristi_anor tip12:24
cedkcristi_an: it is on the menubar12:24
cedkcristi_an: but we can add a tip on how customize shortcuts12:25
CIA-10tryton: C?dric Krier <> default * 1159:12ca894689c6 tryton/TODO: Add todo tip12:25
cristi_ancedk: you tal about shortcuts in the left bottm side of the application ?12:29
cedkcristi_an: no12:30
cedkcristi_an: this is what we call actions12:30
cristi_anactiosn indeeed12:30
cristi_annew ,delete,update12:30
cristi_anwhere is that menu form ?12:31
-!- paola( has joined #tryton12:34
cedkcristi_an: on top with File, User, ...12:35
cristi_ancedk: there is no menu form :)12:36
cristi_ani got it12:36
cristi_anmy mistake12:36
cristi_anso in the menu go to form ....12:37
cristi_annice features :)12:37
cristi_anone more thing : i am in the party and there i may add more addresses to the same party12:38
cristi_anis possible to use only key without mouse for doing that ?12:38
cristi_anto add more addreses to the same party12:38
cedkcristi_an: press F3 when the cursor is in the address form12:40
cedkcristi_an: for many widgets, F3 = new record and F2 = open in popup12:40
CIA-10tryton: cristi roundup * #750/ValueError: list.index(x): x not in list: [new] Traceback (most recent call last): File "/tryton/gui/window/view_form/view/form_gtk/", line 505, in switch_view self.screen ...12:43
-!- carlos( has joined #tryton12:58
cristi_ancedk: just as feature , i do not knwo  fi is possible but i ask: when i am in address or in other entity that is part of a major enitty like party has address13:00
cristi_anis not possible to use the same keys13:00
cristi_anwhen i am isside of an address filed (or in an addres (subentity) ) from13:00
cristi_annot a good idea...!!!13:01
cristi_ansince then it colide with main enity13:01
cristi_anso if i wnt to save the main entity i have to go back ....etc...13:02
cristi_anf3 is ok13:02
CIA-10tryton: ced roundup * #750/ValueError: list.index(x): x not in list: [chatting] How to reproduce the issue?13:07
CIA-10tryton: C?dric Krier <> default * 1160:3857162e79e1 tryton/TODO: Add todo for domain13:24
CIA-10tryton: C?dric Krier <> default * 1161:a09192ff677e tryton/tryton/common/ Backed out changeset 2c78e37cc65b13:24
CIA-10tryton: C?dric Krier <> default * 1162:e54e863441bc tryton/: merge13:24
CIA-10tryton: C?dric Krier <> default * 323:f450c400af79 account/ Fix name_search when args is None13:31
CIA-10tryton: C?dric Krier <> default * 36:58a21f317d9a analytic_purchase/COPYRIGHT: Update copyright13:33
CIA-10tryton: C?dric Krier <> default * 37:958a78b1b8b4 analytic_purchase/ Fix read of not line type13:33
CIA-10tryton: C?dric Krier <> default * 38:5634a1a7af3f analytic_purchase/ Fix check_for_quotation for not line type for issue74113:33
CIA-10tryton: C?dric Krier <> default * 36:ffc70a684fdb analytic_invoice/COPYRIGHT: Update copyright13:33
CIA-10tryton: C?dric Krier <> default * 37:9382d7cbb69e analytic_invoice/ Fix read for not line type13:33
CIA-10tryton: C?dric Krier <> default * 25:1b6c725dd316 analytic_sale/COPYRIGHT: Update copyright13:33
CIA-10tryton: C?dric Krier <> default * 26:75fdfc9e0624 analytic_sale/ Fix read of not line type13:33
CIA-10tryton: C?dric Krier <> default * 390:75778376c711 stock/ Improve test on product in context and fix some guidelines13:34
CIA-10tryton: C?dric Krier <> default * 391:799af538e975 stock/ Fix typo in pick_product consumable for issue73613:34
CIA-10tryton: C?dric Krier <> default * 392:f26e3ef6ca5f stock/COPYRIGHT: Update copyright13:34
CIA-10tryton: Mathias Behrle <> default * 106:d23b1063afc2 sale/ Add comments on sale lines13:42
yangooncedk: since you added additional notebooks to purchase/sale/invoice lines: what is the notion of the additional comments, that can now be joined to positions?14:43
yangooncedk: are they meant for internal use of the enterprise or are they meant for printing?14:43
cedkyangoon: there are not printed, so it is for internal comments14:45
yangooncedk: ok14:45
yangooncedk: just wanted to know, if reports would have to be extended to print them14:45
cedkyangoon: no I don't think so14:46
yangooncedk: but it is better this way, yes14:46
-!- carlos_( has joined #tryton14:46
yangoonfor printed comments a comment line can be inserted14:47
yangooncedk: perhaps the notebook should be called 'notes' instead of 'comment', to avoid confusion?14:48
cedkyangoon: I don't think it will change anything14:50
yangooncedk: from the point of the user yes14:51
yangoonit is then different from line type comment14:51
cedkyangoon: I don't see any14:51
yangoonand notes has a more private meaning, so a user won't be surprised to see them not being printed14:52
yangooncedk: there will surely be questions, why comment here and why comment there, is it the same or not14:53
yangooncedk: and if we are total logic, why not comments for comments ;)?14:53
yangooncedk: last sentence means, why isn't it possible to add comments to comments? (only a question of logic, not of usability)14:55
yangooncedk: to explain again: the user sees he can input a comment, and then notebook comment is empty14:57
cedkyangoon: ok, but so we must rename the field into note14:58
cedkbecause it will be confusing for programmers also14:59
yangooncedk: will that change also line type into note?14:59
cedkthis needs a little migration15:00
yangooncedk: I see, but I think it is worth15:00
cedkyangoon: no, because of your remarks15:00
cedkyangoon: I don't understand15:00
yangooncedk what I would like to see:15:01
yangooncedk: line type comment for input of comments (no need for notes/comments on comments, but OTOH why not?)15:02
yangooncedk: and notebooks General and Notes, notes containing notes15:02
cedkyangoon: that is what I say15:04
yangooncedk: then we agree perfectly15:05
cedkand that why I say we must change the field comment into note15:05
yangooncedk: perhaps even better to enable notes on comment lines to have the same layout for all line types?15:07
cedkyes no change on this15:08
yangooncedk: so the user experiences in general, notes are being kept private and totally different from comments15:08
yangooncedk: this would be a chnange, because currently it is not possible to put comments(notes) on comment lines (notebook comment is empty)15:09
yangoonok, great15:10
cedkyangoon: ho, yes but there is two possibility: hide the tab or don't hide the field15:10
yangooncedk: yes, I think notes on comments will be rarely used, but perhaps there is some case where it could be useful, so I would rather enable15:12
-!- ikks(n=igor@ has joined #tryton15:14
-!- juanfer(n=juanfer@ has joined #tryton15:16
-!- cristi_an(n=cristi@ has joined #tryton16:20
-!- carlos(n=carlos@ has joined #tryton17:11
-!- simahawk(n=simao@ has joined #tryton17:27
-!- tekknokrat( has joined #tryton17:45
-!- carlos(n=carlos@ has joined #tryton18:20
-!- mrcast1( has joined #tryton18:38
-!- mrcast1( has left #tryton18:47
CIA-10tryton: C?dric Krier <> default * 1468:9e28711f7063 trytond/TODO: Remove todo18:51
CIA-10tryton: C?dric Krier <> default * 429:e1260a0fd1f7 stock/ Add on_change_uom to handle unit_price and don't round unit_price when calling currency.compute18:51
CIA-10tryton: C?dric Krier <> default * 213:f4c273abc781 purchase/ ( purchase.xml): Rename comment into note because there is now a comment type19:07
CIA-10tryton: C?dric Krier <> default * 107:70a335ea2748 sale/ ( sale.xml): Rename comment into note because there is a comment type19:07
-!- vengfulsquirrel( has joined #tryton19:09
-!- paola( has joined #tryton19:38
X0d_of_N0dACTION looks around 19:38
X0d_of_N0dvengfulsquirrel: hey19:38
vengfulsquirrelHow's it going ?19:39
X0d_of_N0dsorry about kind of dropping yesterday, my manager's brother started talking to me about some stuff19:39
X0d_of_N0dnot bad, just looking at the wiki page19:39
X0d_of_N0dat a glance it looks pretty good19:40
vengfulsquirrelyeah that's fine, I think we made some headway19:40
vengfulsquirrelyeah the feature list is kind of a mess19:40
X0d_of_N0dlemme look at it for a bit, I just kind of skimmed it19:40
vengfulsquirrelcedk: Is there a way to upload images to the wiki?19:40
-!- cristi_an(i=5978d3ce@gateway/web/ajax/ has joined #tryton19:48
-!- tekknokrat( has left #tryton19:55
X0d_of_N0dvengfulsquirrel: inventory shouldn't be consumed until a job run is complete19:55
vengfulsquirrelwell if its being used on the production line i assume that its consumed19:56
X0d_of_N0dvengfulsquirrel: maybe if the job is canceled the user should put in how much material was actually used...19:56
X0d_of_N0dright, but production could start then be canceled with all or most of the material still intact19:57
vengfulsquirrelYeah how often does that happen ?19:58
X0d_of_N0dnot very often, but if it did happen you'd have to manually pull stuff out of consumed which would be a huge pain20:00
vengfulsquirrelMaybe there should be an expected, used quantity for each material.20:00
vengfulsquirrelThat is pre-filled based on the bom20:00
vengfulsquirreland then can be adjusted at the end of the run.20:01
vengfulsquirrelHa and then we can add 40,000 more moves.20:01
vengfulsquirrelDid you see cedk's email on the list ?20:14
X0d_of_N0dno, i didn't20:14
-!- evernichon( has joined #tryton20:14
vengfulsquirrelWhat do you think about creating production orders in a similar way to how purchase requests are created with the stock_supply module ?20:14
X0d_of_N0dI'll have to look at the code20:15
X0d_of_N0dI think the workflow would be similar, so I don't see anything wrong with that idea20:16
X0d_of_N0dI think the workflow for production should be the same as the workflow for sales and purchasing20:17
vengfulsquirrelYeah okay I guess it doesn't seem like there will be a clear connection between sales and production orders.  Is that what we want?20:18
X0d_of_N0dthere does need to be a connection, but if we can do something manually we can do it automatically20:19
X0d_of_N0dACTION looks more at the code20:20
-!- sharkcz( has joined #tryton20:25
X0d_of_N0dvengfulsquirrel: if we start off and there's no link between sales and production I think that's fine because we can add it later, do you see any problem with doing things that way?20:29
vengfulsquirrelJust as long as I can turn it off20:30
cedkvengfulsquirrel: I think you must add it with subversion20:30
vengfulsquirrelcedk: I tried to checkout but its not working.20:30
cedkvengfulsquirrel: in the wiki directory20:30
vengfulsquirrelwiki/images ?20:30
X0d_of_N0dwe'll decide how to make that work when we're ready to figure out how to link the two20:30
vengfulsquirrelX0d_of_N0d: Do you usually stock configured products?20:31
X0d_of_N0dI think we make configured products to order20:31
X0d_of_N0dor we stock a base assembly that can be configured, but usually we make to order20:32
vengfulsquirrelX0d_of_N0d: Yeah that's a problem right there, if configured products are inventoried they must be somehow stored uniquely.20:34
vengfulsquirrelX0d_of_N0d: Or never stored in inventory for longer than production can make them and move them to the customer.20:35
X0d_of_N0dIn the current system we use configured boms have their own part numbers20:36
vengfulsquirrelEach configuration? Or each configured bom ?20:36
X0d_of_N0deach configuration20:36
X0d_of_N0dI don't feel like that's the right way to do it though20:36
X0d_of_N0dthen again, we can't really link a configurable bom to a specific part number because each different configuration should have a unique part number...20:38
X0d_of_N0dunless configurations *don't* have unique part numbers...20:39
X0d_of_N0dbut then we need some other way to store the configuration information20:39
vengfulsquirrelyeah and then if the revision changes...20:41
vengfulsquirrelnew part numbers for everyone!20:41
-!- enlightx( has joined #tryton20:41
-!- enlightx( has joined #tryton20:41
X0d_of_N0dno, revisions wouldn't change the part number20:42
X0d_of_N0dthat's the point of revisions20:42
X0d_of_N0dwe could use a numbering scheme to make virtual part numbers20:43
X0d_of_N0de.g.: a configurable bom has a part number 12320:44
vengfulsquirrelI meant the configuration part numbers would change if that configuration was different or completely removed.20:44
X0d_of_N0dbut that's where revs come in20:45
X0d_of_N0dwow...that really sucks20:47
vengfulsquirrelWhich one?20:47
X0d_of_N0dstoring config'd bom info if the configurable bom itself changes20:47
X0d_of_N0dI wish we had more systems to look at to figure out how other people did this20:50
vengfulsquirrelI think this is always a problem of the ages.20:50
vengfulsquirrelSimilar to the colors/sizes stuff.  No one wants to maintain them all but everyone wants to reap the benefits of having them seperate.20:51
vengfulsquirrelHmm yeah but any product that is configured needs to have a bom tracking tree pretty much.20:53
X0d_of_N0dyeah, or something20:55
X0d_of_N0dI'm sending the wiki stuff to my boss to have him take a look at it and see if he catches anything I missed20:56
-!- paola( has joined #tryton21:20
-!- X0d_of_N0d(i=user@gateway/tor/x-30ba472c1b831fa8) has joined #tryton21:26
vengfulsquirrelX0d_of_N0d: Do you think the production order should have another state from Running to Finished to Done so that between Finished and Done moves can be created back to Storage ?21:37
cristi_anguys you try to do some generic thing but be sure that in this filed there is not such thing as a standard.....21:44
cristi_anso if you will have 10 customers you'll see that you will have like 6,7 diffrent requests21:45
vengfulsquirrelcristi_an: ?21:51
-!- X0d_of_N0d(i=user@gateway/tor/x-db4792a8484753f2) has joined #tryton21:55
X0d_of_N0dvengfulsquirrel: did you get the last few things I said?21:56
vengfulsquirrel(12:13:24) X0d_of_N0d: brb <-- this is all I got21:58
vengfulsquirrelX0d_of_N0d: Did you get my question about a new production order state ?22:00
X0d_of_N0dvengfulsquirrel: draft, assigned, in progress, stopped (or paused), canceled, completed22:01
X0d_of_N0dI think move should take place when the job is completed, I don't think we need another state22:01
X0d_of_N0din the future I think materials should be moved as they're allocated so if we have 10 metal blocks and the job is 50% complete then we have 5 blocks used and 5 new parts22:02
vengfulsquirrelwhich move should take place?  the move from produced to output zone or the move from the output zone to the storage?22:02
X0d_of_N0dbut we can deal with granular tracking of materials and labor later on22:02
X0d_of_N0dto the output zone, the next move is up to the user (storage or shipping)22:03
vengfulsquirrelyeah but with the way the stock supply module works it should always go back to storage22:04
X0d_of_N0dor perhaps the default location could be defined in the bom22:04
vengfulsquirreleven if its virtual22:04
vengfulsquirrelI sent another email to the list explaining my understanding of the stock supply way of doing things.22:05
X0d_of_N0dI guess I'm not on the list22:06
vengfulsquirrelYou can just go to google groups and probably read it22:06
vengfulsquirrelbut you should probably get on the list , everybody is doing it22:07
X0d_of_N0dok, I'm joining the group too so... yeah.22:07
X0d_of_N0dI'm gonna get some lunch first22:07
X0d_of_N0dI'll be back in a bit22:07
-!- mmarshall(n=mmarshal@ has joined #tryton22:59
cedkvengfulsquirrel: for your remarks about color/size with products, we had the template mecanisme on product23:02
cedkvengfulsquirrel: in fact the model product.product inherits from product.template (inherit is like a one2many)23:02
cedkso you have one product.template with many product.product that are linked to it23:03
cedkand shared many commons property like accounting stuff etc...23:03
cedkit is not visible directly in the current interface but it is there23:04
vengfulsquirrelSo each color/size combination would be a seperate product but they would share common properties via a template?23:05
vengfulsquirrelcedk:  ^23:06
cedkvengfulsquirrel: yes23:07
X0d_of_N0dvengfulsquirrel: the same method could be used for storing configurable bom choices....23:08
X0d_of_N0dACTION thinks... yeah, that's kind of what cedk said, huh23:08
vengfulsquirrelWell except those are properties whereas configurable boms are more like physical pieces, I'm not sure, I'll have to look at it.23:09
vengfulsquirrelBut I didn't know existed and now I know.23:09
X0d_of_N0dboms could be linked to tempalte and bom choices could just be a field in product that's not used unless the bom linked to the template is configurable23:11
vengfulsquirrelX0d_of_N0d: That still doesn't solve the configured product identification problem unless we make a product for every configuration of the BOM, is that what you mean?23:15
X0d_of_N0dinstead of configuring everything during sales you'd configure while creating the boms23:18
X0d_of_N0dso if a new order came in for a configuration that doesn't exist you'd create a new product and configure the bom connected to it...23:19
vengfulsquirrelSo every product would then always have a fixed bom.23:20
X0d_of_N0dthen add the new part number to the sales order23:20
X0d_of_N0dno, every template would have a bom, then the product would have the configuration of it23:21
cedkI don't understand what you name confgured BOM ?23:21
cedkfor me, a BOM is the instruction to create one product23:22
X0d_of_N0dright but a bom can be configurable so that the same bom can make multiple different items depending on what you choose23:22
X0d_of_N0da configurable bom is much like a product template23:22
cedkwe can make that a BOM can be use to construct a product.product or a product.template23:23
vengfulsquirrelSo maybe configurable boms should actually be created in the Production Management area and then a product can choose to use it under its production tab to define its fixed BOM.23:24
cedkvengfulsquirrel: I don't think that it is real, in the BOM you define the product you need to produce, so it can not be use for any product23:25
X0d_of_N0dwe'd need a ui to product.template23:25
vengfulsquirrelcedk: Yeah the configurable bom is just supposed to help with BOM maintanence so you don't have to maintained 256 boms for a computer you sell because there are 4 monitor types, 4 hard drive types, 4 cpu types and 4 memory types.23:29
X0d_of_N0dcedk: ?23:29
vengfulsquirrelI think the difference between the product template and what we need is that the product's themselves don't extend the template really they just share it.23:30
X0d_of_N0dvengfulsquirrel: which is exactly what we want23:31
vengfulsquirrelX0d_of_N0d: Do you think if people made a change to the bom configuration then it would be okay to re-write a new revision of each configured bom used by products?23:31
X0d_of_N0danything in product template is shared across all things that share a template23:31
vengfulsquirrelX0d_of_N0d: No because each product will have a different configuration.23:31
X0d_of_N0dright, but the bom will be shared23:32
X0d_of_N0dthe configuration would be stored in product.product23:32
vengfulsquirrelI'm saying what if we don't store a mere configuration what if we just treat it like a seperate bom but read only and then the configurator can push revisions into it as the shared bom changes.23:32
X0d_of_N0dvengfulsquirrel: then we have replication of data and that's bad23:33
bechamelvengfulsquirrel: the mecanism between product.product and product.template allow to define for example several colors for the same product (like a bike or a shirt) but two cpu are gonna be two different templates23:33
X0d_of_N0dbechamel: unless we extend template to support that23:34
bechamelso maybe a instead of configurable bom i would talk about configurable bom line: so a computer bom will contain the bom line cpu which contain cpu1 and cpu2 (and a sequence to tell which cpu use by default)23:34
vengfulsquirrelbechamel: That is kind of what was originally proposed except I refer to a configurable bom as a bom that contains configurable bom lines.23:36
bechamelthe product order than will explode all the needed boms, and the user can force some alternate products for some lines (i don't know how will be the gui)n one can also imagine that default product are overiden by other product on the same bom line if the other product is available in stock23:36
bechamelvengfulsquirrel: ok, the difficult part in this kind of talk is to find a common vocabulary :)23:37
X0d_of_N0dwe're talking about a subject where they use the exact same letters for two different things23:39
vengfulsquirrelThe BOM Lines in the middle are the configurable BOM lines.23:39
vengfulsquirrelha yeah seriusoly i've been pretty disgusted with the books i've read, its like one big money scam23:40
X0d_of_N0dtwo different *related* things23:40
bechamelvengfulsquirrel: :)23:40
vengfulsquirrelI've also found multiple definitions, sometimes completely contradictory, for almost every term.23:41
vengfulsquirrelAnyways ha end of rant.23:41
bechamelvengfulsquirrel: i'm not at ease with the graph, i like to think with db tables ..23:41
X0d_of_N0dvengfulsquirrel: yes23:42
X0d_of_N0dACTION grinz23:42
X0d_of_N0dbechamel: ok, so the layout would sort of be like this....23:42
vengfulsquirrelbechamel: Okay yeah I was going to make a drawing of the entity relationships so maybe I'll do that this weekend.23:42
vengfulsquirrelI think as long as we somehow make a product for each configuration things will be much simpler.  I'm just worried that changes to the main configuration will be difficult to handle, ie. what happens to all the depend products?23:44
X0d_of_N0dbom_id, rev, bom_type, bom_lines23:44
X0d_of_N0dvengfulsquirrel: hum... lets think about this23:46
bechamelcreating lot of product just to handle several kind of bom is not a good solution23:47
bechameland one should find a solution that is modular enough to avoid reconfiguration nightmares :)23:48
bechamelthere is also an other difficulty: sometimes it's not enough for a bom to only "output" one product, for example different size of adhesive paper are created in the same time from a big paper roller and  glue23:49
vengfulsquirrelYeah you mean like a bom should signify a quantity and uom ?23:49
bechameland sometimes production generate also wastes23:49
X0d_of_N0dvengfulsquirrel: each product links back to it's template. It would be possible to do a search to find all the dependances...23:49
X0d_of_N0dif a change to a configurable bom made a configured bom impossible then the ui could ask if you want to invalidate the bom?23:50
X0d_of_N0dbechamel: the products would exist anyway, this is just a way to unify the boms so you don't need replicated data23:50
vengfulsquirrelbechamel: In the United States we just dump waste in the nearest watershed and don't document it.  Do you mean like partially finished products or like stuff that can be recycled or used in another process?23:51
X0d_of_N0dbechamel: and would share a bom, therefore share a template23:51
bechamelthe first idea of a bom for me, is a list of (qty, product) as input materials and another list (qty, product) as output material, but it's not modular, so each list item should be something like a porduct but not a product23:52
vengfulsquirrelHmm yeah maybe there could be a wastes list associated with a bom.23:53
X0d_of_N0dbechamel: you mean reusable materials that are different than the input materials?23:53
X0d_of_N0dbechamel: if it's not modular it won't work.23:53
X0d_of_N0dbechamel: it's not possible to maintain static boms for thousands of possible items23:53
X0d_of_N0dmodular boms are absolutely essential for companies with configurable products23:53
bechamelX0d_of_N0d: i don't thing that using the product.template - product.product relation will lead to something good (at least for the rest of the system it would be a major change of the semantic og templates)23:54
vengfulsquirrelX0d_of_N0d: I still think read-only static boms might be a good option.23:54
bechamelvengfulsquirrel: yes i think about reusable materials and also for toxic wastes that should be tracked23:55
X0d_of_N0dvengfulsquirrel: if you have static boms you might as well not have boms at all23:55
X0d_of_N0dat least for us23:55
vengfulsquirrelbechamel: Okay yeah that sounds like something that would be good to be addressed, maybe between Running and Finished those could be updated with actual quantities produced.23:55
bechamelvengfulsquirrel: yes bom must be readonly, but the product order should allow to choose across sevearal configuration23:55
vengfulsquirrelX0d_of_N0d: I don't see any difference other than under the hood.23:56
X0d_of_N0dvengfulsquirrel: maybe I'm misunderstanding you23:56
vengfulsquirrelX0d_of_N0d: You can't update the configurable bom without sending revision updates to every dependent product's static bom.  Really maybe we'd store 50% more bom data.23:57
vengfulsquirrelbut it would simplify everything because then every product would have essentially a static bom23:58
bechamelvengfulsquirrel: what do you mean exactly by static ?23:58
X0d_of_N0dbut if you update a shared bom you need to update everything that uses that bom23:59
vengfulsquirrelNot configurable, just a standard list of materials23:59
vengfulsquirrelX0d_of_N0d: Yeah, you have to anyways.23:59

Generated by 2.11.0 by Marius Gedminas - find it at!