PL/SQL Prob in Report
Hi,
I have a question re: Cursors. Can you reference the previous and next cursor record in FOR loops?
I have two data, value (either 1 or 0) & time the value was recorded. I need to determine x = sum(length of time the value was 1). Ex.
v1 = 1; t1 = 1
v2 = 1; t2 = 2.2
v3 = 0; t3 = 2.7
v4 = 1; t4 = 3
v5 = 1; t5 = 3.5
x = (t2 - t1) + (t5 - t4)
I was thinking of using a cursor to select the values and time and then using a LOOP
FOR curr_rec IN cursor1 LOOP
IF (curr_rec.value = 1 and prev_rec.value <> 1) THEN
v_start_time := curr_rec.time;
ELSE
v_start_time := v_start_time;
IF (curr_rec.value = 1 and next_rec.value <> 1) THEN
v_end_time := curr_rec.time;
v_diff_time := v_end_time - v_start_time;
v_total_time := v_total_time + v_diff_time;
END LOOP;
I need to know how do i declare prev_rec and next_rec.
Is there a better way to get the desired results?
Thanks !
null
E,
Define cursor and populate all the records in to PL/SQL table and in PL/SQL table you can refer next and previous records - PL/SQL table is noting but array in C
Good luck
Similar Messages
-
Can we use Dynamic SQL in Oracle Reports ?
Hi ,
Can we use Dynamic SQL in Oracle Reports ?
If yes please give some examples .
Thanx
sriniI believe the built-in package SRW.Do_Sql is what you are looking for
Example from the document:
/* Suppose you want to create a "table of contents" by getting the
** first character of a columns value, and page number on which its
** field fires to print. Assume that you want to put the "table of
contents"
** into a table named SHIP. You could write the following construct:
DECLARE
PAGE_NO NUMBER;
PAGE_FOR INDEX NUMBER;
SORT_CHAR CHAR(1);
CMD_LINE CHAR(200);
BEGIN
SORT_CHAR := :SORT_NAME ;
IF :CALLED = Y THEN
SRW.GET_PAGE_NUM(PAGE_FOR_INDEX);
SRW.USER_EXIT(RWECOP PAGE_FOR_INDEX
P_START_PAGENO);
SRW.MESSAGE(2,TO_CHAR(:P_START_PAGENO));
END IF;
SRW.GET_PAGE_NUM(PAGE_NO);
CMD_LINE := INSERT INTO SHIP VALUES
(||SORT_CHAR||,||TO_CHAR(PAGE_NO)||);
SRW.MESSAGE(2,CMD_LINE);
SRW.DO_SQL(CMD_LINE);
COMMIT;
EXCEPTION
WHEN DUP_VAL_ON_INDEX THEN
NULL;
WHEN SRW.DO_SQL_FAILURE THEN
SRW.MESSAGE(1,FAILED TO INSERT ROW INTO SHIP TABLE);
WHEN OTHERS THEN
COMMIT;
END; -
PL/SQL Ad-hoc Reporting Implementation Questions
Recently, I have been put on a development team that is developing a small reporting module for one of our applications.
I'm trying to mask the underlying structure from the application by having the application run PL/SQL procedures which return REF CURSORS to the client with the requested data. Right now I'm struggling with how to implement the PL/SQL in the best fashion.
Since this is a reporting tool the user has many combinations of selections. For example at a high level this application has a combination of multiple dropdowns (4-6), radio buttons, and check boxes. As you can see this results in a high amount of possible combinations that have to be sent to the database.
Basically, the user chooses the following:
1. Columns to receive (ie different SELECT lists in the PL/SQL)
2. Specific conditions (ie different WHERE clauses in the PL/SQL)
3. Aggregate functions (SUMS, TOTALS, AVERAGES based on #1 and #2)
4. Trends based on #3.
So... with that said I see two possibilities:
1. Create a static query for each combination of parameters (in this case that would most likely result in at least 300 queries that would have to be written, possibly 600+).
The problem I see with this is that I will have to write a significant amount of queries. This is a lot of front end work that, while is tedious, could result in a better performing system because it would be a parse once, execute many scenario which is scalable.
The downside though is that if any of the underlying structure changes I have to go through and change tens of queries.
2. Use DBMS_SQL and dynamically generate the queries based on input conditions.
This approach (possibly) sacrifices performance (parse once, execute once situation), but has increased maintainability because it is more likely that I'll have to make one change vice a number of changes in scenario 1.
A downside to this is that, it may be harder to debug (and hence maintain) because the SQL is generated on the fly.
My questions to all is:
1. Which is the approach that would best manage maintainability / performance?
2. Is there any other approaches to using PL/SQL as a reporting tool that I am not thinking of?
The database is 10.2.0.3, and the 'application' is PHP 5.1 running on IIS 6.
If you need me to provide any additional information please let me know.
Thanks!Ref cursors are an ugly solution (different though in 11g).
You build a dynamic SQL. It must/should have bind variables. But a ref cursor does not allow you to dynamically bind values to bind variables. You need to code the actual bind variables into the code as part of the open cursor command. And at coding time you have no idea how many bind variables there will be in that dynamic SQL for the ref cursor.
The proper solution is DBMS_SQL as it allows exactly this. Also one of the reasons why APEX uses this for its report queries.
The only sensible way to implement this type of thing in PL/SQL is by not trying to make it generic (as one could with DBMS_SQL). Instead use polymorphisms and have each procedure construct the appropriate ref cursor with bind variables.
E.g.
SQL> create or replace package query as
2 procedure Emp( c in out sys_refcursor );
3 procedure Emp( c in out sys_refcursor, nameLike varchar2 );
4 procedure EMp( c in out sys_refcursor, deptID number );
5 end;
6 /
Package created.
SQL>
SQL> create or replace package body query as
2
3 procedure Emp( c in out sys_refcursor ) is
4 begin
5 open c for select * from emp order by 1;
6 end;
7
8 procedure Emp( c in out sys_refcursor, nameLike varchar2 ) is
9 begin
10 open c for select * from emp where ename like nameLike order by 1;
11 end;
12
13 procedure EMp( c in out sys_refcursor, deptID number ) is
14 begin
15 open c for select * from emp where deptno = deptID order by sal;
16 end;
17 end;
18 /
Package body created.
SQL>
SQL> var c refcursor
SQL> exec query.Emp( :c, 'S%' )
PL/SQL procedure successfully completed.
SQL>
SQL> print c
EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
7369 SMITH CLERK 7902 1980-12-17 00:00:00 800 20
7788 SCOTT ANALYST 7566 1987-04-19 00:00:00 3000 20
SQL> -
Is there a simple way to refresh a SQL Query (Updatable report) region
I have a page in APex 4.1 that has many regions. I would like to be able to refresh a single region.
Currently, I have the following
Region (sql query updateable report).
STATIC ID = LANDINGS
in the region footer, I have:
<script type="text/javascript">
$s('P110_LANDINGS_REGION_ID','#REGION_STATIC_ID#');
</script>
P110_LANDINGS_REGION_ID is a hidden field.
I use javascript to refresh....but it does not seem to be working. Previously, we had hard-coded the region id ( $a_report('1363338167540162011','1','100','100');) ...but that ID was somehow corrupted, which has lead me to the 'OMG...there must be an easier way!' lament.
the javascript is:
$a_report('P110_LANDINGS_REGION_ID','1','100','100');
thanks!
Karen
ps. could I just directly reference the static id in my javascript...
$a_report('LANDINGS','1','100','100');Karen,
First off: please post code in {code}...{code} tags!
function AddFavoriteSpecies()
get = new htmldb_Get(null,&APP_ID.,'APPLICATION_PROCESS=favorite_species_collection',0);
gReturn = get.get();
rowCount = rowCount + parseInt(gReturn);
pHMS_add = '&G_HMS_FLAG.';
$a_report('1363338167540162011','1','100','100');
//$a_report($x('P110_LANDINGS_ID').value,'1','15','15');the statement:
$a_report('1363338167540162011','1','100','100'); works, but the statement $a_report($x('P110_LANDINGS_ID').value,'1','15','15'); does not.
Can anyone help.
I am assigning the page field P110_LANDINGS_ID in the footer of a region with a static id = LANDINGS.
<script type="text/javascript">
$s('P110_LANDINGS_ID','#REGION_STATIC_ID#');
</script>
Well, let's start by dumping $a_report. This is undocumented code, and it has long been replaced by triggering a refresh.
Next, don't use $x(pNode).value to retrieve a value. Rather use $v(pNode) to do this.
function AddFavoriteSpecies()
get = new htmldb_Get(null,&APP_ID.,'APPLICATION_PROCESS=favorite_species_collection',0);
gReturn = get.get();
rowCount = rowCount + parseInt(gReturn);
pHMS_add = '&G_HMS_FLAG.';
//get the region id from the item
//use it in a jQuery selector to get the region
//trigger the refresh event on this object
$("#" + $v('P110_LANDINGS_ID')).trigger('apexrefresh');
}Now if you want to make sure that P110_LANDINGS_ID contains a value, add an alert with its value before you use it.
alert('P110_LANDINGS_ID value: '+$v('P110_LANDINGS_ID')) -
Restricting the pl/sql error in report region(sql report)
Hi,
Is there any way to hiding pl/sql error in report region when we use generic column names*(Use Generic Column Names (parse query at runtime only)*
). and type is sql query else displaying alternative error message on that particular report region
I am using apex 4.1 and 11g database
Thanks
Sagar.What kind of pl/sql error you are talking about?
-
SQL Query (updateable report) Region - Conditionally Hide and Set Values
SQL Query (updateable report) Region - Conditionally Hide and Set Values
Outline of requirement :-
Master / Detail page with Detail updated on same page using SQL Query (updateable report).
The detail region has the following source
SELECT item_id,
contract_id,
CASE WHEN hardware_id IS NOT NULL THEN
'HA'
WHEN backup_dev_id IS NOT NULL THEN
'BD'
WHEN hardware_os_id IS NOT NULL THEN
'HS'
END item_type,
hardware_id,
backup_dev_id,
hardware_os_id
FROM "#OWNER#".support_items
WHERE contract_id = :P26_CONTRACT_IDThe table support_items implements arced relationships and has the following columns
CREATE TABLE SUPPORT_ITEMS
ITEM_ID NUMBER NOT NULL,
CONTRACT_ID NUMBER NOT NULL,
HARDWARE_ID NUMBER,
BACKUP_DEV_ID NUMBER,
HARDWARE_OS_ID NUMBER
)A check type constaint on support_items ensures that only one of the fk's is present.
( hardware_id IS NOT NULL
AND backup_dev_id IS NULL
AND hardware_os_id IS NULL
OR ( hardware_id IS NULL
AND backup_dev_id IS NOT NULL
AND hardware_os_id IS NULL
OR ( hardware_id IS NULL
AND backup_dev_id IS NULL
AND hardware_os_id IS NOT NULL
) Hardware_Id is a FK to Hardware_Assets
Backup_dev_id is a FK to Backup_Devices
Hardware_os_id is a FK to Hardware_op_systems
The Tabular Form Element based on item_type column of SQL query is Displayed As Select List (based on LOV) referencing a named list of values which have the following properties
Display Value Return Value
Hardware Asset HA
Backup Device BD
Computer System HSThe Tabular Form Elements for the report attributes for hardware_id, backup_dev_id and hardware_os_id are all Displayed As Select List (Based on LOV).
What I want to do is only display the Select List for the FK depending on the value of the Select List on Item Type, e.g.
Item_Type is 'HA' then display Select List for hardware_id, do not display and set to NULL the Select Lists for backup_dev_id and hardware_os_id.
Item_Type is 'BB' then display Select List for backup_dev_id, do not display and set to NULL the Select Lists for hardware_id and hardware_os_id.
Item_Type is 'HS' then display Select List for hardware_os_id, do not display and set to NULL the Select Lists backup_dev_id and hardware_id.
There are properties on elements to conditionally display it but how do we reference the values of the SQL query Updateable region? they are not given a page item name?
Also on the Tabular For Elements there is an Edit tick against a report item - however when you go to the Column Attributes there is not a property with which you can control the Edit setting.
What's the best way of implementing this requirement in APEX 3.1?
Thanks.>
Welcome to the forum: please read the FAQ and forum sticky threads (if you haven't done so already), and update your profile with a real handle instead of "user13515136".
When you have a problem you'll get a faster, more effective response by including as much relevant information as possible upfront. This should include:
<li>Full APEX version
<li>Full DB/version/edition/host OS
<li>Web server architecture (EPG, OHS or APEX listener/host OS)
<li>Browser(s) and version(s) used
<li>Theme
<li>Template(s)
<li>Region/item type(s) (making particular distinction as to whether a "report" is a standard report, an interactive report, or in fact an "updateable report" (i.e. a tabular form)
With APEX we're also fortunate to have a great resource in apex.oracle.com where we can reproduce and share problems. Reproducing things there is the best way to troubleshoot most issues, especially those relating to layout and visual formatting. If you expect a detailed answer then it's appropriate for you to take on a significant part of the effort by getting as far as possible with an example of the problem on apex.oracle.com before asking for assistance with specific issues, which we can then see at first hand.
I have a multi-row region that displays values and allows entries in a number of fields.Provide exact details of how this has been implemented. (An example on apex.oracle.com is always a good way to do this.)
I should like the fields to be conditional in that they do not permit entry, but still display, if certain conditions apply (e.g. older rows greyed out). Can this be done? Almost anything can be done, often in multiple ways. Which are appropriate may be dependent on a particular implementation, the skills available to implement it, and the effort you're willing to expend on it. Hence it's necessary to provide full details of what you've done so far... -
Sql server 2005 reports with sql server 2014
Can i upload SSRS 2005 reports as it is on SSRS 2014 and use it without doing anything extra or without changing anything ??
I can use SSRS 2005 reports as it is with SSRS 2012. But for SSRS 2014 not sure.
h2007You can upgrade the the RDL schema will be upgraded.
Report definition (.rdl) files are automatically upgraded in the following ways:
When you open a report in Report Designer in SQL Server Data Tools (SSDT), the report definition is upgraded to the currently supported RDL schema. When you specify a SQL Server 2008 or SQL Server 2008 R2 report server in the project properties, the report
definition is saved in a schema that is compatible with the target server.
When you upgrade a Reporting Services installation to a SQL Server 2014 Reporting Services (SSRS) installation, existing reports and snapshots that have been published to a report server are compiled and automatically upgraded to the new schema the first
time they are processed. If a report cannot be automatically upgraded, the report is processed using the backward-compatibility mode. The report definition remains in the original schema.
Reports are not upgraded when you upload a report definition file directly to the report server or SharePoint site. Upgrading a report definition in SQL Server Data Tools is the only way to upgrade the .rdl file.
After a report is upgraded locally or on the report server, you might notice additional errors, warnings, and messages. This is the result of changes to the internal report object model and processing components, which cause messages to appear when underlying
problems in the report are detected. For more information, see Reporting Services Backward Compatibility.
For more information about new features for SQL Server 2014 Reporting Services (SSRS), see
What's New (Reporting Services).
Check the below Microsoft link for more information
http://msdn.microsoft.com/en-us/library/ms143674.aspx
Mudassar -
Get a insert session value for SQL query at report
Hi friends
I created a global temp table and procedure to support web search form.
and a search result report. The procudure
gets search result from multip tables and
insert into temp table --recordsearch. I can get value from temp table by call procedure
at SQL*Plus.
However, I can not get this value by web report.
How can I get this insert session value and pass to SQL query for report?
Thanks,
Newweb
CREATE GLOBAL TEMPORARY TABLE recordsearch
(emp_id VARCHAR2(200),
ssn VARCHAR2(9),
fname VARCHAR2(200),
lname VARCHAR2(200),
m_name VARCHAR2(200)
) ON COMMIT PRESERVE ROWS;it possible that your web form does not have a persistent, dedicated connection. if you have connection pooling for example, multiple sessions will see the same instance of the GTT, so if one deletes it, then nobody sees it (or you can see others data). if the connections are not persistent, then they can disconnect between calls, deleting the GTT table.
-
Update Field On Change For A SQL Query (updateable report)
Hi,
I'd like to request help from anyone with ideas on how to solve this.
We are using APEX 4.2, 10GR2, RedHat5.
I have a report that comes from SQL Query (updateable report).
I'm using the apex_item.text and apex_item.hidden on fields.
I'm using a button to submit and after submit process to add some logic that I need.
There could be 1 - 10 records in the report.
There is only 1 field that is needed to enter a value, but the value of this field determines the value of another field.
I think that I can do this with a submit button and an after submit process where I loop through all the records. I think I have this handled.
This is the question
When the value of that field is changed then the value of another field in the same row changes immediately.
Is this possible?
All the examples I've seen so far are for a single record and that doesn't work for us.
I guess this is a MRU process but I haven't seen an example where a dynamic action is possible on a Multi Row Update.
Could anyone direct me to where I can see an example or help me get directions?
I appreciate all your help an comments and I thank you in advance.Yes why not...what you looking for is a ajax call
See {message:id=10390979}
Please note:-you can also do this as a dynamic action as shown below
Event: Change
Selection type: jQuery Selector
jQuery Selector: input[name="f01"]
True action with Execute JavaScript Code and put all code inside the test funtion, you may need to amend the code to use this.triggeringElemnt in place of this -
Export to Excel Error in SQL Server 2014 Report Builder/Viewer
Hi,
I am using the 2014 version of ReportViewer in a WinForm to display an RDL report.
The report was originally created in Report Builder 2.0 (SQL 2008 R2), but has since been edited in Report Builder 3.0 (SQL 2014).
The report loads and displays OK, and even exports to Word and PDF. But when exporting to Excel and then opening the Excel document, the following error occurs:
"We found a problem with some content in <filename>. Do you want us to try and recover as much as we can? If you trust the source of this workbook, click Yes."
If you click Yes, then a second message appears:
"Removed Part: /xl/styles.xml part. (Styles)
Repaired Records: Cell information from /xl/worksheets/sheet1.xml part"
The Excel document then opens, and the data is there, but there is no formatting (no border columns, colours, bolds etc.)
The three interesting things are:
- When exported from SQL 2008 R2 Report Builder 3.0, which exports to .xsl instead of .xslx, it works
- A brand new report created in 2014 Report Builder 3.0 exports to .xslx great
- In Report Builder 2014, I stripped everything back and removed all rows and columns so the original table in the report only has one empty row and column it the export still errors - it is only by removing the original table and creating a brand new table
that export works OK
It appears to be a problem with the tablix, but ideally we don't want to have to recreate our reports from scratch to fix this issue.
Has anyone come across an issue like this before, and know of any potential resolutions to it?
Thank you.Hello,
Based on your description, you render a report originally created in Report Builder 2.0 (SQL 2008 R2) and export the report to excel with format of Excel 2007-2010.
Edit the report in Report Builder will not upgrader the report. In that case the report still with SSRS 2008 R2 RDL schema. Please try to upgrade the report by open the report in Report Designer in SQL Server Data Tools (SSDT) and then try again.
If you don’t want to upgrade the report, please try to export the report
with Excel 2003 rendering extension and check if the issue persists.
The SQL Server 2014 and SQL Server 2012 Reporting Services Excel rendering extension renders a report to the native format of Microsoft Excel 2007-2010 with .xlsx as file extension. Only the Excel rendering extension is available by default.
You must update the Reporting Services configuration files to make the Excel 2003 rendering extension available.
For example, changing the value of Visible to
true in the following line in the RSReportServer.config:
<Extension Name="EXCEL" Type="Microsoft.ReportingServices.Rendering.ExcelRenderer.ExcelRenderer,Microsoft.ReportingServices.ExcelRendering"
Visible="true"/>
Reference:Upgrade Reports
Exporting to Microsoft Excel (Report Builder and SSRS)
Regards,
Fanny Liu
Fanny Liu
TechNet Community Support -
Is there a way to convert Crystal Reports to Microsoft SQL Server 2005 reporting services?
Post Author: Lourdes Hernandez
CA Forum: General
Our department has always worked with and we love Crystal Reports. Unfortunately, certain reports now need to be converted to Microsoft SQL Server 2005 reporting services which from what I read I think they are *.rdl reports. Does Crystal reports have any way around this? I would have to learn this other tool when I'm already so happy with Crystal. I was thinking If I could just code the report in crystal and export it in a specific format that would be compatible Microsoft, the problem would be solved.
Any ideas would be greatly appreciated.Post Author: bettername
CA Forum: General
Ditto!
There are some software packages to convert from CR to RS, but none work 100% AFAIK, and will require manual tuning.
Seems like a big hassle and learning curve just to get reports published via another method - I know I'd put up huge resistance if they tried to take my CR away from me! -
Will the reports developed in sql server 2008 r2 BIDS work when deployed on sql server 2012 reporting manager?
when I check on Microsoft site it says
Reports are not upgraded when you upload a report definition file directly to the report server
or SharePoint site. Upgrading a report definition in SQL Server Data Tools is the only way to upgrade the .rdl file.
When you open an .rdl file in Report Designer in SQL Server Data Tools (SSDT), if the report was
created for a previous namespace, Report Designer automatically creates a backup file and upgrades the report to the current namespace.
This is the only way you can upgrade a report definition file.
Now here is another confusing statement which says
You can upload an .rdl file created in an earlier version of Reporting Services to a SQL Server
2012 report server and it is automatically upgraded on first use. The report server stores the report definition file in the original format. The report is automatically upgraded the first time it is viewed, but the stored report definition file remains
unchanged.
All I want to know is if I deploy a rdl made in 2008 r2 to 2012 will it work on the report manager of
2012?
<o:p>
</o:p>
MudassarI have tested this fucntionality and can confirm that ssrs 2008 r2 reports work when you deploy them on new ssrs 2012 report manager .
No Migration is required .
I didnt even moved report server dbs .All I did is just deployed reports on the report manager and it worked .
"You
can upload an .rdl file created in an earlier version of Reporting Services to a SQL Server 2012 report server and it is automatically upgraded on first use. "
Microsoft needs to correct this the documentation is misleading
Mudassar -
How to write SQL in crystal report that can reuse SQL execution plan cache?
I write the following SQL with crystal report parameter fields, and it is connecting to SQL 2005
Select Name from Customer where CustID = '{?CustID}'
The SQL profiler show that It is an ad-hoc query, how to write parameterized SQL which can reuse Execution Plan.
Edited by: Chan Yue Wah on May 14, 2009 3:17 AMSince there are too many report, it is not possible rewrite all. Is that crystal report do not have option to change how it query the database ?
-
Sql query in report/source
Is possible use this kind of select select a,(select b from b) from b
in sql query in report/source?Pretty much any valid select statement can be used.
If it works in SQL*Plus, then it should work in Application Express.
I think your example would not be valid if table b has more than one row.
A scalar subquery (like your "select b from b") must only return a single value.
SQL> select ename, (select job from emp) from emp e;
ORA-01427: single-row subquery returns more than one rowIf your subquery can be restricted to return one value, then it should work.
SQL> select ename, (select job from emp where empno = e.empno) job from emp e;
ENAME JOB
KING PRESIDENT
BLAKE MANAGER
CLARK MANAGER
JONES MANAGER
SCOTT ANALYST
FORD ANALYST
SMITH CLERK
ALLEN SALESMAN
WARD SALESMAN
MARTIN SALESMAN
TURNER SALESMAN
ADAMS CLERK
JAMES CLERK
MILLER CLERK
14 rows selectedBut is that the kind of result you were looking for? -
Pl/sql in oracle reports 6.0
Hi ,
I am new to oracle reports, is there any way to use pl/sql in oracle reports.I mean i have to take aggregate data from Oracle and to print/populate the data according to slabs(Say distance slab or time slab).Can u please provide me sample code...
mail id : [email protected]
thanks & regards
Anand Myou can use ref cursor in your pl/sql stored procedure and then call it in your reports
Maybe you are looking for
-
How can I fix problem of Screen freezing in Fullscreen view display.
Click Vie , Full Screen. Have multiple tabs open. Screen freezes. Prompting does not drop the tabs back down to switch pages etc. Happens randomly, several times a day, since upgrade to Firefix 9. Prior to that I never had an issue with the Full scre
-
My iphoto library has become unreadable. I am wondering if I shoudl delete iphoto and reinstall? Can I download iphoto from the web? I bought my computer in February of this year. Do I have to buy a new copy?
-
Trying to connect to a Windows share locks out users Windows account.
Right then I'm coming to the end of my tether !!! I've got a user who needs to access a share on a Windows server. All is well and the user gets the challenge prompt but instead of letting him in it constantly challenges him locking out his windows a
-
Configuring Message Clasifications Exchange 2010 - Outlook 2007/2010/2013
Hi I created Message Classification as described in: http://technet.microsoft.com/en-us/library/bb123498(v=exchg.141).aspx New-MessageClassification .... New MessageClassification is visible in OWA. I stared deploy Message Classifications for Outlook
-
How do I connect my Bad Aax MC001 external mic to my mac?
I recently purchased a Bad Aax MC001 microphone to produce my music, when I realized I have no clue on how to actually connect this to my desktop. There's is no port that will allow me to connect the end to my computer, and i need to know what item I