Solved

Debugging a PowerShell Simple Code

Posted on 2012-04-09
2
407 Views
Last Modified: 2012-04-10
Hi Experts,

This is my first time writing a powershell script. So, I really need some help here.
Below code is a very simple code to write a new record into a list. But I am getting the following error

"Cannot index into a null array.
At D:\Batch Jobs\PowerShell Scripts\test.ps1:8 char:59
+ $root.lists.add("CTest","Custom Test",$root.listtemplates[ <<<< "Custom List"])
    + CategoryInfo          : InvalidOperation: (Custom List:String) [], RuntimeException
    + FullyQualifiedErrorId : NullArray"


Can advise what could the possible problem for the error?


[system.reflection.assembly]::LoadWithPartialName("Microsoft.Sharepoint")

# Connect to the site collection
$site = New-Object Microsoft.SharePoint.SPSite("http://sharepoint.apb.com.sg/gmis/ec")
$web     =    $site.rootweb
$list    =    $web.Lists["Email Convertor Service Check"]

$newitem =    $list.items.Add()
$newitem["Date"]=    "4/10/2012";                                                                                          
$newitem["Result"] =    "Email Converter Service Stopped";                                                                                          
 
$newitem.update() 
 
$web.Dispose()
$site.Dispose() 

Open in new window

0
Comment
Question by:NicksonKoh
2 Comments
 
LVL 17

Author Comment

by:NicksonKoh
ID: 37826345
Hi Expert,

I realise my mistake is in the following 3 lines of code

$site = New-Object Microsoft.SharePoint.SPSite("http://sharepoint.apb.com.sg/gmis/ec")
$web     =    $site.rootweb
$list    =    $web.Lists["Email Convertor Service Check"]

$web changes the pointer to go to the rootweb but
my "Email Converter Service Check" is a custom list in $site

What should I change such that the list should be pointing to $site and not the rootweb.
0
 
LVL 18

Accepted Solution

by:
ivan_vagunin earned 500 total points
ID: 37826428
Hi!
Try to use $web = $site.OpenWeb("/") instead of $web = $site.rootweb.
What do you mean saying list should be pointint to $site?
0

Featured Post

Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Synchronize a new Active Directory domain with an existing Office 365 tenant
Create and license users in Office 365 in bulk based on a CSV file. A step-by-step guide with PowerShell script examples.
In this video I am going to show you how to back up and restore Office 365 mailboxes using CodeTwo Backup for Office 365. Learn more about the tool used in this video here: http://www.codetwo.com/backup-for-office-365/ (http://www.codetwo.com/ba…
Video by: Mark
This lesson goes over how to construct ordered and unordered lists and how to create hyperlinks.

920 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

16 Experts available now in Live!

Get 1:1 Help Now