{"id":20065810,"url":"https://github.com/inflectra/rapise-dynamics-nav","last_synced_at":"2025-03-02T10:44:18.751Z","repository":{"id":98238390,"uuid":"243225204","full_name":"Inflectra/rapise-dynamics-nav","owner":"Inflectra","description":"Framework for testing Dynamics NAV","archived":false,"fork":false,"pushed_at":"2020-11-24T17:08:07.000Z","size":467,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-03-01T18:42:44.503Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Inflectra.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-02-26T09:39:27.000Z","updated_at":"2020-11-24T17:08:10.000Z","dependencies_parsed_at":"2023-03-13T16:04:06.614Z","dependency_job_id":null,"html_url":"https://github.com/Inflectra/rapise-dynamics-nav","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Inflectra%2Frapise-dynamics-nav","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Inflectra%2Frapise-dynamics-nav/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Inflectra%2Frapise-dynamics-nav/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Inflectra%2Frapise-dynamics-nav/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Inflectra","download_url":"https://codeload.github.com/Inflectra/rapise-dynamics-nav/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":241494142,"owners_count":19971870,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-13T13:52:52.120Z","updated_at":"2025-03-02T10:44:18.715Z","avatar_url":"https://github.com/Inflectra.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Overview\n\nFramework for testing Dynamics NAV 2017-2018 RoleTailored Client.\n\n- Reusable functions are defined in `User.js`.\n- `Dropdowns.xlsx` contains lists of values for RVL dropdowns.\n- `Output.xlsx` is used to persist data between test executions.\n\nData for each test case is defined in `Data100.xlsx` and `Data110.xlsx`.\n\n- `Data100.xlsx` is used for execution on Dynamics 2017 NAV demo instance.\n- `Data110.xlsx` is used for execution on Dynamics 2018 NAV demo instance.\n\n`TestInit` function located in `User.js` contains the lines that copy correponsing data file to `Data.xlsx`.\n\n```javascript\nif (NavVersion() == 110)\n{\n    g_helper.Copy(\"Data110.xlsx\", \"Data.xlsx\");\n}\nelse\n{\n    g_helper.Copy(\"Data100.xlsx\", \"Data.xlsx\");\t\n}\n```\n\nThe way of test parameterization and reading data from an Excel spreadsheet is described in the knowledge base:\n\n[Data-driven testing with spreadsheets and RVL](https://www.inflectra.com/Support/KnowledgeBase/KB357.aspx)\n\n## Common Functions\n\nAll functions are defined in `User.js`. Look into this file for details.\n\n**Note:** If you are on Rapise 6.6+ you may use global `Nav` object.\n\n![Global Object](Media/Nav.png)\n\nEvery function with `Nav` prefix is now also an action of `Nav` (without the prefix). These two variants are equavalent:\n\n![Equivalents](Media/FunctionNav.png)\n\n### NavLaunch\n\nLaunches Dynamics NAV desktop client and waits for it to show up on screen.\n\n![NavLaunch RVL](Media/NavLaunch.png)\n\n### NavVersion\n\nReturns NAV version (2017 - 100, 2018 - 110).\n\n### NavClose\n\nCloses Dynamics NAV desktop client.\n\n### NavChangeCompany\n\nChanges current company. Specify name of a company to open.\n\n![NavChangeCompany RVL](Media/NavChangeCompany.png)\n\nThis function automatically opens Select Company dialog, selects a company and closes the dialog.\n\n![ChangeCompany RVL](Media/ChangeCompany.png)\n\n### NavNavigate\n\nNavigates to a specific page using address bar.\n\n![NavNavigate RVL](Media/NavNavigate.png)\n\nThis function clicks in the address area, enters a page address and hits enter key.\n\n![Navigate RVL](Media/Navigate.png)\n\n### NavFilterGrid\n\nApplies a filter to table data.\n\n![NavFilterGrid RVL](Media/NavFilterGrid.png)\n\nThis function enters a filter value, then selects a field for filtering and clicks the filter button.\n\n![FilterGrid RVL](Media/FilterGrid.png)\n\n### NavSelectFastTab\n\nSelects Fast Tab with a given name.\n\n![NavSelectFastTab RVL](Media/NavSelectFastTab.png)\n\nThis function expands a given tab and scrolls to it if necessary.\n\n![SelectFastTab RVL](Media/SelectFastTab.png)\n\n### NavMaximizeWindow\n\nMaximizes window with a given object.\n\n![NavMaximizeWindow RVL](Media/NavMaximizeWindow.png)\n\n### NavMakeFileName\n\nBuilds full file path.\n\n![NavMakeFileName RVL](Media/NavMakeFilename.png)\n\n### NavPrintPdf\n\nPrints/saves document to PDF into OutputFiles folder. \n\n![NavPrintPdf RVL](Media/NavPrintPdf.png)\n\nOpen this dialog before calling the function. It opens menu Print... \u003e PDF and then enters the file name and presses ncessary buttons to do the job.\n\n![PrintPdf RVL](Media/PrintPdf.png)\n\n### NavAddColumns\n\nEnsures that specific columns are visible. When you call this function the grid should be visible on screen.\n\n![NavAddColumns RVL](Media/NavAddColumns.png)\n\nThis function righ clicks the grid and selects Choose Columns... menu item. Then adds necessary columns and clicks OK button.\n\n![Columns RVL](Media/Columns.png)\n\n### NavRemoveColumns\n\nEnsures that specific columns are NOT visible. When you call this function the grid should be visible on screen.\n\n![NavRemoveColumns RVL](Media/NavRemoveColumns.png)\n\nThis function righ clicks the grid and selects Choose Columns... menu item. Then removes necessary columns and clicks OK button.\n\n### SetOutputValue\n\nWrites key/value pair to Output.xlsx\n\n![SetOutputValue RVL](Media/SetOutputValue.png)\n\n### GetOutputValue\n\nReads value from Output.xlsx\n\n![GetOutputValue RVL](Media/GetOutputValue.png)\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Finflectra%2Frapise-dynamics-nav","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Finflectra%2Frapise-dynamics-nav","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Finflectra%2Frapise-dynamics-nav/lists"}