Talking about SQL Tunning or SQL Optimization, your query is almost inadecuate because the comparasion values in the select subqueries are calculated once (with the first record) then used for the other records, resulting in null values.
Your calculation involves counting or summing data from tables depending on the current value of the tblIn record.
To do so, I will recommend to create an stored procedure that will create a temp table, then fill it in with the necessary records and return the content from this table.
In order to fill the temp table, you can use a cursor to navigate the tblIn inner joined to tblCompany twice with alias C1 and C2 to obtain the shipper and the carier, and to tblUser to obtain the user full name, and, for each recor retrieved,
* Create/clear the temp variables CountOfInventoryDetail, CountOfWrongRa and SumOfInBulk
* do the select from the tblInventory detail and store the count in a variable CountOfInventoryDetail,
* do the select from the tblWrongRA and store the result in a variable CountOfWrongRa
* do the select from the tblInBulk and store the result in a variable SumOfInBulk
Then insert into the temp table the required values, including the sum of the 3 temp variables. Be aware that some of them can result in null, so try to use of the ISNULL function to return a 0 in case of null.
Once retrieved all records, close the cursor and do a SELECT from your temp table.
Once the stored procedure is created, you can call it from your application using the expresion "EXECUTE MyStoredProcedureName" and issuing an ExecuteQuery or equivalent.
Hope this helps.