MDT Web service - The data necessary to complete this operation is not yet available. (-2147483638 0x8000000A)

0

Long story short, we restored a bunch of servers and one of them was my WDS server. Everything seems OK except for the web service action that moves computer objects between OUs.

It's called twice in the task sequence; once at the beginning to move the object to a Staging OU and once at the end to move it back to the original OU. First call works great. Second call fails every time with this stupid error that doesn't really help me.

As far as I can see it's getting all the data it requires. Seems to fail just before it talks to the web service as I'm getting no logs to indicate activity. I'm certain the connection is fine because everything is on the same host. I've been googling this for a few days and nothing is relevant to me.

How can I resolve this error? Please see the info below:

CustomSettings.ini

[Settings] 
Priority=Default
Properties=MyCustomProperty, StagingOU, FinalOU, MachineObjectOU, ComputerAttributes, Computername, netbootGUID, ZENworksGUID, deploymentType

[Default]
SLShare=\\172.16.100.242\logs\TaskSequence\EndOfDeploy
SLShareDynamicLogging=\\172.16.100.242\logs\TaskSequence\Live

_SMSTSORGNAME=**** 
UserDataLocation=NONE 
ComputerBackupLocation=NETWORK 
AdminPassword=****
TimeZoneName=E. Australia Standard Time
FinishAction=REBOOT
WSUSServer=http://wsus.****:8530
EventService=http://172.16.100.242:9800

JoinDomain=****.****.****.****
DomainAdmin=****
DomainAdminPassword=****

StagingOU=LDAP://OU=Staging,DC=****,DC=****,DC=****,DC=****

BackupShare=\\172.16.100.242\DeploymentShare
BackupDir=Captures
BackupFile=%TaskSequenceID%_#month(date) & "-" & day(date) & "-" & year(date)#.wim

DoCapture=NO
OSInstall=Y 
HideShell=NO   
ApplyGPOPack=NO

SkipAdminPassword=YES 
SkipProductKey=YES 
SkipComputerName=YES 
SkipDomainMembership=YES 
SkipUserData=YES 
SkipLocaleSelection=YES 
SkipTimeZone=YES 
SkipApplications=YES 
SkipBitLocker=YES 
SkipSummary=YES 
SkipRoles=YES 
SkipCapture=YES
SkipFinalSummary=YES


[GetCurrentComputerName]
WebService=http://172.16.100.242/ADWebService/AD.asmx/GetComputerNameByNetbootGuid
Parameters=netbootGUID

[GetCurrentComputerOU]
WebService=http://172.16.100.242/ADWebService/ad.asmx/GetComputerParentPath
Parameters=Computername

[MoveComputerToOU]
WebService=http://172.16.100.242/ADWebService/AD.asmx/MoveComputerToOU
Parameters=OSDComputerName,MachineObjectOU
OSDComputerName=Computername
MachineObjectOU=OUPath

MoveComputerToTargetOU.wsf

<job id="MoveToTargetOU">
   <script language="VBScript" src="..\ZTIUtility.vbs"/>
   <script language="VBScript" src="..\ZTIDataAccess.vbs"/>
   <script language="VBScript">

' //***************************************************************************
' // ***** Script Header *****
' //
' // File:      MoveToTargetOU.wsf
' //
' // Purpose:   Move computer to OU specified in MDT by MachineObjectOU
' //
' // Usage:     cscript MoveToTargetOU [/debug:true]
' //
' //
' // Customer History:
' // 1    MK    01/18/2009  changed to use Webservice instead of AD Scripting
' // 2    MK    08/28/2009   Updated example Scripts for MDT 2010
' // 3    MK    04/08/2010   Rewrote Script to fit to MDT 2010 standard scripts
' //                         Added IniFile entry 
' //

' // ***** End Header ***** ' //***************************************************************************

Option Explicit
RunNewInstance

'//----------------------------------------------------------------------------
'//
'// Global constant and variable declarations
'//
'//---------------------------------------------------------------------------- 

Dim iRetVal 

'//----------------------------------------------------------------------------
'// End declarations
'//---------------------------------------------------------------------------- 

'//----------------------------------------------------------------------------
'//  Main Class
'//----------------------------------------------------------------------------

Class MoveToTargetOU

            '//----------------------------------------------------------------------------
            '//  Class instance variable declarations
            '//----------------------------------------------------------------------------

            ' No instance variables are required


            '//----------------------------------------------------------------------------
            '//  Constructor to initialize needed global objects
            '//----------------------------------------------------------------------------

            Private Sub Class_Initialize

                            ' No initialization is required

            End Sub


            '//----------------------------------------------------------------------------
            '//  Main routine
            '//----------------------------------------------------------------------------

            Function Main

        iRetVal = Success

        Dim oService, oXML, sResult, sFinalOU

                oLogging.CreateEntry "*** De-Staging: Start processing move to Final OU", LogTypeInfo

                ' Create the web service instance
                Set oService = new WebService

                oLogging.CreateEntry "*** De-Staging: Loading INI file and reading [MoveComputerToOU] section", LogTypeInfo

                oLogging.CreateEntry "*** De-Staging: Read INI section, now setting Environment Properties", LogTypeInfo

            oService.IniFile = "CustomSettings.ini"
                oService.SectionName = "MoveComputerToOU"

                ' ADsPath of the container object (OU) where you want to move the current PC to
                sFinalOU = oEnvironment.item("FinalOU")

                oLogging.CreateEntry "*** De-Staging: Setting MachineObjectOU to Final OU: " & sFinalOU, LogTypeInfo
                oEnvironment.item("MachineObjectOU") = sFinalOU
                oLogging.CreateEntry "*** De-Staging: Now making the web service call: ", LogTypeInfo

                ' Make the web service call
                Set oXML = oService.Query
                If oXML is Nothing then
                                oLogging.CreateEntry "*** De-Staging: Unable to call MoveComputerToOU web service.", LogTypeError
                                iRetVal = Failure
                Else
                                oXML.setProperty "SelectionNamespaces", "xmlns:mk='http://maikkoster.com/Deployment'"
                                sResult = UCase(oXML.SelectSingleNode("mk:boolean").Text)

                                If sResult <> "TRUE" then
                                    oLogging.CreateEntry "*** De-Staging: Move was not successful", LogTypeError
                                   iRetVal = Failure
                                Else
                                    oLogging.CreateEntry "*** De-Staging: Successfully moved Computer to target OU", LogTypeInfo
                                End If
                End if 

                            Main = iRetVal

            End Function

