Moving from CVI to LabVIEW is not a trivial task: while most functions are similar (same algorithms, similar input / output parameters...) the overall structure of applications is quite different and must be taken into consideration to avoid problems.
With this I mean that LV is intrinsically a parallel execution architecture: while in CVI multithreading must be explicitly programming, under some circumstances every single node in LabVIEW can be executed independently from the others. Crucial in this respect is the concept of dataflow programming: a VI can be executed at any time when (but only when) all its inputs are ready. With this I mean: to sequence the execution of several VIs you must have at least a wire that comes from one logical step to the next one (the error cluster wire is very useful in this respect but is not necessarily the only one).
Parallel execution is powerful but can be a hassle if you don't consider it carefully while developing a complex application.
I suggest you to run through some getting started document to familiarize with basic concepts and then find some literature (the panorama is huge!) on the special aspects you need to face in your application.