Quantcast
Channel: Active questions tagged python - Stack Overflow
Viewing all articles
Browse latest Browse all 23131

Not all objects are found in a "SELECT" command

$
0
0

I have this function that do a "SELECT" query to find computers in SCCM. I do get get some objects, but not all computers are found, even that I can see them in the SCCM console. I don't get any errors only that some of the objects are not found.

What could be the issue?

def main(file_path, search_value):    # Load the Excel workbook    wb = load_workbook(file_path)    # Select the active worksheet    ws = wb.active    # Define wmi_service with a default value of None    wmi_service = None    try:        # Connect to WbemScripting.SWbemLocator        locator = win32com.client.Dispatch("WbemScripting.SWbemLocator")        # Connect to WMI namespace on the remote computer        # Use .ConnectServer for a local connection        wmi_service = locator.ConnectServer(sServerName, r'root\SMS\site_'+ sSiteCode)    except Exception as e:        print("An error occurred:", e)    finally:            # Create an empty list to store the data from column A        Excel_list = []        # Iterate through the rows in column A starting from row 2        for row in range(2, ws.max_row + 1):            cell_value = ws['A'+ str(row)].value            if cell_value is not None:                Excel_list.append(cell_value)        # Find elements in AD not present in Excel        not_in_Excellist = list(set(search_value) - set(Excel_list))        if wmi_service is not None:            for computername in not_in_Excellist:            # Query some information from WMI                query = f"SELECT * FROM SMS_G_System_COMPUTER_SYSTEM Where Name='{computername}'"                results = wmi_service.ExecQuery(query)                if results:                    for item in results:                        if item.ResourceId != 0:                            query = f"SELECT * FROM SMS_G_System_PC_BIOS Where RESOURCEID='{item.ResourceId}'"                            results = wmi_service.ExecQuery(query)                            for item in results:                                print("Name:", computername)                                print("SerialNumber:", item.SerialNumber)                else:                    print(computername +" not found in SCCM.")        else:            print("Failed to connect to SCCM namespace.")

Viewing all articles
Browse latest Browse all 23131

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>