End Class

   </script>
</job>

BDD.log

Setting variable OSDCOMPUTERNAME to value WITDM001       ZTISetVariable   30/04/2018 8:08:07 AM 0 (0x0000)
Property OSDCOMPUTERNAME is now = WITDM001    ZTISetVariable   30/04/2018 8:08:08 AM 0 (0x0000)
ZTISetVariable processing completed successfully.       ZTISetVariable   30/04/2018 8:08:08 AM 0 (0x0000)
Event 41001 sent: ZTISetVariable processing completed successfully.  ZTISetVariable   30/04/2018 8:08:09 AM 0 (0x0000)
Setting variable OUPath to value LDAP://OU=StagingDev,DC=****,DC=****,DC=****,DC=****                ZTISetVariable   30/04/2018 8:08:09 AM 0 (0x0000)
Property OUPath is now = LDAP://OU=StagingDev,DC=****,DC=****,DC=****,DC=****           ZTISetVariable                30/04/2018 8:08:09 AM 0 (0x0000)
ZTISetVariable processing completed successfully.       ZTISetVariable   30/04/2018 8:08:09 AM 0 (0x0000)
Event 41001 sent: ZTISetVariable processing completed successfully.  ZTISetVariable   30/04/2018 8:08:10 AM 0 (0x0000)
Setting variable FinalOU to value LDAP://OU=StagingDev,DC=****,DC=****,DC=****,DC=****                ZTISetVariable   30/04/2018 8:08:10 AM 0 (0x0000)
Property FinalOU is now = LDAP://OU=StagingDev,DC=****,DC=****,DC=****,DC=****           ZTISetVariable                30/04/2018 8:08:10 AM 0 (0x0000)
ZTISetVariable processing completed successfully.       ZTISetVariable   30/04/2018 8:08:10 AM 0 (0x0000)
Event 41001 sent: ZTISetVariable processing completed successfully.  ZTISetVariable   30/04/2018 8:08:12 AM 0 (0x0000)

*** De-Staging: Start processing move to Final OU       MoveToTargetOU           30/04/2018 8:08:28 AM 0 (0x0000)
*** De-Staging: Loading INI file and reading [MoveComputerToOU] section     MoveToTargetOU           30/04/2018 8:08:28 AM        0 (0x0000)
*** De-Staging: Read INI section, now setting Environment Properties MoveToTargetOU           30/04/2018 8:08:28 AM         0 (0x0000)
Using specified INI file = \\172.16.100.242\DeploymentShare\Control\CustomSettings.ini          MoveToTargetOU                30/04/2018 8:08:28 AM 0 (0x0000)
CHECKING the [MoveComputerToOU] section MoveToTargetOU           30/04/2018 8:08:28 AM 0 (0x0000)
*** De-Staging: Setting MachineObjectOU to Final OU: LDAP://OU=StagingDev,DC=****,DC=****,DC=****,DC=****    MoveToTargetOU           30/04/2018 8:08:28 AM 0 (0x0000)
Property MachineObjectOU is now = LDAP://OU=StagingDev,DC=****,DC=****,DC=****,DC=****                MoveToTargetOU           30/04/2018 8:08:28 AM 0 (0x0000)
*** De-Staging: Now making the web service call:         MoveToTargetOU           30/04/2018 8:08:29 AM 0 (0x0000)
ZTI ERROR - Unhandled error returned by MoveToTargetOU: The data necessary to complete this operation is not yet available.
 (-2147483638  0x8000000A)   MoveToTargetOU           30/04/2018 8:08:29 AM 0 (0x0000)
Event 41002 sent: ZTI ERROR - Unhandled error returned by MoveToTargetOU: The data necessary to complete this operation is not yet available.
 (-2147483638  0x8000000A)   MoveToTargetOU           30/04/2018 8:08:30 AM 0 (0x0000)

Sorry if I've missed any info, and thanks for taking a look :)

EDIT: So it works absolutely fine in Windows PE, just not in regular windows. I don't know what I'm missing!

windows
iis
deployment
webservice-client
mdt
asked on Stack Overflow Apr 29, 2018 by TrippySquidsman • edited May 2, 2018 by TrippySquidsman

1 Answer

0

We resolved the issue. We needed to do two things: Reenter our authentication info in the ISS site and reapply file-level security filtering, this is stripped out when backups are made.

This can be confirmed through the 'Connect as...' and 'Test settings...' options found when editing the site application settings.

That being said, I still don't know why the web service worked in Windows PE but not in the regular OS... any insight would be much appreciated!

answered on Stack Overflow May 4, 2018 by TrippySquidsman

User contributions licensed under CC BY-SA 3.0