Loading

If

Skip Feed
  1. Software reassignment between workstations
    We are facing the following situation:   We would like to get all the software that is installed on a particular computer 1 (Software Portal)   and reinstall them on another computer 2.   Thus, all software on computer 1 would be installed on computer 2 and removed from computer 1.   We use SCCM to have computers included in installation and uninstallation collections   for each service (Software).

    1 of 13
    • Complete the first step successfully.  From the implementation of the script to its execution inside the Snow portal. I would like to thank the support provided by colleagues.  In addition, the following question arose:  How to pass to the portal a list of software that the computer has installed. select A.NAME AS Software from tblApplication AS A left join tabCID_cf_a_1 AS B on a.ApplicationID = b.ElementID LEFT JOIN tblComputerApplications AS C ON C.ApplicationID = A.ApplicationID LEFT JOIN tblComputer AS D ON D.ComputerID = C.ComputerID left join tblApplicationStoreData as E on e.ApplicationID = a.ApplicationID LEFT JOIN [SnowAutomationPlatformDomain].[DBO].[services] as portal on portal.name = a.name where OperatingSystem in ('Microsoft Windows 7 Enterprise','Microsoft Windows 10 Enterprise') and [Software Específco] = 1 and IsInstalled = 1 and HostName ='"+$ResSComp.NetbiosName+"'" I created a PS Web Service that receives the name of the computer and performs this query, but I do not know how to use it in the portal. The idea is to show in the portal a list of software that will be installed on the next computer. Thanks again to all.
      Expand Post

  2. SCCM Collection Sync

    I would like to find a way to add computers to SCCM Collections based on the installation information found in SLM. We have a script that transfer collection information from one machine to another but were finding the collection information is not always populated. In short if a install of a product is found the Workflow would utilize the collection information populated in the Store data of SLM to then place the computer in that collection. Creating the SCCM Powershell is pretty simple but I'm struggling with collecting the data from SLM. Is there any way to use the API to provide what software is installed on a computer? I should be able to then take that data and query the API to capture the collection information of the application.

    Thanks

    Jerry

    Expand Post

    1 of 6
    • Oskar, Would there be away to add the discovered software from to the My Services information in the App Store? Basically I want the user to be able to see everything they have installed and be able to uninstall it whether or not they have requested the title through the App Store or they were placed in the SCCM collection manually. Jerry

  3. Run activity based on compliance info

    Hi,

    I would like to extend our default SLM AutomationBook workflow with a "run extra activity based on compliance info"

    1. software request by user via Snow AP

     

    2. SLM AP Workflows

     

    2.1 Wait for organizational approval (default workflow step)

     

    2.2 Organizational approval (default workflow step)

       - shows the approver the current compliance status

    2.3 If compliance status is negativ, run procurement workflow

       - procurement workflow is done, back to 2.2 and wait for final approval by organisation

    2.4 install application

    I want to add an intermediate step, if the compliance status is negative, then the approver should be able to start a procurement workflow. When the procurement workflow is complete, the approval workflow should go one.

    I would be pleased about suggestions for the implementation of my requirement.

    Thank and Best

    Mathias

    Expand Post

    • Community Manager (Flexera Software)

      Hi Mathias, With the (default) application owner approval step that shows the approver the compliance information, the application owner can initiate the procurement as needed before approving the request. If you want to automate the procurement as well that would remove the manual work of carrying it out, you would simply need to identify what activities that needs to be done and design that workflow before putting it in to action in Automation Platform. Regardless of if you automate the procurement process or notifies a group to have it done manually - one way to approach this is to add the extra step to the workflow (initiate procurement wf / notify group to procure). Then imake one (existing or new parameter) in the workflow visible to the approver (my tasks) that asks if new license needs to be procured. Use the Boolean toggle as input control and make it required so that a decision is needed by the approver. On the extra added step set the run condition to run if the Boolean toggle parameter above is true.  Depending on the complexity of the procurement process it might end up as part of this workflow or being a separate one.  One important thing to consider is that if users request software and are required to wait for several approvals and  until a procurement process has completed - risk is that they will not be very satisfied. It might seem like a good idea from a pure SAM perspective, but if the experience is to slow for the business, they will find new/other ways and the purpose is not achieved in the end. Just some thoughts.. Hope this helps! David
      Expand Post

  4. Another Powershell Question

    The Powershell below works great when I run it straight from Powershell and prompt for the inputs. However when I run inside of the App Store I get the following error. 

    Failed to run expression: . 'C:\Program Files\Snow Software\Snow Automation Platform\Activities\migrategroupmembership\2\migrategroupmembership.ps1' -identity 'CNCLCFZLHC2' -target 'STLVDBUS029'. Row number: 110. Error: Cannot validate argument on parameter 'MemberOf'. The argument is or empty. Provide an argument that is not or empty, and then try the command again.

    It appears to be passing the parameter but from some reason the MemborOf is but I don't get that error when I run manually.

    Thanks for you help!

    Jerry

    Param(

     

    $identity,

     

    $target

     

    )

     

    Function Get-MyModule

     

    {

     

    Param([string]$name)

     

    if(-not(Get-Module -name $name))

     

    {

     

    if(Get-Module -ListAvailable |

     

    Where-Object { $_.name -eq $name })

     

    {

     

    Import-Module -Name $name

     

    $true

     

    } #end if module available then import

     

    else { $false } #module not available

     

    } # end if not module

     

    else { $true } #module already loaded

     

    } #end function get-MyModule

     

    Function Get-GroupsToMigrate

     

    {

     

    Param($identity)

     

    $array = @()

     

    $groups = Get-AdComputer -Identity $identity -property “MemberOf”

     

    Foreach($group in $groups.memberOf)

     

    {

     

    #$reply = Read-Host -Prompt “add group $($group) `r`ny / n”

     

    #if($reply -match “y”) {$array +=$group}

     

    } #end foreach

     

    Return $array

     

    } #end Get-GroupsToMigrate

     

    # *** ENTRY POINT TO SCRIPT ***

     

    If(-not (Get-MyModule -name “ActiveDirectory”)) { exit }

     

    $array = Get-GroupsToMigrate -identity $identity

     

    Get-ADComputer -Identity $target | Add-ADPrincipalGroupMembership -MemberOf $array

    #testing making a change

    Expand Post

    • Community Manager (Flexera Software)

      Hi! I would try running the script logged in as the workflowengine account (or runas). It could be that your own account has permissions to read the memberOf property but the service account does not. //Joakim

End of Feed
4 Chatter Feed Items
ALL CONVERSATIONS
UNSOLVED
ARTICLES
4 Posts

Related Topics

    Loading
    If | Flexera