npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

@petarmihaylov/node-raas

v0.0.20

Published

A tiny library and CLI for interacting with the Reports as a Service - RAAS - API from UKG - Ultimate Kronos Group. This project is maintained by the team behind RaasTastic and the community. It provides a balanced set of features that should suit a broad

Downloads

26

Readme

node-raas

A tiny library and CLI for interacting with the Reports as a Service (RAAS) API from UKG (Ultimate Kronos Group) to pull reports without parameters. NOTE: Not published nor supported by UKG.

oclif Version CircleCI Downloads/week License

Usage

$ npm install -g @petarmihaylov/node-raas
$ node-raas COMMAND
running command...
$ node-raas (--version)
@petarmihaylov/node-raas/0.0.19 linux-x64 node-v16.13.0
$ node-raas --help [COMMAND]
USAGE
  $ node-raas COMMAND
...

Commands

node-raas autocomplete [SHELL]

display autocomplete installation instructions

USAGE
  $ node-raas autocomplete [SHELL] [-r]

ARGUMENTS
  SHELL  shell type

FLAGS
  -r, --refresh-cache  Refresh cache (ignores displaying instructions)

DESCRIPTION
  display autocomplete installation instructions

EXAMPLES
  $ node-raas autocomplete

  $ node-raas autocomplete bash

  $ node-raas autocomplete zsh

  $ node-raas autocomplete --refresh-cache

See code: @oclif/plugin-autocomplete

node-raas console

Quickly test reports and access with this interactive console pulling data from a BI report through Reports as a Service (RAAS).

USAGE
  $ node-raas console [-h] [-u <value>] [-p <value>] [-c <value>] [-a <value>] [-e
    servicet.ultipro.com|service2.ultipro.com|service3.ultipro.ca|service4.ultipro.com|service5.ultipro.com|rental2.ulti
    pro.com|rental3.ultipro.ca|rental4.ultipro.com|rental5.ultipro.com] [-v] [--console]

