none
В Report не появляется таблица после расширения инвентаризации RRS feed

  • Общие обсуждения

  • Добрый день!

    Для расширения инвентаризации SCCM 2007 были добавлены следующие строки в файлы sms_def.mof и configuration.mof:

    configuration.mof

    #pragma namespace ("\\\\.\\root\\cimv2")
    #pragma deleteclass("MicrosoftSecurityClient", NOFAIL)
    [DYNPROPS]
    Class MicrosoftSecurityClient
    {
    [key] string KeyName;
    String Market;
    String EnableManagement;
    String ProductName;
    Uint32 WmiSettingsApplied;
    String LastSuccessfullyAppliedPolicy;
    String LastSuccessfullyAppliedPolicyTimeUTC;
    };

    [DYNPROPS]
    Instance of MicrosoftSecurityClient
    {
    KeyName="MFEPPolicyApplied";
    [PropertyContext("Local|HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Microsoft Security Client|Market"),Dynamic,Provider("RegPropProv")] Market;
    [PropertyContext("Local|HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Microsoft Security Client|EnableManagement"),Dynamic,Provider("RegPropProv")] EnableManagement;
    [PropertyContext("Local|HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Microsoft Security Client|ProductName"),Dynamic,Provider("RegPropProv")] ProductName;
    [PropertyContext("Local|HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Microsoft Security Client|WmiSettingsApplied"),Dynamic,Provider("RegPropProv")] WmiSettingsApplied;
    [PropertyContext("Local|HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Microsoft Security Client|LastSuccessfullyAppliedPolicy"),Dynamic,Provider("RegPropProv")] LastSuccessfullyAppliedPolicy;
    [PropertyContext("Local|HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Microsoft Security Client|LastSuccessfullyAppliedPolicyTimeUTC"),Dynamic,Provider("RegPropProv")] LastSuccessfullyAppliedPolicyTimeUTC;
    };

    sms_def.mof

    #pragma namespace ("\\\\.\\root\\cimv2\\SMS")
    #pragma deleteclass("MicrosoftSecurityClient", NOFAIL)
    [SMS_Report(TRUE),SMS_Group_Name("MicrosoftSecurityClient"),SMS_Class_ID("Custom|MicrosoftSecurityClient|1.0")]
    Class MicrosoftSecurityClient: SMS_Class_Template
    {
    [SMS_Report(TRUE),key] string KeyName;
    [SMS_Report(TRUE)] String Market;
    [SMS_Report(TRUE)] String EnableManagement;
    [SMS_Report(TRUE)] String ProductName;
    [SMS_Report(TRUE)] Uint32 WmiSettingsApplied;
    [SMS_Report(TRUE)] String LastSuccessfullyAppliedPolicy;
    [SMS_Report(TRUE)] String LastSuccessfullyAppliedPolicyTimeUTC;
    };

    Построить запрос я могу, там MicrosoftSecurityClient появился. Но в report нет view v_GS_MicrosoftSecurityClient. В чем может быть проблема?

    p.s. Причем расширялось на сбор еще одного ключа реестра - он появился и в query и в report, данные собираются и отчет строится без вопросов




    22 июля 2013 г. 6:52

