{"action":"created","issue":{"url":"https://api.github.com/repos/frappe/erpnext/issues/3261","labels_url":"https://api.github.com/repos/frappe/erpnext/issues/3261/labels{/name}","comments_url":"https://api.github.com/repos/frappe/erpnext/issues/3261/comments","events_url":"https://api.github.com/repos/frappe/erpnext/issues/3261/events","html_url":"https://github.com/frappe/erpnext/issues/3261","id":76373743,"number":3261,"title":"[Paid Development] Improvements in Item Variants","user":{"login":"adityaduggal","id":1057509,"avatar_url":"https://avatars.githubusercontent.com/u/1057509?v=3","gravatar_id":"","url":"https://api.github.com/users/adityaduggal","html_url":"https://github.com/adityaduggal","followers_url":"https://api.github.com/users/adityaduggal/followers","following_url":"https://api.github.com/users/adityaduggal/following{/other_user}","gists_url":"https://api.github.com/users/adityaduggal/gists{/gist_id}","starred_url":"https://api.github.com/users/adityaduggal/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/adityaduggal/subscriptions","organizations_url":"https://api.github.com/users/adityaduggal/orgs","repos_url":"https://api.github.com/users/adityaduggal/repos","events_url":"https://api.github.com/users/adityaduggal/events{/privacy}","received_events_url":"https://api.github.com/users/adityaduggal/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/frappe/erpnext/labels/paid%20development","name":"paid development","color":"fbca04"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":2,"created_at":"2015-05-14T14:22:10Z","updated_at":"2015-05-16T06:56:24Z","closed_at":null,"body":"Currently Item variants cannot handle the following:\r\n\r\n1. Variant fields which are not needed in Item Naming.\r\n1. Variant fields which are Floats\r\n1. Define filters according to which the customers can browse the website.\r\n\r\nSuppose we want to make an Item Variant for LCD TV. The following fields would be used:\r\n 1. Type of TV (LCD, Plasma, CRT etc)\r\n 1. Size of TV (20\", 22\", 24\" etc)\r\n\r\nNow if we create the item variant then it would create 3x3 = 9 item codes for the variant but what if we had a range of size from 20\" to 300\" in steps of 1\" each so in that case we would have like item codes for all the range but in most cases there would not be any stock of the items.\r\n\r\nSo to avoid such scenario, the new item variant improvement would only define an item variant and we could give an option to users/admins whether they want to create a definition or the actual item variants.\r\n\r\nThe definition of item variant has to handle the following things:\r\n1. In case of float or numeric fields there should be an option to define the range and also the steps so in our case of TV the min would be 20 and max would be 300 along with step of 1 inch.\r\n\r\n2. There should also be a way to link fields of different UoM. Like we can define the size of TV in Inch or in mm. Hence we would need to define a field size in mm == size in inch * 25.4\r\n\r\n3. Item variants should also have the option to define the Filters in the website like in the case of many online portals we can choose the filters and then zero in on the product needed.\r\n\r\nA small but working model of this type of item variants is working in erpnext with the help of custom client and server scripts.\r\n\r\nServer scripts are here: https://github.com/adityaduggal/rigpl-erpnext/blob/master/rigpl_erpnext/rigpl_erpnext/item.py\r\n\r\n"},"comment":{"url":"https://api.github.com/repos/frappe/erpnext/issues/comments/102580807","html_url":"https://github.com/frappe/erpnext/issues/3261#issuecomment-102580807","issue_url":"https://api.github.com/repos/frappe/erpnext/issues/3261","id":102580807,"user":{"login":"adityaduggal","id":1057509,"avatar_url":"https://avatars.githubusercontent.com/u/1057509?v=3","gravatar_id":"","url":"https://api.github.com/users/adityaduggal","html_url":"https://github.com/adityaduggal","followers_url":"https://api.github.com/users/adityaduggal/followers","following_url":"https://api.github.com/users/adityaduggal/following{/other_user}","gists_url":"https://api.github.com/users/adityaduggal/gists{/gist_id}","starred_url":"https://api.github.com/users/adityaduggal/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/adityaduggal/subscriptions","organizations_url":"https://api.github.com/users/adityaduggal/orgs","repos_url":"https://api.github.com/users/adityaduggal/repos","events_url":"https://api.github.com/users/adityaduggal/events{/privacy}","received_events_url":"https://api.github.com/users/adityaduggal/received_events","type":"User","site_admin":false},"created_at":"2015-05-16T06:56:24Z","updated_at":"2015-05-16T06:56:24Z","body":"@rmehta Please note that if I create a variant TV. The following are the options we have available:\r\n\r\n1. TV type = LCD/CRT/LED\r\n2. Size = (no option available, but the field is governed by the rules defined in the variant).\r\n\r\nNow the variants would not be created by default but would be governed by rules. In case the field is a numeric field then we would have highest and lowest values and also the step increments that would define the item variants.\r\n\r\nLike in our case of TV. If we have specified the TV size as numeric and range as 30~300 with steps of 5, then the only possible values in the size would be 30,35,40,45,50,55,60.....300.\r\n\r\nI am still not able to get your 2nd point as to what do you mean by combinations or exceptions."}}