FLAGS
  -a, --userApiKey=<value>        A 12-character alpha-numeric key for the provided username from UKG Pro > MENU >
                                  SYSTEM CONFIGURATION > Security > Service Account Administration.
  -c, --customerApiKey=<value>    A 5-character alpha-numeric key from UKG Pro > MENU > SYSTEM CONFIGURATION > Security
                                  > Service Account Administration.
  -e, --baseEndpointUrl=<option>  Base endpoint URL from UKG Pro > MENU > SYSTEM CONFIGURATION > Security > Web
                                  Services. Do not include the protocol (https://).
                                  <options: servicet.ultipro.com|service2.ultipro.com|service3.ultipro.ca|service4.ultip
                                  ro.com|service5.ultipro.com|rental2.ultipro.com|rental3.ultipro.ca|rental4.ultipro.com
                                  |rental5.ultipro.com>
  -h, --help                      Show CLI help.
  -p, --password=<value>          Password for the provided username.
  -u, --username=<value>          Username of user or service account. Employee user is required for pulling UKG Time
                                  Management data.
  -v, --verbose                   Output raw request/response combination for failing requests.
  --console

DESCRIPTION
  Quickly test reports and access with this interactive console pulling data from a BI report through Reports as a
  Service (RAAS).

EXAMPLES
  $ node-raas console

  $ node-raas console -e rental4.ultipro.com

See code: dist/commands/console.ts

node-raas help [COMMAND]

display help for node-raas

USAGE
  $ node-raas help [COMMAND] [--all]

ARGUMENTS
  COMMAND  command to show help for

FLAGS
  --all  see all commands in CLI

DESCRIPTION
  display help for node-raas

See code: @oclif/plugin-help

node-raas pull REPORTPATHORID

Pull data from a BI report through Reports as a Service (RAAS).

USAGE
  $ node-raas pull [REPORTPATHORID] -u <value> -p <value> -c <value> -a <value> -e
    servicet.ultipro.com|service2.ultipro.com|service3.ultipro.ca|service4.ultipro.com|service5.ultipro.com|rental2.ulti
    pro.com|rental3.ultipro.ca|rental4.ultipro.com|rental5.ultipro.com [-h] [-l] [-v]

ARGUMENTS
  REPORTPATHORID  Report path or ID from Cognos (BI). Obtained by inspecting Properties of a BI report. (Right-click >
                  Properties > General > Advanced > [Search path | ID].)

FLAGS
  -a, --userApiKey=<value>        (required) A 12-character alpha-numeric key for the provided username from UKG Pro >
                                  MENU > SYSTEM CONFIGURATION > Security > Service Account Administration. If using an
                                  Employee User use the User API Key from UKG Pro > MENU > SYSTEM CONFIGURATION >
                                  Security > Web Services.
  -c, --customerApiKey=<value>    (required) A 5-character alpha-numeric key from UKG Pro > MENU > SYSTEM CONFIGURATION
                                  > Security > Service Account Administration or Web Services.
  -e, --baseEndpointUrl=<option>  (required) Base endpoint URL from UKG Pro > MENU > SYSTEM CONFIGURATION > Security >
                                  Web Services. Do not include the protocol (https://).
                                  <options: servicet.ultipro.com|service2.ultipro.com|service3.ultipro.ca|service4.ultip
                                  ro.com|service5.ultipro.com|rental2.ultipro.com|rental3.ultipro.ca|rental4.ultipro.com
                                  |rental5.ultipro.com>
  -h, --help                      Show CLI help.
  -l, --printCreds                Print the credentials. Useful when ensuring flag input is processed correctly. As a
                                  best practice, credentials should be surrounded in double-quotes and any special
                                  characters for your conssole escaped. (Ex: ! should be \! in bash.)
  -p, --password=<value>          (required) Password for the provided username. Be sure to escape any special
                                  characters for your command line. (Ex: ! should be \! in bash shells.)
  -u, --username=<value>          (required) Username of user or service account. Employee User is required for pulling
                                  UKG Time Management data.
  -v, --verbose                   Output raw request/response combination for failing requests.

DESCRIPTION
  Pull data from a BI report through Reports as a Service (RAAS).

EXAMPLES
  $ node-raas pull "i22500177CDE54018AC31713BEBE2F644" -u ServiceAccount -p "u(3Unv0ERjlaksdjf*jfa89wfjklj23j!@3j423j#OI@^j2342" -c B5JLX -a BB7VDK0000K0 -e rental4.ultipro.com

  $ node-raas pull "/content/folder[@name='zzzCompany Folders']/folder[@name='Eastwood Industries - Master SC(72)']/folder[@name='UltiPro']/folder[@name='Customs']/report[@name='Audit Report 2']" -u ServiceAccount -p "u(3Unv0ERjlaksdjf*jfa89wfjklj23j!@3j423j#OI@^j2342" -c B5JLX -a BB7VDK0000K0 -e rental4.ultipro.com

See code: dist/commands/pull.ts

node-raas ubirr

Displays information about Ubirr - a production-ready, feature-rich set of tools built on top of node-raas.

USAGE
  $ node-raas ubirr

DESCRIPTION
  Displays information about Ubirr - a production-ready, feature-rich set of tools built on top of node-raas.

See code: dist/commands/ubirr.ts

node-raas update [CHANNEL]

update the node-raas CLI

USAGE
  $ node-raas update [CHANNEL] [-a] [-v <value> | -i] [--force]

FLAGS
  -a, --available        Install a specific version.
  -i, --interactive      Interactively select version to install. This is ignored if a channel is provided.
  -v, --version=<value>  Install a specific version.
  --force                Force a re-download of the requested version.

DESCRIPTION
  update the node-raas CLI

EXAMPLES
  Update to the stable channel:

    $ node-raas update stable

  Update to a specific version:

    $ node-raas update --version 1.0.0

  Interactively select version:

    $ node-raas update --interactive

  See available versions:

    $ node-raas update --available

See code: @oclif/plugin-update

Use as a Library

import {
  config as nodeRaasConfig,
  RaasCredential,
  logOnAction,
  getReportParametersAction,
  executeReportAction,
  retrieveReportAction,
  logOffAction,
  decodeStream,
  saveStream,
  FileExportExtensions,
} from '@petarmihaylov/node-raas';

(async () => {
  const nodeRaasClients = await nodeRaasConfig('servicet.ultipro.com');
  const creds: RaasCredential = {
    UserName: 'service01',
    Password: '6Fm.fW9F3KZBEvQ+vS;n*IXlW',
    ClientAccessKey: 'V5JLA',
    UserAccessKey: 'BB4VDK0000K0',
  };
  const reportId =
    "/content/folder[@name='UltiPro Sample Reports']/folder[@name='Sample Reports']/folder[@name='Human Resources Reports']/report[@name='Active Employee Listing']";
  const logonResult = await logOnAction(nodeRaasClients, creds);
  const getReportParameters = await getReportParametersAction(
    nodeRaasClients,
    logonResult,
    reportId,
  );
  console.log(getReportParameters);
  const executeReportResult = await executeReportAction(
    nodeRaasClients,
    logonResult,
    reportId,
  );
  const retrieveReportResult = await retrieveReportAction(
    nodeRaasClients,
    executeReportResult,
  );

  if (!retrieveReportResult.hasErrors) {
    const reportStream = retrieveReportResult.result[0].ReportStream;
    const decodedStream = decodeStream(reportStream);
    await saveStream(decodedStream, 'report', FileExportExtensions.XML);
  }
  await logOffAction(nodeRaasClients, logonResult);
})();

Support for ENV variables and .env File

node-raas supports environmental variables. These can be set in an .env file placed alongside the node-raas executable, defined inline before calling node-raas or through a nother method - as long as they are available in your environment before node-raas is called.

node-raas uses the dotenv package with the default options. This means that if any of the variables in your .env file already exist in your environment, they will not be overridden. In such instances, you can call node-rass with the appropriate flags as they take precedence over Environmental Variable values.