{ "info": { "author": "SYLEAM,ACSONE SA/NV,Odoo Community Association (OCA)", "author_email": "support@odoo-community.org", "bugtrack_url": null, "classifiers": [ "Framework :: Odoo", "License :: OSI Approved :: GNU Affero General Public License v3", "Programming Language :: Python" ], "description": ".. image:: https://img.shields.io/badge/licence-AGPL--3-blue.svg\n :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html\n :alt: License: AGPL-3\n\n====================================================\nStock Scanner : WorkFlow engine for scanner hardware\n====================================================\n\nThis module allows managing barcode readers with simple scenarios:\n\n- You can define a workfow for each object (stock picking, inventory, sale, etc)\n- Works with all scanner hardware model (just SSH client required)\n\nSome demo/tutorial scenarios are available in the \"demo\" directory of the module.\nThese scenarios, are automatically imported when installing a new database with demo data.\n\nInstallation\n============\n\n\nThe \"sentinel.py\" specific ncurses client is available in the \"hardware\" directory.\nThis application is a separate client, and can be run on any device.\n\nFor mobile devices, like Windows Mobile or Android smart barcode scanners, we usually install it on a server, accessed through SSH.\n\nIf you plan to use the specific \"sentinel.py\", you will need the \"openobject-library\" Python module, available from pip:\n\n $ sudo pip install \"openobject-library<2\"\n\n.. note::\n\n You must use openobject-library earlier than 2.0 with Odoo.\n The version 2.0 of openobject-library only implements the Net-RPC protocol, which was removed from v7.\n\nTo test the module, some modules provide scenario.\n\nConfiguration\n=============\n\nIn Odoo\n-------\n\nDeclare hardware\n^^^^^^^^^^^^^^^^\n\nYou have to declare some hardware scanners in Odoo.\n\nGo to \"Warehouse > Configuration > Scanner Hardware\" and create a new record.\n\nThe \"step type code\" sent by the \"sentinel.py\" client at start-up is the IP address of the hardware, if connected through SSH.\n\nIf needed enable Login/Logout\n^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\nThe module come with 2 predifined scenarii for Login and Logout. The functionality is disabled by default and the user to use in\nOdoo must be specified in the .oerp_sentinelrc file used by sentinel and can be overriden on the Scanner Hardware definition\nin Odoo. \n\nIf the Login/logout functionality is enabled, when a user start a session with sentinel, only the Login scenario is displayed on the\nscreen. The scenario will prompt the user for its login and pwd. If the authentication succeed, each interaction with Odoo will be done\nusing the uid of the connected user. Once connected, a Logout scenario is displayed in the list of available scenarii and the Login\nscenario no more appear. \n\nThe Login/logout functionality enable you to specify on the scenario a list of users and/or a list of groups with access to the scenario.\n\nTo enable the Login/logout functionality:\n * Go to \"Settings > Warehouse\" and check the checkbox Login/logout scenarii enabled.\n * Create a *Technical User* 'sentinel' **without roles in Human Resources** and with 'Sentinel: technical users' checked.\n * Use this user to launch your sentinel session.\n\nBe careful, the role *Sentinel: technical users* is a technical role and should only be used by sentinel.\n\nThe timeout of sessions is managed by a dedicated cron that reset the inactive sessions. The timeout can be configured on \nsettings. \"Settings > Warehouse\"\n\nFor the sentinel.py client\n--------------------------\n\nThe sentinel.py client needs a config file in the standard `ini` format, which is not automatically created.\nThis file can be named `.oerp_sentinelrc`, `.openerp_sentinelrc` or `.odoo_sentinelrc`, and can be located in the current working directory, or in the user's home directory.\n\nThe user put in the configuration file is used by the sentinel.py client to connect to Odoo.\nIt can be overriden by hardware by setting the `User` field, to execute steps with the defined user, without having to create a configuration file per used that will need to connect.\n\nThis file simply contains information for server connection (hostname, port, username, password and database).\n\n [openerp]\n host = localhost\n password = admin\n database = demo\n\nSee the `hardware/odoo_sentinelrc.sample` file for an example.\n\n**Note** : If you want to copy the application outside this git repository, you will need to copy the i18n folder too.\n\nAutoconfiguration feature\n^^^^^^^^^^^^^^^^^^^^^^^^^\n\nThe `sentinel.py` client has an autoconfiguration feature, used to automatically recognize the hardware being connected.\nDuring initialization, the `sentinel.py` client tries to detect an SSH connection, and sends the terminal's IP address as terminal code.\nIf the IP address is found on the `code` field on a configured hardware in the database, this hardware configuration will automatically be used.\nIf the IP address is not found, the client will ask the user to type (or scan) a code.\n\nThis can be used only if the Odoo server and the connected hardware are on the same network.\n\nWriting scenario\n----------------\n\nCreation\n^^^^^^^^\n\nThe preferred way to start the creation of a scenario is to create steps and transitions in diagram view.\n\nOnce your steps are created, you can write python code directly from Odoo, or you can export the scenario to write the python code with your preferred code editor.\n\nIn the python code of each step, some variables are available :\n - cr : Cursor to the database\n - uid : ID of the user executing the step (user used to log in with the sentinel, or user configured on the hardware, if any)\n - pool : Pooler to the database\n - env : Environment used to execute the scenario (new API)\n - model : Pooler on the model configured on the scenario\n - custom : Pooler on the custom values model\n - term : Recordset on the current scenario\n - context : Context used on the step\n - m or message : Last message sent by the hardware\n - t or terminal : Browse record on the hardware executing the step\n - tracer : Value of the tracer of the used transition to access this step\n - wkf or workflow : Workflow service\n - scenario : Recordset on the current scenario for the hardware\n - _ : The translation function provided by Odoo (useable like in any other python file)\n\nSome of these variables are also available on transition conditions execution.\n\nAs stated previously, the step must always return:\n\n- A step type code, in the `act` variable\n- A message to display on the hardware screen, in the `res` variable\n- Optionally, a default value, in the `val` variable\n\nStep types\n^^^^^^^^^^\n\nThe step types are mostly managed by the client.\n\nThe standard step types are :\n\n- M : Simple message\n- F : Final step, like M, but ends the scenario\n- T : Text input\n- N : Number input (integer)\n- Q : Quantity input (float)\n- L : List\n- E : Error message, like M, but displayed with different colors\n- C : Confirm input\n- A : Automatic step. This type is used to automatically execute the next step\n\n.. note::\n\n The automatic step often needs to define a value in `val`, corresponding to the value the user must send.\n This step type is generally used as replacement of another type, at the end of the step code, by redefining the `act` variable in some cases, for example when a single value is available for a list step.\n\nImport\n^^^^^^\n\nScenarios are automatically imported on a module update, like any other data.\nYou just have to add the path to your `Scenario_Name.scenario` files in the `data` or `demo` sections in the `__openerp__.py` file.\n\nExport\n^^^^^^\n\nThe export script is in the `script` directory of the module\n\nA scenario is exported as a set of files, containing :\n - Scenario_Name.scenario : Global description of the scenario (name, warehouses, steps, transitions, etc.)\n - A .py file per step : The name of the file is the XML ID of the step\n\nUsing a test file\n^^^^^^^^^^^^^^^^^\n\nWhen developing scenarios, you will often have the same steps to run.\nThe sentinel.py client allows you to supply a file, which contains the keys pressed during the scenario.\n\nYou can define the file to use in the configuration file, on the \"test_file\" key.\nThis file will be read instead of calling the curses methods when the scenario is waiting for a user input (including line feed characters).\nWhen the file has been fully read, the client exits.\n\nA sample test file can be found in the \"Step Types\" demo scenario.\n\n*Special keys* :\nFor special keys (arrows, delete, etc.), you must write a line containing ':', followed by the curses key code.\n\nValid key codes are :\n - KEY_DOWN : Down arrow\n - KEY_UP : Up arrow\n - KEY_LEFT : Left arrow\n - KEY_RIGHT : Right arrow\n - KEY_BACKSPACE : Backspace\n - KEY_DC : Delete\n\nUsage\n=====\n\nOn start-up, the client lists available scenarii.\nWhen the user selects a scenario, the current scenario and step are stored on the hardware configuration's entry in Odoo.\n\nWhen the client sends a message to the server, the next step is selected depending on the current step and the message sent.\nThen, the server returns the result of the step, which contains its type code and the text to display on the hardware screen.\nUnlike the standard Odoo Workflow, each step needs to find a valid transition, because a step needs to be displayed on the hardware screen at all times.\n\n.. image:: https://odoo-community.org/website/image/ir.attachment/5784_f2813bd/datas\n :alt: Try me on Runbot\n :target: https://runbot.odoo-community.org/runbot/154/8.0\n\nA client for the Datalogic PowerScan scanners was developped for a very early version or this module.\nThe files have been removed, but are still available in the `git repository history\n`_.\n\nBug Tracker\n===========\n\nBugs are tracked on `GitHub Issues\n`_. In case of trouble, please\ncheck there if your issue has already been reported. If you spotted it first,\nhelp us smashing it by providing a detailed and welcomed `feedback\n`_.\n\nCredits\n=======\n\nImages\n------\n\n* Odoo Community Association: `Icon `_.\n\nContributors\n------------\n* Alexandre Fayolle \n* Christophe CHAUVET \n* Damien Crier \n* Laetitia Gangloff \n* Laurent Mignon \n* Olivier Dony \n* Sebastien LANGE \n* Sylvain Garancher \n\nMaintainer\n----------\n\n.. image:: https://odoo-community.org/logo.png\n :alt: Odoo Community Association\n :target: https://odoo-community.org\n\nThis module is maintained by the OCA.\n\nOCA, or the Odoo Community Association, is a nonprofit organization whose\nmission is to support the collaborative development of Odoo features and\npromote its widespread use.\n\nTo contribute to this module, please visit https://odoo-community.org.\n\n\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://odoo-community.org/", "keywords": "", "license": "AGPL-3", "maintainer": "", "maintainer_email": "", "name": "odoo8-addon-stock-scanner", "package_url": "https://pypi.org/project/odoo8-addon-stock-scanner/", "platform": "", "project_url": "https://pypi.org/project/odoo8-addon-stock-scanner/", "project_urls": { "Homepage": "https://odoo-community.org/" }, "release_url": "https://pypi.org/project/odoo8-addon-stock-scanner/8.0.1.0.0.99.dev36/", "requires_dist": [ "odoo (<9.0a,>=8.0a)" ], "requires_python": "~=2.7", "summary": "Allows managing barcode readers with simple scenarios", "version": "8.0.1.0.0.99.dev36" }, "last_serial": 5763243, "releases": { "8.0.1.0.0.99.dev10": [ { "comment_text": "", "digests": { "md5": "ab4ed7379d7210fb0bd84e1e4c9fd121", "sha256": "5a85d1256b2b8a8ec1b20410ec10887c32f7d2db32545eb0791394f40b6deab9" }, "downloads": -1, "filename": "odoo8_addon_stock_scanner-8.0.1.0.0.99.dev10-py2-none-any.whl", "has_sig": false, "md5_digest": "ab4ed7379d7210fb0bd84e1e4c9fd121", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 693741, "upload_time": "2017-04-11T16:36:05", "url": "https://files.pythonhosted.org/packages/3b/92/cb03261b6fcf72ee421d783a672c8ba232cb23050d6497fdf46adf430516/odoo8_addon_stock_scanner-8.0.1.0.0.99.dev10-py2-none-any.whl" } ], "8.0.1.0.0.99.dev11": [ { "comment_text": "", "digests": { "md5": "52447210be027551ea8c083b730223a1", "sha256": "18104ee6f0fbe5be7d7a65f89b29b48955ab9d3225540e97d702b669d0018a8b" }, "downloads": -1, "filename": "odoo8_addon_stock_scanner-8.0.1.0.0.99.dev11-py2-none-any.whl", "has_sig": false, "md5_digest": "52447210be027551ea8c083b730223a1", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 700506, "upload_time": "2017-04-11T16:36:11", "url": "https://files.pythonhosted.org/packages/9f/e7/356bb783d2599a7788da4f4f1c6c0238bf1b18e58eb8cfd9e824f5ab3830/odoo8_addon_stock_scanner-8.0.1.0.0.99.dev11-py2-none-any.whl" } ], "8.0.1.0.0.99.dev12": [ { "comment_text": "", "digests": { "md5": "89b3e9e0d7a9acb428895d4471886277", "sha256": "8f0db988c5aa01ed0bb6ffe709d43ea31eb7d641297d6cf0fbbbb076807b62c9" }, "downloads": -1, "filename": "odoo8_addon_stock_scanner-8.0.1.0.0.99.dev12-py2-none-any.whl", "has_sig": false, "md5_digest": "89b3e9e0d7a9acb428895d4471886277", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 700676, "upload_time": "2017-04-11T16:36:17", "url": "https://files.pythonhosted.org/packages/06/5e/a7c7e7a825c679c5ccb727f898d22ce4d22358f5ddaf1e552335612467c8/odoo8_addon_stock_scanner-8.0.1.0.0.99.dev12-py2-none-any.whl" } ], "8.0.1.0.0.99.dev13": [ { "comment_text": "", "digests": { "md5": "323d9274197ef8619729fbe4a2bf7091", "sha256": "ff70966336d88e9671487562bfc785149eeb74c8b28396e8487f1d643c7e3c51" }, "downloads": -1, "filename": "odoo8_addon_stock_scanner-8.0.1.0.0.99.dev13-py2-none-any.whl", "has_sig": false, "md5_digest": "323d9274197ef8619729fbe4a2bf7091", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 700675, "upload_time": "2017-04-11T16:36:23", "url": "https://files.pythonhosted.org/packages/1d/7e/8e14e06d44d77eb34ddb80467a1e95f465482e833e4d30f6fd4b3e405c65/odoo8_addon_stock_scanner-8.0.1.0.0.99.dev13-py2-none-any.whl" } ], "8.0.1.0.0.99.dev14": [ { "comment_text": "", "digests": { "md5": "a4493f3cfc486ff53e3ab5a5b8b9aa87", "sha256": "d5cb2e51777e5fdf5417ab1ad598b0d62c8278e630560f87c0aad901e16f58ec" }, "downloads": -1, "filename": "odoo8_addon_stock_scanner-8.0.1.0.0.99.dev14-py2-none-any.whl", "has_sig": false, "md5_digest": "a4493f3cfc486ff53e3ab5a5b8b9aa87", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 700723, "upload_time": "2017-04-11T16:36:28", "url": "https://files.pythonhosted.org/packages/7e/54/d1fbb201f61e8a63d9895cc603edf15b946e158e731e0240c48c0c475f5f/odoo8_addon_stock_scanner-8.0.1.0.0.99.dev14-py2-none-any.whl" } ], "8.0.1.0.0.99.dev15": [ { "comment_text": "", "digests": { "md5": "fdf3bf446af63162c31d1d5ff5d771d9", "sha256": "5fc4af607a2a6d561b15a664238ec2c71ebe64f55e10e3b674e981d92d1ed701" }, "downloads": -1, "filename": "odoo8_addon_stock_scanner-8.0.1.0.0.99.dev15-py2-none-any.whl", "has_sig": false, "md5_digest": "fdf3bf446af63162c31d1d5ff5d771d9", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 700782, "upload_time": "2017-04-11T16:36:34", "url": "https://files.pythonhosted.org/packages/1f/f1/75098fba3ab27082e6a3c39286b668fd6cd0dfa634bad6fa5e36ab4a6e54/odoo8_addon_stock_scanner-8.0.1.0.0.99.dev15-py2-none-any.whl" } ], "8.0.1.0.0.99.dev16": [ { "comment_text": "", "digests": { "md5": "7d345ae029690cdc5baaabfa2ed98b80", "sha256": "05cee50b2728490e9388b6058f163968ccc95426e3aa0a28220d1dab1a599456" }, "downloads": -1, "filename": "odoo8_addon_stock_scanner-8.0.1.0.0.99.dev16-py2-none-any.whl", "has_sig": false, "md5_digest": "7d345ae029690cdc5baaabfa2ed98b80", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 700832, "upload_time": "2017-04-11T16:36:41", "url": "https://files.pythonhosted.org/packages/a4/9e/c5c1d9b542bb3119f1b93435913eb6cdd4442def68b553a09ca4dd898c4a/odoo8_addon_stock_scanner-8.0.1.0.0.99.dev16-py2-none-any.whl" } ], "8.0.1.0.0.99.dev17": [ { "comment_text": "", "digests": { "md5": "3e28a69f386795d7ed8b711182d78873", "sha256": "d8f5b3042adcc373791115b33ea3420b087198e2fa548a2d4ec5724432f04be1" }, "downloads": -1, "filename": "odoo8_addon_stock_scanner-8.0.1.0.0.99.dev17-py2-none-any.whl", "has_sig": false, "md5_digest": "3e28a69f386795d7ed8b711182d78873", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 700895, "upload_time": "2017-04-11T16:36:47", "url": "https://files.pythonhosted.org/packages/05/4f/0bcdc9be4572ada4103d3482ea3fefb7e838291567a3a51d53a7278e3605/odoo8_addon_stock_scanner-8.0.1.0.0.99.dev17-py2-none-any.whl" } ], "8.0.1.0.0.99.dev18": [ { "comment_text": "", "digests": { "md5": "61ebfc61ffa36a4704e39f4d8086bf14", "sha256": "3b029a7a78f6d21f7a052bd3e860220b9494780adfd1296708b7685cc130f997" }, "downloads": -1, "filename": "odoo8_addon_stock_scanner-8.0.1.0.0.99.dev18-py2-none-any.whl", "has_sig": false, "md5_digest": "61ebfc61ffa36a4704e39f4d8086bf14", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 700872, "upload_time": "2017-04-11T16:36:52", "url": "https://files.pythonhosted.org/packages/ae/1b/3b56475889637524747b012bf63362d611bf766e949a3b331827fb8b30a7/odoo8_addon_stock_scanner-8.0.1.0.0.99.dev18-py2-none-any.whl" } ], "8.0.1.0.0.99.dev2": [ { "comment_text": "", "digests": { "md5": "d86f7c6d339de8e83b4d6041ee5bb592", "sha256": "e38cbfee732c93c4fe4a80c282c76c847e056bcc665989c6c57a2b72449cebfc" }, "downloads": -1, "filename": "odoo8_addon_stock_scanner-8.0.1.0.0.99.dev2-py2-none-any.whl", "has_sig": false, "md5_digest": "d86f7c6d339de8e83b4d6041ee5bb592", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 313361, "upload_time": "2017-04-11T16:35:26", "url": "https://files.pythonhosted.org/packages/c0/85/b9271dc7b6fb051ff4580b922f28d961b31fc3744c22458889fd1056ef45/odoo8_addon_stock_scanner-8.0.1.0.0.99.dev2-py2-none-any.whl" } ], "8.0.1.0.0.99.dev21": [ { "comment_text": "", "digests": { "md5": "eaef82b5cd27a7eadfdb32f673fab697", "sha256": "1ba25383c722a205a91bde165e2683097906a9c518d06ad55e489558012d2fd2" }, "downloads": -1, "filename": "odoo8_addon_stock_scanner-8.0.1.0.0.99.dev21-py2-none-any.whl", "has_sig": false, "md5_digest": "eaef82b5cd27a7eadfdb32f673fab697", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 700876, "upload_time": "2017-04-21T04:30:42", "url": "https://files.pythonhosted.org/packages/61/6a/e15e99a2e180abb9d0b45054e4d9cb0a417f109454b519819244beb2bfac/odoo8_addon_stock_scanner-8.0.1.0.0.99.dev21-py2-none-any.whl" } ], "8.0.1.0.0.99.dev22": [ { "comment_text": "", "digests": { "md5": "1078864f07ffd822036dd2cbf416f0ba", "sha256": "93da29a4aa5b29c36a371f26342f83eef3575e36118e034e9244dbcc044892c6" }, "downloads": -1, "filename": "odoo8_addon_stock_scanner-8.0.1.0.0.99.dev22-py2-none-any.whl", "has_sig": false, "md5_digest": "1078864f07ffd822036dd2cbf416f0ba", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 707416, "upload_time": "2017-05-02T05:10:17", "url": "https://files.pythonhosted.org/packages/bf/d7/dc4492884351f5b52e8e012f94802a3c98382c4c4ba2300468f07da2ff00/odoo8_addon_stock_scanner-8.0.1.0.0.99.dev22-py2-none-any.whl" } ], "8.0.1.0.0.99.dev23": [ { "comment_text": "", "digests": { "md5": "1af96a0649066c2022b9756a365cc3cb", "sha256": "bab55e131dbb4585edfa3e17bccadb91a75a327ef04f373eeb3ff8aa41d660f7" }, "downloads": -1, "filename": "odoo8_addon_stock_scanner-8.0.1.0.0.99.dev23-py2-none-any.whl", "has_sig": false, "md5_digest": "1af96a0649066c2022b9756a365cc3cb", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 707469, "upload_time": "2017-05-14T04:42:22", "url": "https://files.pythonhosted.org/packages/10/c3/3ee012335bb853fd63141769e3578dfbd9f20071aca3ca849fb0eab89e38/odoo8_addon_stock_scanner-8.0.1.0.0.99.dev23-py2-none-any.whl" } ], "8.0.1.0.0.99.dev27": [ { "comment_text": "", "digests": { "md5": "90ca7c17f0dd9ff446d8f7b72a1fb8e2", "sha256": "0bd89a2d064658731fac4529b993650b7e472bf446832395132442ec36550669" }, "downloads": -1, "filename": "odoo8_addon_stock_scanner-8.0.1.0.0.99.dev27-py2-none-any.whl", "has_sig": false, "md5_digest": "90ca7c17f0dd9ff446d8f7b72a1fb8e2", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 714243, "upload_time": "2017-09-17T10:27:54", "url": "https://files.pythonhosted.org/packages/42/6f/fce21fa7fc9c43e1d3a410a371e52455ae2bc557e74a4559bf0f949c9594/odoo8_addon_stock_scanner-8.0.1.0.0.99.dev27-py2-none-any.whl" } ], "8.0.1.0.0.99.dev28": [ { "comment_text": "", "digests": { "md5": "e7bea046f6d5d3ebedc9a5e57c9a0a0e", "sha256": "eedc117dfb80d39dd2720d86216a3c0755b441e4f23661a1cdb066c855815665" }, "downloads": -1, "filename": "odoo8_addon_stock_scanner-8.0.1.0.0.99.dev28-py2-none-any.whl", "has_sig": false, "md5_digest": "e7bea046f6d5d3ebedc9a5e57c9a0a0e", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": "~=2.7", "size": 720411, "upload_time": "2017-10-29T05:40:03", "url": "https://files.pythonhosted.org/packages/1a/35/fa51fe9f48cc39431fcbb85caf730a29d1ffb50e63cdaa3e33a3f3b6906d/odoo8_addon_stock_scanner-8.0.1.0.0.99.dev28-py2-none-any.whl" } ], "8.0.1.0.0.99.dev3": [ { "comment_text": "", "digests": { "md5": "e108bdfbdd3aa779d5634ffc951e517e", "sha256": "207d02813057d9443730f142290858c4180a06cae975d36b25264c471a6f2483" }, "downloads": -1, "filename": "odoo8_addon_stock_scanner-8.0.1.0.0.99.dev3-py2-none-any.whl", "has_sig": false, "md5_digest": "e108bdfbdd3aa779d5634ffc951e517e", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 380969, "upload_time": "2017-04-11T16:35:31", "url": "https://files.pythonhosted.org/packages/57/5a/05acda059612d61ffffe0892f9401b2ff0055eded9906d392dc24389fb3c/odoo8_addon_stock_scanner-8.0.1.0.0.99.dev3-py2-none-any.whl" } ], "8.0.1.0.0.99.dev30": [ { "comment_text": "", "digests": { "md5": "3e991cce12ea886c1ea3c73d75115b02", "sha256": "78e31a3d0e13596795ecbfa5d8905a4d7bef34e8d36b01a40dc9f755acc5b640" }, "downloads": -1, "filename": "odoo8_addon_stock_scanner-8.0.1.0.0.99.dev30-py2-none-any.whl", "has_sig": false, "md5_digest": "3e991cce12ea886c1ea3c73d75115b02", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": "~=2.7", "size": 720458, "upload_time": "2017-11-12T05:32:59", "url": "https://files.pythonhosted.org/packages/f8/1a/67c110bd559cdb6941c5846e48c74a69b449a52bf6e26762cf6a9ef1d1b9/odoo8_addon_stock_scanner-8.0.1.0.0.99.dev30-py2-none-any.whl" } ], "8.0.1.0.0.99.dev31": [ { "comment_text": "", "digests": { "md5": "ee7baa26dcbf6984a77f3b35609f8416", "sha256": "ecb4ef5b18bb9f880fbdebc5d5425ec5d34347ae1b9dbacbc2399a56021a06c9" }, "downloads": -1, "filename": "odoo8_addon_stock_scanner-8.0.1.0.0.99.dev31-py2-none-any.whl", "has_sig": false, "md5_digest": "ee7baa26dcbf6984a77f3b35609f8416", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": "~=2.7", "size": 720516, "upload_time": "2017-11-26T11:12:55", "url": "https://files.pythonhosted.org/packages/14/45/3d6dd6838b115e4c64d43fc0fe31263e84d74c1a4f93452ad02aa543037c/odoo8_addon_stock_scanner-8.0.1.0.0.99.dev31-py2-none-any.whl" } ], "8.0.1.0.0.99.dev32": [ { "comment_text": "", "digests": { "md5": "b20c93c920af8b581b63c28cdb097aad", "sha256": "ca4f917dc37aad89455f43ec6aecf16e9a73815a743713e9723cd9332490ecbe" }, "downloads": -1, "filename": "odoo8_addon_stock_scanner-8.0.1.0.0.99.dev32-py2-none-any.whl", "has_sig": false, "md5_digest": "b20c93c920af8b581b63c28cdb097aad", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": "~=2.7", "size": 720511, "upload_time": "2017-12-03T05:39:41", "url": "https://files.pythonhosted.org/packages/4d/c4/28ea2fe43be914d9c935e9313610e5968140753956820bfe96ddeee8b8fb/odoo8_addon_stock_scanner-8.0.1.0.0.99.dev32-py2-none-any.whl" } ], "8.0.1.0.0.99.dev33": [ { "comment_text": "", "digests": { "md5": "25a411844b3104debcac8b7723f4a55a", "sha256": "436337003c97cfe471cf6b9de52e7ac96a94162ef2cb151cf994aba5e3cc59a4" }, "downloads": -1, "filename": "odoo8_addon_stock_scanner-8.0.1.0.0.99.dev33-py2-none-any.whl", "has_sig": false, "md5_digest": "25a411844b3104debcac8b7723f4a55a", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": "~=2.7", "size": 720602, "upload_time": "2018-03-04T05:51:43", "url": "https://files.pythonhosted.org/packages/c9/c9/98a13d464818e3000a08d63510f4f586a3e7a8fe22689392e76e44cc2115/odoo8_addon_stock_scanner-8.0.1.0.0.99.dev33-py2-none-any.whl" } ], "8.0.1.0.0.99.dev34": [ { "comment_text": "", "digests": { "md5": "734f8f4dbb3dd3b6726366052ea6c57b", "sha256": "d9967723cc6c80dcee8dcf8e1d549370b320f5c30eb0bd6e874b32eff8e2de5d" }, "downloads": -1, "filename": "odoo8_addon_stock_scanner-8.0.1.0.0.99.dev34-py2-none-any.whl", "has_sig": false, "md5_digest": "734f8f4dbb3dd3b6726366052ea6c57b", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": "~=2.7", "size": 714350, "upload_time": "2018-06-16T04:31:18", "url": "https://files.pythonhosted.org/packages/56/02/73b1b9bfb9d22b8bef907fefd739f1ed109ff05e061bf4a7970ffb944112/odoo8_addon_stock_scanner-8.0.1.0.0.99.dev34-py2-none-any.whl" } ], "8.0.1.0.0.99.dev35": [ { "comment_text": "", "digests": { "md5": "9c5e68766d4c49814adb7e8187afcddf", "sha256": "c82c22421a8b99632918c62410ea350937c6489cfa7c695a44ad16e8ba529c09" }, "downloads": -1, "filename": "odoo8_addon_stock_scanner-8.0.1.0.0.99.dev35-py2-none-any.whl", "has_sig": false, "md5_digest": "9c5e68766d4c49814adb7e8187afcddf", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": "~=2.7", "size": 718488, "upload_time": "2019-04-03T04:32:24", "url": "https://files.pythonhosted.org/packages/47/14/27749b2f52165c4ed8031a2b364c14e96a1a1946d3b8e5326e539656a14f/odoo8_addon_stock_scanner-8.0.1.0.0.99.dev35-py2-none-any.whl" } ], "8.0.1.0.0.99.dev36": [ { "comment_text": "", "digests": { "md5": "1d405074eafb2d36acd601d2460d6ac3", "sha256": "97fcf1f560ef9eeb52571ae8ac679a58b99b80b1dedc01a783a76f3741deb8f3" }, "downloads": -1, "filename": "odoo8_addon_stock_scanner-8.0.1.0.0.99.dev36-py2-none-any.whl", "has_sig": false, "md5_digest": "1d405074eafb2d36acd601d2460d6ac3", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": "~=2.7", "size": 723904, "upload_time": "2019-08-31T04:31:28", "url": "https://files.pythonhosted.org/packages/fe/a1/2fbf832137643b0e25431debd04fecdff261d03421d32456dd7b88ec9c43/odoo8_addon_stock_scanner-8.0.1.0.0.99.dev36-py2-none-any.whl" } ], "8.0.1.0.0.99.dev4": [ { "comment_text": "", "digests": { "md5": "0e98607ad9c09bc6be9a13f0f236f5bf", "sha256": "61d94d73e64ebe2ccd0da33da56985be3f1570440a5a733361b7cff039041174" }, "downloads": -1, "filename": "odoo8_addon_stock_scanner-8.0.1.0.0.99.dev4-py2-none-any.whl", "has_sig": false, "md5_digest": "0e98607ad9c09bc6be9a13f0f236f5bf", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 382802, "upload_time": "2017-04-11T16:35:35", "url": "https://files.pythonhosted.org/packages/7b/55/61a4a33e863a3d291f5f041ed9603e14acb5b7a7bdbfa1f008f7d87d7641/odoo8_addon_stock_scanner-8.0.1.0.0.99.dev4-py2-none-any.whl" } ], "8.0.1.0.0.99.dev5": [ { "comment_text": "", "digests": { "md5": "111b6bb0f18ed7de455d75fce8e41630", "sha256": "b572e7827765695d545310f9a71612ec2bdd4c91d98cd930511ba22d5b823add" }, "downloads": -1, "filename": "odoo8_addon_stock_scanner-8.0.1.0.0.99.dev5-py2-none-any.whl", "has_sig": false, "md5_digest": "111b6bb0f18ed7de455d75fce8e41630", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 668565, "upload_time": "2017-04-11T16:35:41", "url": "https://files.pythonhosted.org/packages/6b/a5/a6f0d08dc47f65f81287f93abbe4e988f143de95195ddabe8c54cfd52e12/odoo8_addon_stock_scanner-8.0.1.0.0.99.dev5-py2-none-any.whl" } ], "8.0.1.0.0.99.dev6": [ { "comment_text": "", "digests": { "md5": "29b51fc29ae4eb25e2d06ce705806a02", "sha256": "dd0e420779393138fd1f3df3efc9b6c9ab52ca692ae91aac2ff64650f2e7e7aa" }, "downloads": -1, "filename": "odoo8_addon_stock_scanner-8.0.1.0.0.99.dev6-py2-none-any.whl", "has_sig": false, "md5_digest": "29b51fc29ae4eb25e2d06ce705806a02", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 668647, "upload_time": "2017-04-11T16:35:46", "url": "https://files.pythonhosted.org/packages/8e/ad/f1373fa0cd2e8d72285b4099dadb5d78c0b9ca9b50b7b22a20c69be5338b/odoo8_addon_stock_scanner-8.0.1.0.0.99.dev6-py2-none-any.whl" } ], "8.0.1.0.0.99.dev7": [ { "comment_text": "", "digests": { "md5": "f7f8674c878d45a28aa57c86739a4330", "sha256": "5822e0860b062d38847a1cb43b5795288177bfbfe14bf461e661d4a33400edca" }, "downloads": -1, "filename": "odoo8_addon_stock_scanner-8.0.1.0.0.99.dev7-py2-none-any.whl", "has_sig": false, "md5_digest": "f7f8674c878d45a28aa57c86739a4330", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 668734, "upload_time": "2017-04-11T16:35:51", "url": "https://files.pythonhosted.org/packages/45/46/059b7a84e540ff923d06e2c45c67e618f4b4338dc1f2d58568b68eaafd24/odoo8_addon_stock_scanner-8.0.1.0.0.99.dev7-py2-none-any.whl" } ], "8.0.1.0.0.99.dev8": [ { "comment_text": "", "digests": { "md5": "687ca2aff04400cdaf1328af4b6eaaa1", "sha256": "60209f8744d159cc3178f5a57868f175a32ac8c1afb444d63cc30f3178091865" }, "downloads": -1, "filename": "odoo8_addon_stock_scanner-8.0.1.0.0.99.dev8-py2-none-any.whl", "has_sig": false, "md5_digest": "687ca2aff04400cdaf1328af4b6eaaa1", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 668790, "upload_time": "2017-04-11T16:35:57", "url": "https://files.pythonhosted.org/packages/e8/bf/47ffc5421351e7428a1d84b86c804d87ac8cd14d1728d7b665f0bdfb593c/odoo8_addon_stock_scanner-8.0.1.0.0.99.dev8-py2-none-any.whl" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "1d405074eafb2d36acd601d2460d6ac3", "sha256": "97fcf1f560ef9eeb52571ae8ac679a58b99b80b1dedc01a783a76f3741deb8f3" }, "downloads": -1, "filename": "odoo8_addon_stock_scanner-8.0.1.0.0.99.dev36-py2-none-any.whl", "has_sig": false, "md5_digest": "1d405074eafb2d36acd601d2460d6ac3", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": "~=2.7", "size": 723904, "upload_time": "2019-08-31T04:31:28", "url": "https://files.pythonhosted.org/packages/fe/a1/2fbf832137643b0e25431debd04fecdff261d03421d32456dd7b88ec9c43/odoo8_addon_stock_scanner-8.0.1.0.0.99.dev36-py2-none-any.whl" } ] }