Все ответы

  • >>Но в report нет view v_GS_MicrosoftSecurityClient. В чем может быть проблема?<<

    После расширения SMS_Def.mof  вы пробовали его закомпилить?

    >>sms_def.mof<<

    [SMS_Report(TRUE)] String LastSuccessfullyAppliedPolicy;
    [SMS_Report(TRUE)] String LastSuccessfullyAppliedPolicyTimeUTC;

     Скорее всего это вызвано тем что:

    ErrorCode = 2168655106;
    ...................................

    ...............................

    SQLMessage = "[42000][50000][Microsoft][SQL Server Native Client 11.0][SQL Server]Duplicate short version of property name [LastSuccessfullyAppliedPolicy] found for property [LastSuccessfullyAppliedPolicyUTC] in spInsertInventoryClass : spInsertInventoryClass

    Вам крайне необходимо это время в UTC ? Я думаю нет,  выпилите из SMS_def.mof

    SMS_Report(TRUE)] String LastSuccessfullyAppliedPolicyTimeUTC;

    после этого все должно получиться:


    Примечание:Сообщения предоставляются "КАК ЕСТЬ" без каких-либо гарантий,выраженных или подразумеваемых | Note: Posts are provided “AS IS” without warranty of any kind, either expressed or implied

    22 июля 2013 г. 9:16
    Отвечающий
  • Да, закомпилить пробовал, ошибок нет.

    Данные собираются, если составлять запрос - все замечательно, отображается и LastSuccessfullyAppliedPolicy, и LastSuccessfullyAppliedPolicyTimeUTC.  

    Проблема в том, что в Reports нет view v_GS_MicrosoftSecurityClient. В представлениях действительно отсутствует, но MicrosoftSecurityClie_DATA в таблицах есть, прчием данными наполняется нормально.

    Все равно нужно выпилить из sms_def.mof?

    22 июля 2013 г. 9:41
  • Да, закомпилить пробовал, ошибок нет.

    Данные собираются, если составлять запрос - все замечательно, отображается и LastSuccessfullyAppliedPolicy, и LastSuccessfullyAppliedPolicyTimeUTC.  

    Проблема в том, что в Reports нет view v_GS_MicrosoftSecurityClient. В представлениях действительно отсутствует, но MicrosoftSecurityClie_DATA в таблицах есть, прчием данными наполняется нормально.

    Все равно нужно выпилить из sms_def.mof?

    У меня нет под рукой CM07 чтобы проверить, ради интереса я проверял на CM12, там нет SMS_def.mof, но можно импортнуть классы из mof файла.

    Так вот при импорте вылетала ошибка приведенная мною выше, вьюхи и таблицы не появлялись в БД, в описании ошибки явно написано что не так,  после того как я выпилил LastSuccessfullyAppliedPolicyTimeUTC из импортируемого mof все прошло без ошибок вьюхи добавились, скриншот я приводил выше.

    Почему это считается дубликатом, и вылетает ошибка импорта  - мне сложно сказать, честно не знаю, надо разбираться.

    Поэтому я у вас и спросил насколько для вас важно это время в UTC, просто по сути тоже время но про гринвичу, и можно его випилить.

    Если оно для вас крайне важно попробуйте изменить следующее

    configuration.mof

    PropertyContext("Local|HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Microsoft Security Client|LastSuccessfullyAppliedPolicyTimeUTC"),Dynamic,Provider("RegPropProv")]LastTimeUTC;
    };

    sms_def.mof

    [SMS_Report(TRUE)] String LastSuccessfullyAppliedPolicy;
    [SMS_Report(TRUE)] String LastTimeUTC;
    };


    Примечание:Сообщения предоставляются "КАК ЕСТЬ" без каких-либо гарантий,выраженных или подразумеваемых | Note: Posts are provided “AS IS” without warranty of any kind, either expressed or implied

    22 июля 2013 г. 10:26
    Отвечающий
  • Максим, я понял Ваше предложение, спасибо. Только вот один момент - классы в wmi добавились, наполняются нормально, SCCM собирает оттуда данные в таблицу MicrosoftSecurityClie_DATA без ошибок. Просмотреть через Query получается, проблема в том, что нет вьюхи в репортах. Мне кажется, что если бы была ошибка дубликатов - данные бы не собирались и таблица не наполнялась бы вовсе. или я не прав? а если вручную добавить представление, корректно будет отрабатывать?



    • Изменено iddqd_ 23 июля 2013 г. 6:09 корректировка
    23 июля 2013 г. 6:02
  • Сделал все как Вы написали - вьюхи не появляются( стоит ли попробовать создать его вручную?

    24 июля 2013 г. 7:23