Jump to content
MaxITGarrett

[C#] Inventory Product Import Tool from Excel

Recommended Posts

Our business operates with hundreds of products in our inventory and going through all of them and manually entering them into PSA was not exactly an option, and without an import function, I had to develop an import tool that uses the PSA API. I developed it originally with hard coded parameters, in a single class, but went back today and improved it for distribution to everyone here.

To view the source code, check out the repository at https://bitbucket.org/garrettbromley/pulseway-product-import/

To download the executable files, download PulsewayProductImport-v2.zip at https://bitbucket.org/garrettbromley/pulseway-product-import/downloads/

 

Instructions:

  • Download the Excel template and add your inventory into that sheet. I personally had a Microsoft Surface that I walked around with and inventoried everything.
    • To change the categories/sub categories, open the "Back End" tab on the sheet and edit those tables to your liking
    • The only column that isn't required is the UPC Code.
  • Run the Import Tool
  • Input your PSA credentials
  • Type in the full directory to the excel sheet (make sure its closed before running it)
  • Confirm the number of detected items
  • Watch the tool work
  • Make a stock adjustment with the levels of stock for each item (this unfortunately cannot be automated)
  • It will notify you how many items have successfully been imported and which ones failed (if any) and why.

 

Please let me know if you have any questions! I will post changelogs if any updates are made.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By Francis
      Hi,
      I think it misses the ability to monitor bandwidth on servers and users computers. It would be nice to have a history of several weeks and the services used.
    • By Finzsoft
      I am trying to upgrade some software using PowerShell and I am not sure if my parameters are correctly formatted .  See highlighted text
       
      # Silent Install Secure Secure Authentication
      # http://repository.eset.com/v1/com/eset/apps/business/esa/windows/v2/2.7.32.0/esa_nt64_enu.msi
      # Path for the workdir
      $workdir = "c:\scripts\"
      # Check if work directory exists if not create it
      If (Test-Path -Path $workdir -PathType Container)
      { Write-Host "$workdir already exists" -ForegroundColor Red}
      ELSE
      { New-Item -Path $workdir  -ItemType directory }
      # Download the installer
      $source = "http://repository.eset.com/v1/com/eset/apps/business/esa/windows/v2/2.7.32.0/esa_nt64_enu.msi"
      $destination = "$workdir\esa_nt64_enu_v2.msi"
      # Check if Invoke-Webrequest exists otherwise execute WebClient
      if (Get-Command 'Invoke-Webrequest')
      {
           Invoke-WebRequest $source -OutFile $destination
      }
      else
      {
          $WebClient = New-Object System.Net.WebClient
          $webclient.DownloadFile($source, $destination)
      }
      Invoke-WebRequest $source -OutFile $destination
      # Start the installation
      msiexec.exe /i "$workdir\esa_nt64_enu_v2.msi" ADDLOCAL="Credential_Provider" /qb /L*v "c:\esa_install_log.txt"
      # Wait XX Seconds for the installation to finish
      Start-Sleep -s 35
      # Remove the installer
      rm -Force $workdir\esa_nt64*
    • By Basil62
      Hello and good day. Is there any way for Pulseway to notify me when the monitored system reaches a specific % threshold of RAM or CPU usage?
    • By Wannes Vande Wiele
      Hello!

      Recently I've been experimenting a bit using scripts that contain variables that the user should enter.
      For example, a very simple one to shutdown a computer after X-amount of time: (example use-case:  I download large files during the night, so it doesn't count towards my ISP data-usage)

      @echo off
      set /p time=Enter time in seconds:
      shutdown /s /t %time%
      timeout /t 3 /NOBREAK
      exit

      however, upon executing said script, the app doesn't request for the variable to be filled out. (I guess it's not made for such uses)
      Obviously, i can manually enter the command using CMD, but i don't want to be typing the command every time i need it. (you can call me lazy :p)

      Any ideas how to do this correctly?
    • By dpbklyn
      Is there a way to kick off an automated task based on a notification or alert.  For Example, if we get a notification of a disk getting full, I would want the automation to run: 
      <Open a ticket>--> <add predetermined note>--> <add 15 minutes>--><run task to clean drive>--><send notification that task has completed>--><close ticket>
      Is this possible now, or should this be a feature request?
      Thank you,
      dp
×