12 Replies Latest reply on Apr 14, 2009 10:34 PM by puercomal

    Can I create just Custom Data Form fields at the inventory without asking user to input the answer?

    Employee

      Dear All,

       

      Can I create just Custom Data Form fields at the inventory without asking user to input the answer?

       

      What I would like to do is just to create those additional attribute at the inventory of the machine and have the LDMS admin input it instead of asking the users to do so. It is because I would like to store purchasing information which is not avilable to the end users. And at the same time, those purchasing information cannot be detected from the machines itself too.

       

      Thanks and regards,

      Winnie

        • 1. Re: Can I create just Custom Data Form fields at the inventory without asking user to input the answer?
          Employee

          One more question,

           

          During definition of the custom data form, is there anyway we can specify the data type? For example, some fields allows only integers and some fields are desiged at dates?

           

          Thanks and regards,

          Winnie

          • 2. Re: Can I create just Custom Data Form fields at the inventory without asking user to input the answer?
            MarXtar ITSMMVPGroup

            You can do this through the console without using a custom data form.  Open an inventory window and at the top you will see three buttons that you can use to insert new data at the level in the tree you have selected.  Your admins can enter data this way. It only exists in the database and is not accessible at the client-end.

             

            If you need your admins to enter this information when configuring the machine without access to the console, then create something that will populate the custom fields section of the registry.  A simple forms app should do the trick if you have someone with basic programming skills available to you.

             

            Mark Star - MarXtar LANDesk Enhancements

            Home of Power State Notifier & Wake-On-WAN for LANDesk

            NEW - Power State Notifier Pro has been released!

            • 3. Re: Can I create just Custom Data Form fields at the inventory without asking user to input the answer?
              Apprentice

              Let's see if I can answer both of your questions without making your (and my) head spin :

               

              Yes you can have custom data without the use of forms.  On the client, all of the data that is inserted into a form is written to a file called ldcustom.dat.  When the inventory scanner runs, it checks the ldcustom.dat file and adds the information in it to the data it sends to the core.  You add data to the ldcustom.dat using the notation similar to the dotted database notation used in provisioning or OSD. Example:

               

              If you want to add a subtree at the custom data folder MYCOMPANY, with an attributed called NAME, your LDCUSTOM.DAT file should read as follows:

               

              MYCOMPANY - NAME = MyCompany Inc.

               

              You can write all sorts of little procedures and the likes to write data directly to the ldcustom.dat.  There is a tool floating around here called  regtoinv which uses the underlying components of custom data forms to populate all of its data.  Note the need to have spaces on both sides of the delimeters (i.e. the - and ='s ).

               

              As far as specifying data types, you can't really do this.  The reason behind this largely based on how LANDesk stores custom data.  All data that comes from custom data forms (the module itself, since we've identified that you don't have to have a form per se) is stored in a table called unmodeleddata.  When LANDesk receives information from a machine that doesn't fit into its database schema it will toss it in the unmodeleddata table -- since this unmodeled data can be of any data type, the table allows virtually any type of information to be inserted.  IF you wanted to limit what was entered in the respective fields you'd have to write something to validate the data values before it hit the console or the database.

               

              Hope that helps~!

              • 4. Re: Can I create just Custom Data Form fields at the inventory without asking user to input the answer?
                zman Master

                In addition to Mark and Dave's good suggestions anything stored under:

                 

                HKLM\Software\Intel\Landesk\Inventory\Custom Fields
                

                 

                Is automagically picked up and stored in by the inventory scanner. All Custom Data in the registry is reg_sz and I believe limited to 255 chars. So there are some limitations.  There is a screenshot here to see what it looks like, http://community.landesk.com/support/docs/DOC-5323

                 

                IMO, I think writing to the registry is the easiest way to get custom data into LANDesk. You don't have to be a scripting wizard, and simple REG ADD, etc.. will do the trick.

                • 5. Re: Can I create just Custom Data Form fields at the inventory without asking user to input the answer?
                  Employee

                  FWIW, if you need to read reg_dword values or anything from HKCU, ldms_client can do that.

                  • 6. Re: Can I create just Custom Data Form fields at the inventory without asking user to input the answer?
                    Employee

                    Hi All,

                     

                    Thanks for all the information.

                     

                    MarXtar,I've got one more queston after reading your update. The admin feels OK to enter each machine's data manually in the console, however, it looks like each time when we press "New String" in the console, it created the field just for that particular machine. We need to repeat the "New String" process for all the affect machines, which is rather time consuming. And we need to make sure we do not type the attribute name wrong on each single device, or there would be problem in creating reports on the newly added field, right?

                     

                    So it feels like the best practice is still to try to get the information somewhere from the client machine? Even if we have some sort of CSV format file at the core server, it is still not easy to have it import to each single devices in the console?

                     

                    Thanks and regards,

                    Winnie

                    • 7. Re: Can I create just Custom Data Form fields at the inventory without asking user to input the answer?
                      Employee

                      Hi Zman,

                       

                      We are also looking for ways to pick up MS Office "Product ID" as well, which lead us to scan the registry values.

                       

                      By referring to MS web site, the Office 2007 Product ID (we just want to ID, not the license key) is store at,

                       

                      [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\12.0\Registration\{XXXXXXXX-XXXX-XXXX-XXXX-XXXXXX0FF1CE}]
                      "ProductID"="YYYYY-YYY-YYYYYYY-YYYYY"

                       

                      However, the "XXXXXXXX" string varies from different versions of Office 2007, so the subkey for storing the product ID changes from machine to machine due to different "edition and version" of Office 2007.

                       

                      When we try to update ldappl3.template for registry scanning, is there anyway we can do wildcard on the XXXXXXXXX string so that we can capture product ID of all edition and version of Office 2007?

                       

                      Thanks and regards,

                      Winnie

                      • 8. Re: Can I create just Custom Data Form fields at the inventory without asking user to input the answer?
                        phoffmann SupportEmployee

                        So - a couple of things then for all.

                         

                        1 - Yes you "can" enter the data directly through the 32-bit Console, but I would STRONGLY advise against it.

                         

                        For one, it's an absolute pain to enter the data this way, and you'd need to be 100% certain that you don't fat-finger as much as a single character of the attribute, otherwise you end up with something like:

                         

                        COMPUTER - MyValue - (blah)

                        COMPUTER - MyVAalue - (blah)

                        COMPUTER - MyVallue - (blah)

                         

                        If you use Oracle, case difference alone will be enough for a difference (i.e. - "MyValue" != "Myvalue") - singling out Oracle as SQL isn't usually configured to be case-sensitive, while oracle always is.

                         

                        2 - In a "worst case scenario" (i.e. - your DB blows up and your backups are pooched) - all this work is *GONE*. You have a massive, single point of failure that you're opening yourself up for.

                         

                        ====

                         

                        3 - It'd be FAR, far easier to use custom registry keys and read those in.

                         

                        You can use a VB-script (or so) to do the actually tricky part of collecting the data you want, and just throw that into "normal" and controlable registry locations.

                         

                        I.e. "MyOfficeThing" and so on.

                         

                        This has the benefit that this is purely automatic, so will be quite consistent -- no worry about mistyped characters.

                         

                        ===

                         

                        4 - You could even work this to a sophisticated system to be able to identify a post (what's my host name), reference a CSV file (or whatnot) on an open share, find the entries relevant to that device, and write them (in a set order) into specific registry keys.

                         

                        ===

                         

                        Generally, automation and CLIENT-side held information is BY FAR the better option. Since the worst case scenarios are catered for.

                         

                        - If your DB blows up, the data will be simply sent in the next scan, if you want.

                        - If you lose the client, you'll only loose a tiny fragment which is easily fixed.

                         

                        Paul Hoffmann

                        LANDesk EMEA Technical Lead

                        • 9. Re: Can I create just Custom Data Form fields at the inventory without asking user to input the answer?
                          Employee

                          Here are your realistic options: http://www.droppedpackets.org/misc/external-unmodeled-data

                           

                          Entering the data manually in the console is not one of them, as you're finding

                          • 10. Re: Can I create just Custom Data Form fields at the inventory without asking user to input the answer?
                            Employee

                            Winnie wrote:

                             

                            Hi Zman,

                             

                            We are also looking for ways to pick up MS Office "Product ID" as well, which lead us to scan the registry values.

                             

                            By referring to MS web site, the Office 2007 Product ID (we just want to ID, not the license key) is store at,

                             

                            [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\12.0\Registration\{XXXXXXXX-XXXX-XXXX-XXXX-XXXXXX0FF1CE}]
                            "ProductID"="YYYYY-YYY-YYYYYYY-YYYYY"

                             

                            However, the "XXXXXXXX" string varies from different versions of Office 2007, so the subkey for storing the product ID changes from machine to machine due to different "edition and version" of Office 2007.

                             

                            When we try to update ldappl3.template for registry scanning, is there anyway we can do wildcard on the XXXXXXXXX string so that we can capture product ID of all edition and version of Office 2007?

                             

                            Thanks and regards,

                            Winnie

                             

                            You can't wildcard, though it is something I'm considering for a future version of ldms_client. In the meantime, the product id value you want is actually already gathered by LANDesk Management Suite... I'm attaching a query that will show it to you. For product key, you'll have to use ldms_client.

                            1 of 1 people found this helpful
                            • 11. Re: Can I create just Custom Data Form fields at the inventory without asking user to input the answer?
                              Employee

                              Hi Jack,

                               

                              Thanks, I am able to get Product ID and Product Key by the method you mentioned!

                               

                              I understand that LANDesk is not going to give support on the produkey.exe tool as it is a 3rd party freeware. How about ldms_client tool? Will that be supported?

                               

                              Thanks and regards,

                              Winnie