I have a few workstations with SCCM clients that didn't install correctly. Once uninstalled, and later re-installed, I can't get a hardware inventory from these workstations (windows 8). In the SCCM Console on the device's client activity, Policy Request, Heartbeat DDR, and Software Scan are all up to date. Hardware Scan remains blank. I have many other Windows 8 VMs that report accurate hardware inventory.
In the C:\Program Files\Microsoft Configuration Manager\Logs\dataldr.log, here are some of the errors:
ERROR - attempt to update non-existent row (sp = pWorkstationStatus_DATA). Invalid command:
exec dbo.pWorkstationStatus_DATA
~Cannot process MIF XXXXXXX.MIF
I've tried removing the client, deleting the client's C:\Windows\SMSCFG.ini file, and deleting the computer entry in the SCCM console. I then waited a few days, reinstalled the SCCM client on the problematic workstation, but I get the same result: Hardware Inventory date is blank, and errors in the dataldr.log.
I've also gone into the SQL database, and queried one of the problematic machines. There was no entry in System_DATA, System_DISC, or in WorkstationStatus_DATA. I started adding records in the database tables for one problematic machine, with the help of
the dataldr.log. Whenever there was a missing entry, I would add it. I gave up after the most recent:
ERROR - attempt to update non-existent row (sp = pBROWSER_HELPER_OBJECT_DATA). Invalid command:
exec dbo.pWorkstationStatus_DATA
I did another SCCM client uninstall, and delete the smscfg.ini. I changed the hierarchy settings for managing conflicting records to "Manually resolve conflicting records" just to *see* if anything appears. After several days, nothing appears in Monitoring\System Status\Conflicting Records.
Is there a hardware ID stored somewhere? How can fix this problem with the database?