Using CAN-Objects

Hi, I have started  to learn LabVIEW and NI-CAN. Im using version 8.2.
I
have modified an example; now I have two transmit CAN-Objects and one receive CAN-Object.
I use the following configuration:
ncConfigCANNet->ncConfigCANObj
-> ncOpen -> ncWriteObj -> ncClose...    I get the Error (Hex 0x8ff6211d) behind the second ncOpen, which states that there is no Network-Interface-Object- or CAN-Object -Configuration and I already closed the object, which i wanted to open. But I doesn't.
can someone please tell me what am I doing wrong?
thanks a lot
Attachments:
test1.vi ‏37 KB

Hi,
The problem is the close behind the first object. It closes the Network Interface as well because no other object is open, thus there is no port configuration for the next two objects.
You have three options:  1. Close the first object with the next two objects together. See your modified VI.
2. Open the Network Interface handle and close it in the end.
3. Configure and open all objects together after the Port configuration.
Hope that helps.
DirkW
Attachments:
test_new.vi ‏40 KB

Similar Messages

  • I can't seem to get individual elements when comparing 2 arrays using Compare-Object

    My backup software keeps track of servers with issues using a 30 day rolling log, which it emails to me once a week in CSV format. What I want to do is create a master list of servers, then compare that master list against the new weekly lists to identify
    servers that are not in the master list, and vice versa. That way I know what servers are new problem and which ones are pre-existing and which ones dropped off the master list. At the bottom is the entire code for the project. I know it's a bit much
    but I want to provide all the information, hopefully making it easier for you to help me :)
    Right now the part I am working on is in the Compare-NewAgainstMaster function, beginning on line 93. After putting one more (fake) server in the master file, the output I get looks like this
    Total entries (arrMasterServers): 245
    Total entries (arrNewServers): 244
    Comparing new against master
    There are 1 differences.
    InputObject SideIndicator
    @{Agent= Virtual Server in vCenterServer; Backupse... <=
    What I am trying to get is just the name of the server, which should be $arrDifferent[0] or possibly $arrDifferent.Client. Once I have the name(s) of the servers that are different, then I can do stuff with that. So either I am not accessing the array
    right, building the array right, or using Compare-Object correctly.
    Thank you!
    Sample opening lines from the report
    " CommCells > myComCellServer (Reports) >"
    " myComCellServer -"
    " 30 day SLA"
    CommCell Details
    " Client"," Agent"," Instance"," Backupset"," Subclient"," Reason"," Last Job Id"," Last Job End"," Last Job Status"
    " myServerA"," vCenterServer"," VMware"," defaultBackupSet"," default"," No Job within SLA Period"," 496223"," Nov 17, 2014"," Killed"
    " myServerB"," Oracle Database"," myDataBase"," default"," default"," No Job within SLA Period"," 0"," N/A"," N/A"
    Entire script
    # things to add
    # what date was server entered in list
    # how many days has server been on list
    # add temp.status = pre-existing, new, removed from list
    # copy sla_master before making changes. Copy to archive folder, automate rolling 90 days?
    ## 20150114 Created script ##
    #declare global variables
    $global:arrNewServers = @()
    $global:arrMasterServers = @()
    $global:countNewServers = 1
    function Get-NewServers
    Param($path)
    Write-Host "Since we're skipping the 1st 6 lines, create test to check for opening lines of report from CommVault."
    write-host "If not original report, break out of script"
    Write-Host ""
    #skip 5 to include headers, 6 for no headers
    (Get-Content -path $path | Select-Object -Skip 6) | Set-Content $path
    $sourceNewServers = get-content -path $path
    $global:countNewServers = 1
    foreach ($line in $sourceNewServers)
    #declare array to hold object temporarily
    $temp = @{}
    $tempLine = $line.Split(",")
    #get and assign values
    $temp.Client = $tempLine[0].Substring(2, $tempLine[0].Length-3)
    $temp.Agent = $tempLine[1].Substring(2, $tempLine[1].Length-3)
    $temp.Backupset = $tempLine[3].Substring(2, $tempLine[3].Length-3)
    $temp.Reason = $tempLine[5].Substring(2, $tempLine[5].Length-3)
    #write temp object to array
    $global:arrNewServers += New-Object -TypeName psobject -Property $temp
    #increment counter
    $global:countNewServers ++
    Write-Host ""
    $exportYN = Read-Host "Do you want to export new servers to new master list?"
    $exportYN = $exportYN.ToUpper()
    if ($exportYN -eq "Y")
    $exportPath = Read-Host "Enter full path to export to"
    Write-Host "Exporting to $($exportPath)"
    foreach ($server in $arrNewServers)
    $newtext = $Server.Client + ", " + $Server.Agent + ", " + $Server.Backupset + ", " + $Server.Reason
    Add-Content -Path $exportPath -Value $newtext
    function Get-MasterServers
    Param($path)
    $sourceMaster = get-content -path $path
    $global:countMasterServers = 1
    foreach ($line in $sourceMaster)
    #declare array to hold object temporarily
    $temp = @{}
    $tempLine = $line.Split(",")
    #get and assign values
    $temp.Client = $tempLine[0]
    $temp.Agent = $tempLine[1]
    $temp.Backupset = $tempLine[2]
    $temp.Reason = $tempLine[3]
    #write temp object to array
    $global:arrMasterServers += New-Object -TypeName psobject -Property $temp
    #increment counter
    $global:countMasterServers ++
    function Compare-NewAgainstMaster
    Write-Host "Total entries (arrMasterServers): $($countMasterServers)"
    Write-Host "Total entries (arrNewServers): $($countNewServers)"
    Write-Host "Comparing new against master"
    #Compare-Object $arrMasterServers $arrNewServers
    $arrDifferent = @(Compare-Object $arrMasterServers $arrNewServers)
    Write-Host "There are $($arrDifferent.Count) differences."
    foreach ($item in $arrDifferent)
    $item
    ## BEGIN CODE ##
    cls
    $getMasterServersYN = Read-Host "Do you want to get master servers?"
    $getMasterServersYN = $getMasterServersYN.ToUpper()
    if ($getMasterServersYN -eq "Y")
    $filePathMaster = Read-Host "Enter full path and file name to master server list"
    $temp = Test-Path $filePathMaster
    if ($temp -eq $false)
    Read-Host "File not found ($($filePathMaster)), press any key to exit script"
    exit
    Get-MasterServers -path $filePathMaster
    $getNewServersYN = Read-Host "Do you want to get new servers?"
    $getNewServersYN = $getNewServersYN.ToUpper()
    if ($getNewServersYN -eq "Y")
    $filePathNewServers = Read-Host "Enter full path and file name to new server list"
    $temp = Test-Path $filePathNewServers
    if ($temp -eq $false)
    Read-Host "File not found ($($filePath)), press any key to exit script"
    exit
    Get-NewServers -path $filePathNewServers
    #$global:arrNewServers | format-table client, agent, backupset, reason -AutoSize
    #Write-Host ""
    #Write-Host "Total entries (arrNewServers): $($countNewServers)"
    #Write-Host ""
    #$global:arrMasterServers | format-table client, agent, backupset, reason -AutoSize
    #Write-Host ""
    #Write-Host "Total entries (arrMasterServers): $($countMasterServers)"
    #Write-Host ""
    Compare-NewAgainstMaster

    do not do this:
    $arrDifferent = @(Compare-Object $arrMasterServers $arrNewServers)
    Try this:
    $arrDifferent = Compare-Object $arrMasterServers $arrNewServers -PassThru
    ¯\_(ツ)_/¯
    This is what made the difference. I guess you don't have to declare arrDifferent as an array, it is automatically created as an array when Compare-Object runs and fills it with the results of the compare operation. I'll look at that "pass thru" option
    in a little more detail. Thank you very much!
    Yes - this is the way PowerShell works.  You do not need to write so much code once you understand what PS can and is doing.
    ¯\_(ツ)_/¯

  • Can we control Work center group links using auth object UIU_COMP

    Hello All,
    We are running into an issue while doing our PFCG role configuration.
    I need to know if we can control Work center group links in a business role through auth object UIU_COMP.
    We can control Workcenter's but not 'Work Center Group Links'.
    Here is what we did:
    - We have a business role Z_RA_DEFAULT.
    - The Nav Bar Profile SRV-PRO for this business role has some work center group links that are checked in menu and visible.
    - I'm trying to find the values in the auth object UIU_COMP to restrict Work center group links.
    - Even though the values Work center group links are in menu and visible,
    I want to remove these Work center group links from the screen using the auth object.
    - If we remove the check from in menu and visible in the business role the Work center group links disapper from the screen.
    Right now this is only way we are able to controle Work center group links.
    Question:
    - Can I use UIU_COMP to restrict Work center group links?
    - any another auth object that controle Work center group links?
    - any document/ website / info  available which tells us what can we restrict with auth object UIU_COMP?
    - or any other way of doing this... like code change, user exit, ....?
    Really appreciate your help.
    Thanks,
    Nasir

    I am not sure if I have understood the issue correctly, but still what stops you from actually creating a clone business role to your existing business role and deactivating the in menu visible work center group links. Use this new business role for users who need to be prevented from viewing the work center groups links in question.
    If you are going to use authorization objects to control the visibility wont it impact all users (still defeating your original purpose?)
    Again apologies in case I have got the question wrong.

  • Can I use C++ objects as Host variables in Pro*C++

    Hi,
    I have a C++ object in my Pro*C++ program. The objects has
    members representing all the fields of a oracle table record.
    e.g. For a table TEST_PRODUCT ( product_id, name),
    the C++ class is :
    class prd
    public:
    int id;
    char name[50];
    Can I use the Object of this class as a Host Variable ? In SQL
    select query , I want to directly fetch record into this object.
    When I declare this object within EXEC SQL BEGIN DECLARE SECTION
    and END DECLARE SECTION , it gives me compilation error.
    Is that supported by Pro*C++ ? If yes, how to do it?
    Pls help.
    Thanks

    I find it easier to decalre a local variable in the EXEC SQL
    block and then assign that to your class variable at the end of
    the statement. It makes it easy to check for nulls and db
    errors without affecting the C++ object.
    PT

  • Using ncAction to Start & Stop CAN objects

    Hello,
    I have to start and stop CAN Objects and I have unexpected results : if
    I set NC_ATTR_START_ON_OPEN to NC_TRUE in the interface configuration,
    everything works properly. Then if I set NC_ATTR_START_ON_OPEN to
    NC_FALSE, ncAction function does not work properly.
    I'm using NI-CAN v2.3.
    Here is a sample of my code.
    Any suggestion about that problem ?
    Attachments:
    CAN_ncAction.c ‏5 KB

    Hi JCX,
    I can reproduce your Problem. It seems that there is something wrong with the handles. We work to get it fixed, but it can take a little while.
    For the moment the workaround is to start the second Object (ncAction) before you try to Stop it. The new Start will fix  a kind of a handle problem, so you should be able to Stop the Object then.
    It should look like this then:
     // Start the network interface and CAN objects
      NiCANErrChkMsgPopup(ncAction (PortHandle, NC_OP_START, 0));  
      // Stop the Second Frame
      NiCANErrChkMsgPopup(ncAction (HdleSTD301, NC_OP_STOP, 0)); 
    // Start the  CAN object
      NiCANErrChkMsgPopup(ncAction (HdleSTD1495, NC_OP_START, 0));  
      // Stop the First Frame
      NiCANErrChkMsgPopup(ncAction (HdleSTD1495, NC_OP_STOP, 0));
    because the Stop cleanes the message queues, you have to write a new message to the write queue before any restart.
    hope that helps
    DirkW

  • How can i execute multiple database operations using multiple objects

    i have data in files which i need to read/parse and insert/update the database. can someone tell me how can i read multiple statements at a time and process using multiple objects.

    This doesn't seem like too much of a JDBC question or at least the answer as I see it isn't unique or specific to JDBC.
    If you want to run multiple processes within your single program then you need to use Java threads. I would recommend you read up on how to properly code Java threads and if you have questions unique to your multi-threaded JDBC implementation come back and ask those questions.
    You may also want tot take advantage of a transaction manager that includes a database connection pool that will handle most of the complexity for you. Depending on the flexibility of your architecture you may not have to do any thread coding at all when using a transaction manager.

  • I can't use remote object in Flex to save an image to the server.

    I have a situation where I can't use remote object in Flex to save an image to the server.
    Could someone help me with an alterntaive?
    private function doSave():void {
                    var bd:BitmapData = new BitmapData(canvas.width,canvas.height);
                    var pe:PNGEncoder = new PNGEncoder;
                    bd.draw(canvas);
                    var ba:ByteArray = pe.encode(bd);
                    myService.doUpload(ba,sIP);
        <cffunction name="doUpload" displayname="Save Signature" hint="Saves a PNG Signature" access="remote" output="false" returntype="any">
            <cfargument name="sigbytes" required="true" type="binary">
            <cfargument name="ip_suffix" required="true" type="string">
            <cfset myUUID =  RandomString('ABCDEFGHIJKLMNOPQRSTUVWXYZ',15)>
            <cfset name = expandPath("converted_pngs/signature_#arguments.ip_suffix#_#myUUID#.png")>
            <cffile action="write" file="#name#" output="#arguments.sigbytes#" />
        <cfset SigFileName = "#arguments.ip_suffix#_#myUUID#">
            <cfreturn SigFileName />
        </cffunction>

    Try assigning binary arg to <cfimage/> then save.

  • Attention!!-don't use OLE object in Reports

    If you are planning to use or is currently using OLE objects in Reports-please don't use it as the object maynot reload in future and your report may not even open in Report Builder.I got this message when opening the report containing OLE object:
    REP-4004: Error occurred while restoring OLE object
    and it refused to open up crashing my days of work.
    The pity is I can't open my report even to remove the OLE object.

    I know that is weird.I placed the object in the same directory-but in vain.Afterall, what's the logic of putting it in the same directory after embedding it?

  • How to use a object(in MXML - in FLEX 4) in multiple way.

    This is my object in MXML:
    <mx1:Canvas id="menuElement" visible="true" rotationY="-15">
         <mx1:Canvas mask="{imageMask}">
              <mx1:Image id="menuImage" visible="true"/>
              <s:BorderContainer id="menuBackground" width="70" visible="true"  borderVisible="false">
                    <s:Label id="menuDescription" fontSize="30" fontWeight="bold" rotation="-90" />
                        <s:backgroundFill>
                             <s:LinearGradient rotation="90">
                                  <s:entries>
                                       <s:GradientEntry  id="backgroundColor" color="0x000010" alpha="0.6"/>
                                  </s:entries>
                             </s:LinearGradient>
                        </s:backgroundFill>
                   </s:BorderContainer>
              </mx1:Canvas>
         <mx1:Canvas id="imageMask" backgroundColor="#FF0000"/>
    </mx1:Canvas>
    I use this object (one time) with configuration in actionscript (positions, source of picture etc.) and I receive something like on a picture below:
    Now, I need to create 4 elements like below. I don't wan't to copy 4 times this block of program. Anybody have idea how can I make it and how can
    I recall of each element from actionscript?
    Regards

    if you run nw04s SP8, it's a limitation. you can create your own simple types and use them in your entities. but the custom data structures you create in the dictionary don't show in list of available structures when you want to create a new complex attribute

  • How many users do you have using Busines Objects Enterprise?

    Post Author: hcso
    CA Forum: Deployment
    How many people did you first roll it out to and was it a difficult process?  I'm guessing there was training and documentation made available?
    Using:
    Business Objects Enterprise Release 2 SP2
    SQL Server 2000 Data Mart
    IIS
    .NET framework installed
    Crystal Reports XI R2
    Active Directory authentication
    Windows Server 2003 virtual machine
    Service Pack 2
    Intel 3 GHz
    1.02 GB RAM
    15 G hard drive
    Thank you!

    The sparsebundle will expand in size as required.. there is not set size.. when the hard disk is full then each TM should start deleting old backups. If you want to set a size for each backup then you will need to create a disk image.. but really TM can be left to look after this itself.
    http://pondini.org/TM/33.html

  • How to use Logger object in Lookout 5.0

    I am now trying to log data using Logger object. I use Switch1 for activating LogContinuously mode and Switch2  for breaking logging process. If I turn off Switch1, the logging process stops, its ok. My problem is if Switch1 is still on and I turn off Switch2, the logging process is still running. I seems different from what I have read from Help file. Anyone has the solution for it?Please give me an advice! Thanks a lot. Its better if someone post an example about using Logger object here for reference.
    Regards, 

    I think the behaviour you described is correct. If you turn on switch2, the logging process will stop, even when switch1 is on. If you turn off switch2, the process will be running.
    Here is an example of logger object.
    http://zone.ni.com/devzone/cda/epd/p/id/3816
    you can change the "log break" button into a switch, which can better show you how it works.
    Ryan Shi
    National Instruments

  • Using Multiple Object Types in a FIM Managed Criteria Distribution Group

    Is it possible to use multiple object types in a criteria based distribution group. So when building your criteria filter, "Select (object type) that match (all/any) of the following condiftions". Currently you can only choose 1 object type and
    I want to be able to choose object type "user" and a custom object type I create for my contacts 

    You can create main condition as "any" and later add two sub-conditions - one that object in set "All People" and other sub-condition that object in set "All Contacts" or "All Groups".
    If you found my post helpful, please give it a Helpful vote. If it answered your question, remember to mark it as an Answer.

  • Error while opening the application using semantic object method

    Hello ,
    We just got all the Wave 3 apps and SP08 versions on our Fiori server. While setting up the transnational applications , I am not able to open any app using semantic objects. if i put direct URL I can open the app.
    Error screen shots are :
    The Launchpad designer settings for create sales order app are :
    Please suggest the solution.
    The error is same for all the applications.
    Regards,
    Sheetal
    Tags edited by: Michael Appleby

    Hello Masa,
    Checked this note. Not able to resolve the issue. Can you please explain, for the application to work with Navigation and semantic object what all roles do we need to assign to the User?
    For create Sales Order :
    Component
    Technical Name
    Business Role
    SAP_SD_BCR_FIELDSALESREP_X1
    Business Catalog
    SAP_SD_BC_FIELDSALESREP_X1
    Business Catalog Group
    SAP_SD_BCG_FIELDSALESREP_X1
    Technical Role
    SAP_SD_BCR_FIELDSALESREP_X1
    Technical Catalog
    SAP_SD_TC_T_X1
    LPD_CUST Role
    UIX01SD
    LPD_CUST Instance
    TRANSACTIONAL
    OData Service (Version Number)
    Back-End Server: Delivered Authorization Role (PFCG Role)
    Front-End Server: Authorization Role
    SRA017_SALESORDER_CREATE_SRV
    SRA017:SAP_SD_SO_CRE_APP
    SAP_SD_BCR_FIELDSALESREP_X1
    My user id is assigned to three Roles :
    SAP_SD_BCR_FIELDSALESREP_X1
    SAP_SD_BCR_FIELDSALESREP_X1
    SRA017:SAP_SD_SO_CRE_APP
    Do I need to assign any other roles than these three?
    Regards,
    Sheetal

  • Unable to get the SharePoint 2013 List names using Client object model for the input URL

    Please can you help with this issue.
    We are not able to get the SharePoint 2013 List names using Client object model for the input URL.
    What we need is to use default credentials to authenticate user to get only those list which he has access to.
    clientContext.Credentials = Net.CredentialCache.DefaultCredentials
    But in this case we are getting error saying ‘The remote server returned an error: (401) Unauthorized.’
    Instead of passing Default Credentials, if we pass the User credentials using:
    clientContext.Credentials = New Net.NetworkCredential("Administrator", "password", "contoso")
    It authenticates the user and works fine. Since we are developing a web part, it would not be possible to pass the user credentials. Also, the sample source code works perfectly fine on the SharePoint 2010 environment. We need to get the same functionality
    working for SharePoint 2013.
    We are also facing the same issue while authenticating PSI(Project Server Interface) Web services for Project Server 2013.
    Can you please let us know how we can overcome the above issue? Please let us know if you need any further information from our end on the same.
    Sample code is here: http://www.projectsolution.com/Data/Support/MS/SharePointTestApplication.zip
    Regards, PJ Mistry (Email: [email protected] | Web: http://www.projectsolution.co.uk | Blog: EPMGuy.com)

    Hi Mistry,
    I sure that CSOM will authenticate without passing the
    "clientContext.Credentials = Net.CredentialCache.DefaultCredentials" by default. It will take the current login user credentials by default. For more details about the CSOM operations refer the below link.
    http://msdn.microsoft.com/en-us/library/office/fp179912.aspx
    -- Vadivelu B Life with SharePoint

  • 'The logged-on user does not have permission to use this object'

    Hello everyone,
    I am getting the message 'The logged-on user does not have permission to use this object' while saving the Sales Order. I am logging in as a CRM user. There is an addon also running on the server, that saves some data into a user defined table when the Sales Order is saved. Is there any authoisation for users to access user defined tables.
    Regards,
    William

    hi William,
    this is an Authorization issue. provide the user with authorization on your UDT. Definition of user authorization can be found in Administration -- >> System Initialization -->> Authorizations -->> Additional Authorization Creator.... if already defined from here you can fined the additional authorization from the General authorization window.
    regards,
    Fidel

Maybe you are looking for