Question about searching 600 tables

Dear all Is there a way to write a simple query that would generate a list of tables that contains the names John Smith. Thank you. A simple example will help.

A couple of solutions from Michaels
michaels>  var val varchar2(5)
michaels>  exec :val := 'as'
PL/SQL procedure successfully completed.
michaels>  select distinct substr (:val, 1, 11) "Searchword",
                substr (table_name, 1, 14) "Table",
                substr (t.column_value.getstringval (), 1, 50) "Column/Value"
           from cols,
                table
                   (xmlsequence
                       (dbms_xmlgen.getxmltype ('select ' || column_name
                                                || ' from ' || table_name
                                                || ' where upper('
                                                || column_name
                                                || ') like upper(''%' || :val
                                                || '%'')'
                                               ).extract ('ROWSET/ROW/*')
                   ) t
--        where table_name in ('EMPLOYEES', 'JOB_HISTORY', 'DEPARTMENTS')
       order by "Table"or
SQL> select table_name,
       column_name,
       :search_string search_string,
       result
  from cols,
       xmltable(('ora:view("'||table_name||'")/ROW/'||column_name||'[ora:contains(text(),"%'|| :search_string || '%") > 0]')
       columns result varchar2(10) path '.'
where table_name in ('EMP', 'DEPT')
TABLE_NAME           COLUMN_NAME          SEARCH_STRING        RESULT   
DEPT                 DNAME                ES                   RESEARCH 
DEPT                 DNAME                ES                   SALES    
EMP                  ENAME                ES                   JONES    
EMP                  ENAME                ES                   JAMES    
EMP                  JOB                  ES                   SALESMAN 
EMP                  JOB                  ES                   SALESMAN 
EMP                  JOB                  ES                   SALESMAN 
EMP                  JOB                  ES                   PRESIDENT
EMP                  JOB                  ES                   SALESMAN 
9 rows selected.This latter one works on 11gR2 upwards (as far as I know)

Similar Messages

  • AutoSPInstaller - Question about Search Topology

    Hello,
    I would deploy a new sharepoint infrastructure with autospinstaller and i have some questions about search topology.
    This infrastructure will host at end 2 EDM (10-20TO) and probably some user sites.
    I will provision 2 WFE and 2 APPS.
    Search Topology (4 servers) =>
    - Crawl Component :
    SRVA & SRVB
    - Query Component :
    SRVC & SRVD
    - Search Query and Site Settings Service :
    SRVA & SRVB
    - Admin Component :
    SRVA & SRVB
    - Index Component :
    SRVC & SRVD
    - Content Processing Component :
    SRVA & SRVB
    - Analytics Porcessing Component :
    SRVA & SRVB
    I read many articles about this subject but all were different !
    Anyone can apply my choice or make me a proposition ?

    Hi,
    I just want confirme that the infrastructure is correct before deploy it. Do i really need to isolate admin component, for now i put it on only one app server.
    For "Distributed caching", i planned to install it on both WFE servers.
    Thank you for your help.
    Jeremy

  • Question about searching

    Hi all,
    I'm considering Oracle BDBJE for a project that stores visited url's (data) based on a key of ip-address (4 bytes) combined with a date (long) to make the keys unique.
    If want to search on date (ignore ip) do I have to make a secondary database that has the date of the visited url's as primary index?
    Does a method like Cursor.getSearchKeyRange, if supplied with partial key, always search a the beginning of the key? Or could I use it to search for a date by only supplying the date-part of the key? Prop. in this case the bytes for the date will be mistaken for the bytes of the ip-address that comes first in the key.
    Thanks for any help.
    regards,
    Jeroen

    Hi Jeroen,
    I'm not sure I have all of your data model yet, but I think you've given us enough for me to say you should likely try one or possibly two secondary databases.
    If you have not already done so you should review the documentation on Secondary Indexes as found here:
    http://www.oracle.com/technology/documentation/berkeley-db/je/GettingStartedGuide/indexes.html
    Inserting/Modifying records is faster without using a secondary index. But the queries that you have identified would perform better with secondary indexes. But you should experiment with a few different approaches and compare that with your performance goals.
    Also, if you have not already thought about this, I would consider using DPL to implement this, especially since you will be evaluating alternative database designs. You will find that the implementation time is faster and you can also make changes quickly.
    http://www.oracle.com/technology/documentation/berkeley-db/je/PersistenceAPI/BerkeleyDB-JE-Persistence-GSG.pdf
    You know your data best, but based on the info you provided here are my thoughts/alternatives:
    Primary Database key = IP/Date or Maybe Date/IP is better if the Secondary for IP address exists
    data = URL plus other data not sure what
    Secondary Database Key = URL (I left out date because you said it is not likely that the same URL will exist for multiple dates).
    Possible Secondary Database Key = IP address (Which URL's were visited by IP X).
    Again, I think you may want to try out something like this a model your inserts and also your query performance. Feel free to post further questions about any results you are getting as you move forward.
    Also, if you have not already seen this I would keep this URL handy and consult with it before you post:
    http://www.oracle.com/technology/products/berkeley-db/faq/je_faq.html
    I hope this helps!
    Ron

  • A question about search level

    In the parameter :"DEADLOCK_DETECTION".
    It's explain include a substantive it's named :"search depth".
    I can't find the explain about "search depth".                                                   Please help me.
    thanks

    Hi,
    the search depth specifies how far the deadlock detection should search for the reason of the deadlock. A higher value would search deeper for the reason, but would also increase the time needed to search (and find).
    We normally recommend <b>against</b> changing the default value of this parameter. Normally also share locks are used, where we can't really specify all tasks that hold sharelocks (as opposed to deadlocks consisting only of tasks holding only exclusive locks), but only the number of tasks in total. If the deadlock isn't found, the Request_Timeout comes into effect.
    Does that help you understand this parameter?

  • I got a question about search help comes from check table

    But it dosen't work because it always have its value from the  first criteria.
    And I don't want no values be added into the criteria.
    How can I solve this problem.

    Seems like an interview question, if not tell us the purpose and scenario you are working on.
    Regards
    Karthik D

  • Question about sorted, hashed tables, mindset when using OO concepts...

    Hello experts,
    I just want to make sure if my idea about sorted and hashed table is correct.Please give tips and suggestions.
    In one of my reports, I declared a structure and an itab.
    TYPES: BEGIN OF t_mkpf,
            mblnr           LIKE mkpf-mblnr,
            mjahr           LIKE mkpf-mjahr,
            budat           LIKE mkpf-budat,
            xblnr(10)       TYPE c,
            tcode2          LIKE mkpf-tcode2,
            cputm           LIKE mkpf-cputm,
            blart           LIKE mkpf-blart,
          END OF t_mkpf.
    it_mkpf       TYPE SORTED   TABLE OF t_mkpf WITH HEADER LINE
                                       WITH NON-UNIQUE KEY mblnr mjahr.
    Now, I declared it as a sorted table with a non-unique key MBLNR and MJAHR. Now suppose I have 1000 records in my itab. how will it search for a particular record?
    2. Is it faster than sorting a standard table then reading it using binary search?
    3. How do I use a hashed table effectively? lets say that I want to use hashed type instead of sorted table in my example above.
    4. I am currently practicing ABAP Objects and my problem is that I think my mindset when programming a report is still the 'procedural one'. How do one use ABAP concepts effectively?
    Again, thank you guys and have a nice day!

    Hi Viray,
    <b>The different ways to fill an Internal Table:</b>
    <b>append&sort</b>
    This is the simplest one. I do appends on a standard table and then a sort.
    data: lt_tab type standard table of ...
    do n times.
    ls_line = ...
    append ls_line to lt_tab.
    enddo.
    sort lt_tab.
    The thing here is the fast appends and the slow sort - so this is interesting how this will compare to the following one.
    <b>read binary search & insert index sy-tabix</b>
    In this type I also use a standard table, but I read to find the correct insert index to get a sorted table also.
    data: lt_tab type standard table of ...
    do n times.
    ls_line = ...
    read table lt_tab transporting no fields with key ... binary search.
    if sy-subrc <> 0.
      insert ls_line into lt_tab index sy-tabix.
    endif.
    enddo.
    <b>sorted table with non-unique key</b>
    Here I used a sorted table with a non-unique key and did inserts...
    data: lt_tab type sorted table of ... with non-unique key ...
    do n times.
    ls_line = ...
    insert ls_line into table lt_tab.
    enddo.
    <b>sorted table with unique key</b>
    The coding is the same instead the sorted table is with a unique key.
    data: lt_tab type sorted table of ... with unique key ...
    do n times.
    ls_line = ...
    insert ls_line into table lt_tab.
    enddo.
    <b>hashed table</b>
    The last one is the hashed table (always with unique key).
    data: lt_tab type hashed table of ... with unique key ...
    do n times.
    ls_line = ...
    insert ls_line into table lt_tab.
    enddo.
    <b>You Can use this Program to Test:</b>
    types:
      begin of local_long,
        key1 type char10,
        key2 type char10,
        data1 type char10,
        data2 type char10,
        data3 type i,
        data4 type sydatum,
        data5 type numc10,
        data6 type char32,
        data7 type i,
        data8 type sydatum,
        data9 type numc10,
        dataa type char32,
        datab type i,
        datac type sydatum,
        datad type numc10,
        datae type char32,
        dataf type i,
        datag type sydatum,
        datah type numc10,
        datai type char32,
        dataj type i,
        datak type sydatum,
        datal type numc10,
        datam type char32,
        datan type i,
        datao type sydatum,
        datap type numc10,
        dataq type char32,
        datar type i,
        datas type sydatum,
        datat type numc10,
        datau type char32,
        datav type i,
        dataw type sydatum,
        datax type numc10,
        datay type char32,
        dataz type i,
        data11 type numc10,
        data21 type char32,
        data31 type i,
        data41 type sydatum,
        data51 type numc10,
        data61 type char32,
        data71 type i,
        data81 type sydatum,
        data91 type numc10,
        dataa1 type char32,
        datab1 type i,
        datac1 type sydatum,
        datad1 type numc10,
        datae1 type char32,
        dataf1 type i,
        datag1 type sydatum,
        datah1 type numc10,
        datai1 type char32,
        dataj1 type i,
        datak1 type sydatum,
        datal1 type numc10,
        datam1 type char32,
        datan1 type i,
        datao1 type sydatum,
        datap1 type numc10,
        dataq1 type char32,
        datar1 type i,
        datas1 type sydatum,
        datat1 type numc10,
        datau1 type char32,
        datav1 type i,
        dataw1 type sydatum,
        datax1 type numc10,
        datay1 type char32,
        dataz1 type i,
      end of local_long.
    data:
      ls_long type local_long,
      lt_binary type standard table of local_long,
      lt_sort_u type sorted table of local_long with unique key key1 key2,
      lt_sort_n type sorted table of local_long with non-unique key key1 key2,
      lt_hash_u type hashed table of local_long with unique key key1 key2,
      lt_apsort type standard table of local_long.
    field-symbols:
      <ls_long> type local_long.
    parameters:
      min1 type i default 1,
      max1 type i default 1000,
      min2 type i default 1,
      max2 type i default 1000,
      i1 type i default 100,
      i2 type i default 200,
      i3 type i default 300,
      i4 type i default 400,
      i5 type i default 500,
      i6 type i default 600,
      i7 type i default 700,
      i8 type i default 800,
      i9 type i default 900,
      fax type i default 1000.
    types:
      begin of measure,
        what(10) type c,
        size(6) type c,
        time type i,
        lines type i,
        reads type i,
        readb type i,
        fax_s type i,
        fax_b type i,
        fax(6) type c,
        iter type i,
      end of measure.
    data:
      lt_time type standard table of measure,
      lt_meantimes type standard table of measure,
      ls_time type measure,
      lv_method(7) type c,
      lv_i1 type char10,
      lv_i2 type char10,
      lv_f type f,
      lv_start type i,
      lv_end type i,
      lv_normal type i,
      lv_size type i,
      lv_order type i,
      lo_rnd1 type ref to cl_abap_random_int,
      lo_rnd2 type ref to cl_abap_random_int.
    get run time field lv_start.
    lo_rnd1 = cl_abap_random_int=>create( seed = lv_start min = min1 max = max1 ).
    add 1 to lv_start.
    lo_rnd2 = cl_abap_random_int=>create( seed = lv_start min = min2 max = max2 ).
    ls_time-fax = fax.
    do 5 times.
      do 9 times.
        case sy-index.
          when 1. lv_size = i1.
          when 2. lv_size = i2.
          when 3. lv_size = i3.
          when 4. lv_size = i4.
          when 5. lv_size = i5.
          when 6. lv_size = i6.
          when 7. lv_size = i7.
          when 8. lv_size = i8.
          when 9. lv_size = i9.
        endcase.
        if lv_size > 0.
          ls_time-iter = 1.
          clear lt_apsort.
          ls_time-what = 'APSORT'.
          ls_time-size = lv_size.
          get run time field lv_start.
          do lv_size times.
            perform fill.
            append ls_long to lt_apsort.
          enddo.
          sort lt_apsort by key1 key2.
          get run time field lv_end.
          ls_time-time = lv_end - lv_start.
          ls_time-reads = 0.
          ls_time-readb = 0.
          ls_time-lines = lines( lt_apsort ).
          get run time field lv_start.
          do.
            add 1 to ls_time-readb.
            lv_i1 = lo_rnd1->get_next( ).
            lv_i2 = lo_rnd2->get_next( ).
            read table lt_apsort
              assigning <ls_long>
              with key key1 = lv_i1
                       key2 = lv_i2
              binary search.
            if sy-subrc = 0.
              <ls_long>-data11 = sy-index.
            endif.
            get run time field lv_end.
            subtract lv_start from lv_end.
            if lv_end >= ls_time-time.
              exit.
            endif.
          enddo.
          get run time field lv_start.
          do.
            add 1 to ls_time-reads.
            lv_i1 = lo_rnd1->get_next( ).
            lv_i2 = lo_rnd2->get_next( ).
            read table lt_apsort
              assigning <ls_long>
              with key key2 = lv_i1
                       key1 = lv_i2.
            if sy-subrc = 0.
              <ls_long>-data11 = sy-index.
            endif.
            get run time field lv_end.
            subtract lv_start from lv_end.
            if lv_end >= ls_time-time.
              exit.
            endif.
          enddo.
          get run time field lv_start.
          do fax times.
            lv_i1 = lo_rnd1->get_next( ).
            lv_i2 = lo_rnd2->get_next( ).
            read table lt_apsort
              assigning <ls_long>
              with key key1 = lv_i1
                       key2 = lv_i2
              binary search.
            if sy-subrc = 0.
              <ls_long>-data21 = sy-index.
            endif.
          enddo.
          get run time field lv_end.
          ls_time-fax_b = lv_end - lv_start.
          get run time field lv_start.
          do fax times.
            lv_i1 = lo_rnd1->get_next( ).
            lv_i2 = lo_rnd2->get_next( ).
            read table lt_apsort
              assigning <ls_long>
              with key key2 = lv_i1
                       key1 = lv_i2.
            if sy-subrc = 0.
              <ls_long>-data21 = sy-index.
            endif.
          enddo.
          get run time field lv_end.
          ls_time-fax_s = lv_end - lv_start.
          collect ls_time into lt_time.
          clear lt_binary.
          ls_time-what = 'BINARY'.
          ls_time-size = lv_size.
          get run time field lv_start.
          do lv_size times.
            perform fill.
            read table lt_binary
              transporting no fields
              with key key1 = ls_long-key1
                       key2 = ls_long-key2
              binary search.
            if sy-index <> 0.
              insert ls_long into lt_binary index sy-tabix.
            endif.
          enddo.
          get run time field lv_end.
          ls_time-time = lv_end - lv_start.
          ls_time-reads = 0.
          ls_time-readb = 0.
          ls_time-lines = lines( lt_binary ).
          get run time field lv_start.
          do.
            add 1 to ls_time-readb.
            lv_i1 = lo_rnd1->get_next( ).
            lv_i2 = lo_rnd2->get_next( ).
            read table lt_binary
              assigning <ls_long>
              with key key1 = lv_i1
                       key2 = lv_i2
              binary search.
            if sy-subrc = 0.
              <ls_long>-data11 = sy-index.
            endif.
            get run time field lv_end.
            subtract lv_start from lv_end.
            if lv_end >= ls_time-time.
              exit.
            endif.
          enddo.
          get run time field lv_start.
          do.
            add 1 to ls_time-reads.
            lv_i1 = lo_rnd1->get_next( ).
            lv_i2 = lo_rnd2->get_next( ).
            read table lt_binary
              assigning <ls_long>
              with key key2 = lv_i1
                       key1 = lv_i2.
            if sy-subrc = 0.
              <ls_long>-data11 = sy-index.
            endif.
            get run time field lv_end.
            subtract lv_start from lv_end.
            if lv_end >= ls_time-time.
              exit.
            endif.
          enddo.
          get run time field lv_start.
          do fax times.
            lv_i1 = lo_rnd1->get_next( ).
            lv_i2 = lo_rnd2->get_next( ).
            read table lt_binary
              assigning <ls_long>
              with key key1 = lv_i1
                       key2 = lv_i2
              binary search.
            if sy-subrc = 0.
              <ls_long>-data21 = sy-index.
            endif.
          enddo.
          get run time field lv_end.
          ls_time-fax_b = lv_end - lv_start.
          get run time field lv_start.
          do fax times.
            lv_i1 = lo_rnd1->get_next( ).
            lv_i2 = lo_rnd2->get_next( ).
            read table lt_binary
              assigning <ls_long>
              with key key2 = lv_i1
                       key1 = lv_i2.
            if sy-subrc = 0.
              <ls_long>-data21 = sy-index.
            endif.
          enddo.
          get run time field lv_end.
          ls_time-fax_s = lv_end - lv_start.
          collect ls_time into lt_time.
          clear lt_sort_n.
          ls_time-what = 'SORT_N'.
          ls_time-size = lv_size.
          get run time field lv_start.
          do lv_size times.
            perform fill.
            insert ls_long into table lt_sort_n.
          enddo.
          get run time field lv_end.
          ls_time-time = lv_end - lv_start.
          ls_time-reads = 0.
          ls_time-readb = 0.
          ls_time-lines = lines( lt_sort_n ).
          get run time field lv_start.
          do.
            add 1 to ls_time-readb.
            lv_i1 = lo_rnd1->get_next( ).
            lv_i2 = lo_rnd2->get_next( ).
            read table lt_sort_n
              assigning <ls_long>
              with table key key1 = lv_i1
                             key2 = lv_i2.
            if sy-subrc = 0.
              <ls_long>-data11 = sy-index.
            endif.
            get run time field lv_end.
            subtract lv_start from lv_end.
            if lv_end >= ls_time-time.
              exit.
            endif.
          enddo.
          get run time field lv_start.
          do.
            add 1 to ls_time-reads.
            lv_i1 = lo_rnd1->get_next( ).
            lv_i2 = lo_rnd2->get_next( ).
            read table lt_sort_n
              assigning <ls_long>
              with key key2 = lv_i1
                       key1 = lv_i2.
            if sy-subrc = 0.
              <ls_long>-data11 = sy-index.
            endif.
            get run time field lv_end.
            subtract lv_start from lv_end.
            if lv_end >= ls_time-time.
              exit.
            endif.
          enddo.
          get run time field lv_start.
          do fax times.
            lv_i1 = lo_rnd1->get_next( ).
            lv_i2 = lo_rnd2->get_next( ).
            read table lt_sort_n
              assigning <ls_long>
              with table key key1 = lv_i1
                             key2 = lv_i2.
            if sy-subrc = 0.
              <ls_long>-data21 = sy-index.
            endif.
          enddo.
          get run time field lv_end.
          ls_time-fax_b = lv_end - lv_start.
          get run time field lv_start.
          do fax times.
            lv_i1 = lo_rnd1->get_next( ).
            lv_i2 = lo_rnd2->get_next( ).
            read table lt_sort_n
              assigning <ls_long>
              with key key2 = lv_i1
                       key1 = lv_i2.
            if sy-subrc = 0.
              <ls_long>-data21 = sy-index.
            endif.
          enddo.
          get run time field lv_end.
          ls_time-fax_s = lv_end - lv_start.
          collect ls_time into lt_time.
          clear lt_sort_u.
          ls_time-what = 'SORT_U'.
          ls_time-size = lv_size.
          get run time field lv_start.
          do lv_size times.
            perform fill.
            insert ls_long into table lt_sort_u.
          enddo.
          get run time field lv_end.
          ls_time-time = lv_end - lv_start.
          ls_time-reads = 0.
          ls_time-readb = 0.
          ls_time-lines = lines( lt_sort_u ).
          get run time field lv_start.
          do.
            add 1 to ls_time-readb.
            lv_i1 = lo_rnd1->get_next( ).
            lv_i2 = lo_rnd2->get_next( ).
            read table lt_sort_u
              assigning <ls_long>
              with table key key1 = lv_i1
                             key2 = lv_i2.
            if sy-subrc = 0.
              <ls_long>-data11 = sy-index.
            endif.
            get run time field lv_end.
            subtract lv_start from lv_end.
            if lv_end >= ls_time-time.
              exit.
            endif.
          enddo.
          get run time field lv_start.
          do.
            add 1 to ls_time-reads.
            lv_i1 = lo_rnd1->get_next( ).
            lv_i2 = lo_rnd2->get_next( ).
            read table lt_sort_u
              assigning <ls_long>
              with key key2 = lv_i1
                       key1 = lv_i2.
            if sy-subrc = 0.
              <ls_long>-data11 = sy-index.
            endif.
            get run time field lv_end.
            subtract lv_start from lv_end.
            if lv_end >= ls_time-time.
              exit.
            endif.
          enddo.
          get run time field lv_start.
          do fax times.
            lv_i1 = lo_rnd1->get_next( ).
            lv_i2 = lo_rnd2->get_next( ).
            read table lt_sort_u
              assigning <ls_long>
              with table key key1 = lv_i1
                             key2 = lv_i2.
            if sy-subrc = 0.
              <ls_long>-data21 = sy-index.
            endif.
          enddo.
          get run time field lv_end.
          ls_time-fax_b = lv_end - lv_start.
          get run time field lv_start.
          do fax times.
            lv_i1 = lo_rnd1->get_next( ).
            lv_i2 = lo_rnd2->get_next( ).
            read table lt_sort_u
              assigning <ls_long>
              with key key2 = lv_i1
                       key1 = lv_i2.
            if sy-subrc = 0.
              <ls_long>-data21 = sy-index.
            endif.
          enddo.
          get run time field lv_end.
          ls_time-fax_s = lv_end - lv_start.
          collect ls_time into lt_time.
          clear lt_hash_u.
          ls_time-what = 'HASH_U'.
          ls_time-size = lv_size.
          get run time field lv_start.
          do lv_size times.
            perform fill.
            insert ls_long into table lt_hash_u.
          enddo.
          get run time field lv_end.
          ls_time-time = lv_end - lv_start.
          ls_time-reads = 0.
          ls_time-readb = 0.
          ls_time-lines = lines( lt_hash_u ).
          get run time field lv_start.
          do.
            add 1 to ls_time-readb.
            lv_i1 = lo_rnd1->get_next( ).
            lv_i2 = lo_rnd2->get_next( ).
            read table lt_hash_u
              assigning <ls_long>
              with table key key1 = lv_i1
                             key2 = lv_i2.
            if sy-subrc = 0.
              <ls_long>-data11 = sy-index.
            endif.
            get run time field lv_end.
            subtract lv_start from lv_end.
            if lv_end >= ls_time-time.
              exit.
            endif.
          enddo.
          get run time field lv_start.
          do.
            add 1 to ls_time-reads.
            lv_i1 = lo_rnd1->get_next( ).
            lv_i2 = lo_rnd2->get_next( ).
            read table lt_hash_u
              assigning <ls_long>
              with key key2 = lv_i1
                       key1 = lv_i2.
            if sy-subrc = 0.
              <ls_long>-data11 = sy-index.
            endif.
            get run time field lv_end.
            subtract lv_start from lv_end.
            if lv_end >= ls_time-time.
              exit.
            endif.
          enddo.
          get run time field lv_start.
          do fax times.
            lv_i1 = lo_rnd1->get_next( ).
            lv_i2 = lo_rnd2->get_next( ).
            read table lt_hash_u
              assigning <ls_long>
              with table key key1 = lv_i1
                             key2 = lv_i2.
            if sy-subrc = 0.
              <ls_long>-data21 = sy-index.
            endif.
          enddo.
          get run time field lv_end.
          ls_time-fax_b = lv_end - lv_start.
          get run time field lv_start.
          do fax times.
            lv_i1 = lo_rnd1->get_next( ).
            lv_i2 = lo_rnd2->get_next( ).
            read table lt_hash_u
              assigning <ls_long>
              with key key2 = lv_i1
                       key1 = lv_i2.
            if sy-subrc = 0.
              <ls_long>-data21 = sy-index.
            endif.
          enddo.
          get run time field lv_end.
          ls_time-fax_s = lv_end - lv_start.
          collect ls_time into lt_time.
        endif.
      enddo.
    enddo.
    sort lt_time by what size.
    write: / ' type      | size   | time        | tab-size    | directread  | std read    | time direct | time std read'.
    write: / sy-uline.
    loop at lt_time into ls_time.
      write: / ls_time-what, '|', ls_time-size, '|', ls_time-time, '|', ls_time-lines, '|', ls_time-readb, '|', ls_time-reads, '|', ls_time-fax_b, '|', ls_time-fax_s.
    endloop.
    form fill.
      lv_i1 = lo_rnd1->get_next( ).
      lv_i2 = lo_rnd2->get_next( ).
      ls_long-key1 = lv_i1.
      ls_long-key2 = lv_i2.
      ls_long-data1 = lv_i1.
      ls_long-data2 = lv_i2.
      ls_long-data3 = lv_i1.
      ls_long-data4 = sy-datum + lv_i1.
      ls_long-data5 = lv_i1.
      ls_long-data6 = lv_i1.
      ls_long-data7 = lv_i1.
      ls_long-data8 = sy-datum + lv_i1.
      ls_long-data9 = lv_i1.
      ls_long-dataa = lv_i1.
      ls_long-datab = lv_i1.
      ls_long-datac = sy-datum + lv_i1.
      ls_long-datad = lv_i1.
      ls_long-datae = lv_i1.
      ls_long-dataf = lv_i1.
      ls_long-datag = sy-datum + lv_i1.
      ls_long-datah = lv_i1.
      ls_long-datai = lv_i1.
      ls_long-dataj = lv_i1.
      ls_long-datak = sy-datum + lv_i1.
      ls_long-datal = lv_i1.
      ls_long-datam = lv_i1.
      ls_long-datan = sy-datum + lv_i1.
      ls_long-datao = lv_i1.
      ls_long-datap = lv_i1.
      ls_long-dataq = lv_i1.
      ls_long-datar = sy-datum + lv_i1.
      ls_long-datas = lv_i1.
      ls_long-datat = lv_i1.
      ls_long-datau = lv_i1.
      ls_long-datav = sy-datum + lv_i1.
      ls_long-dataw = lv_i1.
      ls_long-datax = lv_i1.
      ls_long-datay = lv_i1.
      ls_long-dataz = sy-datum + lv_i1.
      ls_long-data11 = lv_i1.
      ls_long-data21 = lv_i1.
      ls_long-data31 = lv_i1.
      ls_long-data41 = sy-datum + lv_i1.
      ls_long-data51 = lv_i1.
      ls_long-data61 = lv_i1.
      ls_long-data71 = lv_i1.
      ls_long-data81 = sy-datum + lv_i1.
      ls_long-data91 = lv_i1.
      ls_long-dataa1 = lv_i1.
      ls_long-datab1 = lv_i1.
      ls_long-datac1 = sy-datum + lv_i1.
      ls_long-datad1 = lv_i1.
      ls_long-datae1 = lv_i1.
      ls_long-dataf1 = lv_i1.
      ls_long-datag1 = sy-datum + lv_i1.
      ls_long-datah1 = lv_i1.
      ls_long-datai1 = lv_i1.
      ls_long-dataj1 = lv_i1.
      ls_long-datak1 = sy-datum + lv_i1.
      ls_long-datal1 = lv_i1.
      ls_long-datam1 = lv_i1.
      ls_long-datan1 = sy-datum + lv_i1.
      ls_long-datao1 = lv_i1.
      ls_long-datap1 = lv_i1.
      ls_long-dataq1 = lv_i1.
      ls_long-datar1 = sy-datum + lv_i1.
      ls_long-datas1 = lv_i1.
      ls_long-datat1 = lv_i1.
      ls_long-datau1 = lv_i1.
      ls_long-datav1 = sy-datum + lv_i1.
      ls_long-dataw1 = lv_i1.
      ls_long-datax1 = lv_i1.
      ls_long-datay1 = lv_i1.
      ls_long-dataz1 = sy-datum + lv_i1.
    endform.".
    Thanks & Regards,
    YJR.

  • Questions about authorizations of tables/change requests/badis/locks/lang

    Hi ,
    Few questions I have not been able to find out .
    1) HOw can we ensure that every time we do any change in a table including adding/changing content a change request is generated .Basically to ensure any changes being done are being stored in  a change request .
    2)How to give authorizations to/for a database table ?
    3)can/how we add water marks in scripts and smartforms ?
    4) Can we create and place our own BADIs in SAP standard code?
    5)different LOCK types/categories with clear difference (not the standard SAP help please..)
    6) tips on handling two table controls on one screen.
    7) WHat are the things required if we want to use objects(scripts,texts,smartforms) in different languages ?
    8)multilingual scripts ?
    9) how to have a search help in module pool without using Process on value request ?
    Moderator message - Please - one question per thread and please ask a specific question - post locked
    Edited by: Rob Burbank on Dec 3, 2009 4:29 PM

    FSKB     G/L Account Posting
    this transaction is not working

  • Questions about database application tables connector

    Hi all,
    I need to manage with OIM several databases (each one with its custom tables).
    Also, one of them will be my trusted target on the initial load of users. The structure of our tables is not similar to the included in the example.
    The documentation explains how the OraAppX.xml could be modified but it doesn't speak about relations with "DBTable_nonTrusted.xml" and/or "DBTable_trusted.xml" For example, if I don't have a column called USR_COMM_LANG, could I replace this column name for another that I have in my database ? And what about the references on the "DBTable_nonTrusted.xml" file. Connector doc doesn't explain how references to that field (USR_COMM_LANG---xel_usr_comm_lang) are managed by the connector and if the normal working of the connector could be affected if the name of a variable is changed in the xml conf file.
    It could be that adapters of this connector were hardcoded with the referece to xel_usr_comm_lang (???) .
    The connector documentation includes a section titled "Adding Custom Database Columns for Provisioning and Reconciliation". The first impression reading this document is that it is possible to extend the predefined table rather than create and define a new structure of table.
    Has anyone rebuilt the "DBTable_nonTrusted.xml", "DBTable_trusted.xml" and "OraAppX.xml" files changing all default variables in order to manage a customized table? .
    Many thanks in advance,
    Claudia

    Hi Claudia,
    1) Yes, you must replace the column names in the "column" tag on your XML file for the column names that you have in your database tables. Also, remember that you need to configure the other parameters (like data_type, data_typ_size, etc) according to your database table.
    2) The "xel_data_source" parameter is the attribute name that will be recognized by the OIM and they can be mapped to a form field (UD_DBAPP_XXXX) in your process definition in OIM Design Console.
    3) You can customize your Database Application Tables connector for provisioning as you wish, but some issues exists. In the Known Issues section of the documentation you can see that this connector doesn't work for more than two tables.
    4) To customize your Database Application Tables for Trusted Recon, there are other restrictions because OIM users have some required fields that must be filled to create a user successfully.
    Hope that helps, and please let me know if you have more questions.
    Regards.

  • A question about search help and input help,PLZ take a look at it.

    hi everyone,
    i want to know the difference between search hlep and inpu help
    can anyone tell me about that?
    thanks

    HI
    BOTH ARE SAME
    you can define F4 help in 2 ways
    in SE11 or in the report program
    IN SE11
    Attaching a search help to a table field
    Choose the field name, click on search help tab and
    provide the name of the search help.
    A search help is attached to a field of a table or structure in the maintenance transaction for this table/structure, analogously to attaching to a table. You must assign the interface parameters of the search help to any fields of the table/structure. The search field must be assigned to an EXPORT parameter of the search help at this time.
    Attach the search help to the table field
    The search help ZSTRAVELAG_NAME is therefore directly attached to the field AGENCYNUM of table ZSTRAVELAG.
    Attaching a search help to a data element
    Provide the search help name and the parameter name
    under the further characteristics tab of the data element.
    If the input help of a field is defined by its data element, no further screen fields can be used in the input help.
    Also note that the input F4 help would be available wherever the data element is used.
    Attaching a search help to a screen element
    A search help can be directly assigned to a screen field in two ways.
    The name of the search help must be entered in the Screen Painter in the Attributes for the field in the field Search help.
    The name of the search help can be defined for selection screens in ABAP reports in the PARAMETERS or SELECT-OPTIONS statement directly following the supplement MATCHCODE OBJECT.
    However, input help is only available for this particular screen.
    in REPORT PROGRAM
    in this way we declare in report program
    TYPES : BEGIN OF ST_OBJID_SH,
    OTYPE TYPE HRP1000-OTYPE,
    OBJID TYPE HRP1000-OBJID,
    END OF ST_OBJID_SH.
    DATA : IT_OBJID_SH TYPE STANDARD TABLE OF ST_OBJID_SH.
    DATA : WA_OBJID_SH TYPE ST_OBJID_SH.
    SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-001.
    *SELECT-OPTIONS : S_OTYPE FOR HRP1001-OTYPE NO INTERVALS .
    SELECT-OPTIONS : S_OBJID FOR HRP1001-OBJID NO INTERVALS .
    SELECT-OPTIONS : DATE FOR SY-DATUM NO-EXTENSION OBLIGATORY.
    SELECTION-SCREEN END OF BLOCK B1.
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR S_OBJID-LOW.
    IF S_OBJID IS NOT INITIAL.
    SELECT OTYPE OBJID FROM HRP1000
    INTO TABLE IT_OBJID_SH
    WHERE OTYPE = 'D'.
    IF SY-SUBRC EQ 0.
    SEARCH HELP FOR QUALIFICATION.
    CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
    EXPORTING
    DDIC_STRUCTURE = ' '
    RETFIELD = 'OBJID'
    PVALKEY = ' '
    DYNPPROG = SY-REPID
    DYNPNR = SY-DYNNR
    DYNPROFIELD = 'S_OBJID'
    STEPL = 0
    WINDOW_TITLE =
    VALUE = ' '
    VALUE_ORG = 'S'
    MULTIPLE_CHOICE = ' '
    DISPLAY = ' '
    CALLBACK_PROGRAM = ' '
    CALLBACK_FORM = ' '
    MARK_TAB =
    IMPORTING
    USER_RESET =
    TABLES
    VALUE_TAB = IT_OBJID_SH
    FIELD_TAB =
    RETURN_TAB = RETURN_TAB
    DYNPFLD_MAPPING =
    EXCEPTIONS
    PARAMETER_ERROR = 1
    NO_VALUES_FOUND = 2
    OTHERS = 3
    IF SY-SUBRC <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
    WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF.
    ENDIF.
    Check this out
    http://www.sap-img.com/abap/value-request-for-parameter.htm
    ******************************8
    sample program
    report zrich_0001 .
    data: begin of ihelp occurs 0,
    field type char10,
    ftext type char50,
    end of ihelp.
    data: a_field(20) type c.
    select-options s_field for a_field.
    initialization.
    ihelp-field = 'A'.
    ihelp-ftext = 'Description A'.
    append ihelp.
    ihelp-field = 'B'.
    ihelp-ftext = 'Description B'.
    append ihelp.
    ihelp-field = 'C'.
    ihelp-ftext = 'Description C'.
    append ihelp.
    at selection-screen on value-request for s_field-low.
    call function 'F4IF_INT_TABLE_VALUE_REQUEST'
    exporting
    retfield = 'FIELD'
    dynprofield = 'S_FIELD'
    dynpprog = sy-cprog
    dynpnr = sy-dynnr
    value_org = 'S'
    tables
    value_tab = ihelp.
    start-of-selection.
    one more program....
    REPORT ZHELP .
    TABLES : MARA.
    SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-001.
    PARAMETERS : P_MATNR(10) TYPE C.
    SELECTION-SCREEN END OF BLOCK B1.
    DATA : BEGIN OF ITAB OCCURS 0,
    MATNR TYPE MATNR,
    END OF ITAB.
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_MATNR.
    SELECT MATNR
    FROM MARA
    INTO TABLE ITAB
    UP TO 10 ROWS.
    CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
    EXPORTING
    RETFIELD = 'MATERIAL NUMBER'
    DYNPPROG = SY-REPID
    DYNPNR = SY-DYNNR
    DYNPROFIELD = 'P_MATNR'
    VALUE_ORG = 'S'
    TABLES
    VALUE_TAB = ITAB
    EXCEPTIONS
    PARAMETER_ERROR = 1
    NO_VALUES_FOUND = 2
    OTHERS = 3.
    Create it from SE11.
    enter search help
    and create elementary
    enter description and below Table name
    and the fields
    see the doc
    1) Elementary search helps describe a search path. The elementary search help must define where the data of the hit list should be read from (selection method), how the exchange of values between the screen template and selection method is implemented (interface of the search help) and how the online input help should be defined (online behavior of the search help).
    2) Collective search helps combine several elementary search helps. A collective search help thus can offer several alternative search paths.
    3)An elementary search help defines the standard flow of an input help.
    4) A collective search help combines several elementary search helps. The user can thus choose one of several alternative search paths with a collective search help.
    5)A collective search help comprises several elementary search helps. It combines all the search paths that are meaningful for a field.
    6)Both elementary search helps and other search helps can be included in a collective search help. If other collective search helps are contained in a collective search help, they are expanded to the level of the elementary search helps when the input help is called.
    http://help.sap.com/saphelp_nw04/helpdata/en/cf/21ee38446011d189700000e8322d00/content.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/cf/21ee45446011d189700000e8322d00/content.htm
    pls go through this for search help creation
    http://help.sap.com/saphelp_nw2004s/helpdata/en/41/f6b237fec48c67e10000009b38f8cf/content.htm

  • Question about Workspace enabled tables, triggers

    Hello,
    We have created our tables structured from Oracle Designer and we also have several triggers, API for almost all the tables. While reading Workspace Manager, it seems that after I would execute dbms_wm.enableversioning, it woould rename my table to a view and would creat other views and tables. I have following questions:
    1)What would happen to those triggers which are based on the original tables. Would trigger be attached to the VIEW definition of the origianl table?
    2) Lets assume I have a customer and cust_address tables respectively, I have a customer id =100 which has two customer address rows in the LIVE. I have a workspace is based on cust_address table. Would it be possible for a user to see all the address data ( live + workspace) for customer=100 in one SQL query?
    3) What if I have two live customer address rows in cust_address tables and 3 rows in workspace of cust_address table, does workspace manager allow me to conditionally add and update worskpace rows to LIVE data, ie could I add 1 row from workspace to LIVE and update one row from workspace to LIVE data?
    Thanks for your answers?
    Syed

    Ben,
    Here is our business problem. We receive data in terms of text file regarding our customers. Files contain customer name and address information and customers payments and debts information. For the sake of simplicity,lets assume that I have customer , address, payment , debts and referral table . From the file we only load to teh customer,adderss,payments and debts table, once data is loaded, end user creates referral data which is stored in referral table.
    When we receive data, we are not sure if data contain any customer unique key ( customer id, or SSN etc) , we try to match the incoming data based on last name, first name, date of birth , SSN and address etc, if system find a match then it creates rows in all these 4 tables (customer, address, payments and debts). If system did not find any match then I have another table called potential_match ( with similar columns like customer table plus matched_customer_id) and system insert the customer rows in this table and also insert other data such as address, payments and debts to the respective table. I want to process all these data immediately because business need is to immediately create referral data.
    When an end user find some time, they come to potential_match table and they try to identify if two customers are really same or not, if they decide that two customers data are same then we have to associate address , payments, debts and referral data ( and some data in other tables which have been created by other process) to the original customers. So I need to write a PL/SQL which will basically add all the children records of customer say B to customer say A if A and B are same.
    I was looking into workspace manager and I found that it might be a possible solution and I am not sure how would I utilize WSM so that end user does not have to change the way they used to be working. IF I donot add customer's other data ( address, payments, debt etc) to LIVE immediately then they would not be able to search for the customer debt if the debt is in workspace. I want to give them a transparent look to LIVE and production data all time ( I donot want to give them gotoWorkspace feature). Only few user will have access to potential_match table and gotoWorspace and they will be able to merge /associate to the original customers ie removing from workspace and adding to LIVE. Some time users may want to unmatched also, meaning if they matched two customers into one then if due to some problem it was a wrong mergd then they should be able to unmerged into two different customers and associative data. Users also want to run temporal query such as they want to go back intime and want to see customer debt data as on Dec 2004.
    Based on your experience, how would I be able to design my workspace, do you think WSM is the way to go or I should use my own PL/SQL custom code to implement the problem.? I have never used it so I am not sure, I need to understand its implication. Currently we are using Oracle 8.17 but very soon we are moving to 10G.
    Thanks for all your help.
    Syed

  • ICR Process 003 - question about data selection (table FBICRC003A)

    Hello, I am implementing ICR process 003. We are doing several test and we I have some questions that I hope you can help me:
    1 - If I run transaction FBICS3 - Customer/Vendor(  Select Documents) and then FBICA3 - Customer/Vendor (Document Assignment ) several times (the same selection criteria) will the same documents be selected redundantly and will be stored redundantly in table FBICRC003A? I expected that this will not happen but It seems to happen in my test environment. (?)
    2- If I need to delete the data stored in ICR '003' functionality I need to use transaction GCDE. The problem as I am using ledger '0L' for '003' process I cannot "delete data of one ledger" functionality -that allows to set selection data- and I have to "delete the data of an entire data group" that deletes all data stored in FBICRC003A & FBICRC003T tables. Should I set another ledger for '003' process in order to delete data using selection criteria? Is it recommended to not to use '0L' and create a new one?
    I have read in reference documentation that "is not necessary to set up a SL", but since all my productive companies are running in the same client that is the ICR cliente I am wondering if could be better to create and set a SL.
    Thanks in advance
    Rafael Barreda
    Edited by: Rafael Barreda on Sep 14, 2009 1:27 PM

    Hi Ralph,
    we have created a RFC in order to get data from client B to client A (where ICR system is placed). The summary is:
    I need to import vendors/customer data from Client B that belongs to a certain company code "0001". The company is called "X" in both clients A & B although it only exists as a company code (FI) in Client B and just as a company (and trading partner) in client A.
    Client A:
    1- have set company "0001" as a "Company to be reconciled" at FBIC032:
    RFC destination = ""
    RFC destination for data selection = "ZRFC0001"
    Local company= ""
    Data Source="Documents of Current Process"
    Separate Selection Process= "X"
    Data Transfer Type="Asynchronous via Direct RFC Connection"
    Sender field for reference number = "XBLNR"
    Client B:
    1- I have created the companies (V_T880) that I will need in order to inform trading partner on vendor's master data.
    2- I have assigned company code '0001' to company "X"
    3- I have assigned trading partners created on step 1 to vendors
    4- I have post few FI documents with trading partners informed.
    Then I run FBICS3 - Customer/Vendor: Select Documents in background but the programs takes a lot of time and do not select any document.
    Do you think that I am missing something?
    Thanks very much in advance.

  • One little question about searching partial text in object name

    Hello Everyone,
    I have searched a bit but couldn't find an answer about this.
    I am a Freehand user and i am currently using navigation names for differents items. Works perfectly good.
    But now i need to search part of the items name.
    For example i have the objects named in the nabigation panel as:
    - "ItemA-rotation" for the first group of items
    - "ItemB-static" for the second group of items
    as for now i can search for all the items A by typing in the search graphic panel "ItemA-rotation" but i would like to find both item A and B by typing a unique search request.
    Is it possible to write something like: "*Item*" to search every items that contains the part "Item" in the full name ?
    Thank you for your future answers.
    Cheers.
    PS: i am using Mac os X with Freehand MX.

    It appears it isn't possible. I set up a similar document with spaces added between the word "index" and the letters "A" or "B". My thinking was that the connected wording of your phrase "ItemA-rotation" was limiting the search. But searching for the word "index" didn't reveal all the items; it had to be typed exactly as the name was set up in the Navigation Panel. Perhaps I'm missing some unknown control characters but I have never seen what those could be.

  • Basic question about querying georaster tables

    hello all
    i have a table with georaster column containing georeferenced images covering large area. can i query the table to get an image covering any user given cooordinates . the user given coordinates can span more than one image in the table. is this possible
    thanks

    Hi,
    Yes this is possible to operate with several GeoRaster images in one or several tables. But before this you should create specific GeoRaster metadata structure to join those separate images. You can find information about this procedure in GeoRaster documentation.
    Regards,
    Andrejus

  • BRF+ - NW 7.01 - questions about a decision table

    In my testcase I have set up a decision table with multiple columns. As long as the number of rows is low it is easy to maintain. But we are looking at the possibility to use this kind of business rules in our current project, and then it would end up in at least 1000 or more rows.
    Is there an easy, user friendly way to let the business users maintain such a decision table ?
    Do you need to activate this decision table every time something is changed ?Is it possible to make this decision table local and the rest of the parts (application, data objects, function) transportable ? How can you deal with such a situation in the best way ?
    Is there a query / filter functionality to query a decision table ?
    Best regards,
    Elly van de Wouw
    IT - IFF

    Hi,
    You cannot use such big decision tables in NW 701 but only in NW 702. The reason is a change in the internal data model.
    In NW 701 you will run into timeouts.
    I did some internal testing in our development systems.
    1. programmatically create a decision table with many rows (10 columns)
    2. activate and save
    3. execute it (includes code generation)
    In NW 701 I did achieve around 800 rows and then I had a timeout. I hav to admit the system is also quite poor.
    In NW 702 it took about 100 seconds. In NW 702 you also can maintain the decision table entries in MS Excel and upload into the table.
    You need to activate the changes so that they are used for rules execution. As of NW 702 you further have possibilities to combine local and transported content.
    BR,
    Carsten

  • Question about reading generic tables with keys

    Hello
    I'm wondering if it's possible to read a generic table with key statement:
    FIELD-SYMBOLS:
        <lv_key>         TYPE zconf_key,
        <lt_data_bi>     TYPE INDEX TABLE,
        <lt_data_ai>     TYPE INDEX TABLE,
        <ls_data_bi>     TYPE any,
        <ls_data_ai>     TYPE any.
    * create data types
      CREATE DATA lt_data_bi TYPE (ls_node-data_table_type).
      ASSIGN lt_data_bi->* TO <lt_data_bi>.
      CREATE DATA lt_data_ai TYPE (ls_node-data_table_type).
      ASSIGN lt_data_ai->* TO <lt_data_ai>.
    * do check
      LOOP AT <lt_data_ai> ASSIGNING <ls_data_ai>.
        ASSIGN COMPONENT 'KEY' OF STRUCTURE <ls_data_ai> TO <lv_key>.
        READ TABLE <lt_data_bi> WITH KEY key = <lv_key>
        ASSIGNING <ls_data_bi> BINARY SEARCH.
    I receive the message: "The specified type has no structure and therefore no component called KEY" in the read statement above.
    Does anyone has an idea what I can do here?
    Regards,
      Mathias

    Mathias Glockner wrote:
    >     READ TABLE <lt_data_bi> WITH KEY key = <lv_key>
    In your structure ls_data_bi there is no field called KEY . please check whether you have field KEY in structure
    a®s

Maybe you are looking for

  • Installing AcrobatPro after removing Adobe Reader Safari displayed pdf urls only as a black page anymore

    After installing Acrobat Pro it installs in Library/Internet Plugin-ins/AdobePDFViewer.plugin version 11.0.03. Allthough after selecting a PDF-link it leads to a displays it not in Acrobat Pro, it diplays it as a black page in Safari. When I have a l

  • Upgrade Coldfusion 8 Multiserver to Coldfusion 9 Multiserver

    So I am working on a new web environment that we are planning to rollout in January and I have all of the servers setup, configured and ready to go.  They are running CF 8 multiserver and everything runs pretty great right now.  Now that coldfusion 9

  • Controlling time in Actionscript 3.0

    I was wondering if there is a way to directly control time in AS 3.0 I have some code such as: thumb1.addEventListener(MouseEvent.ROLL_OVER, scaleUP) function scaleUP(e:MouseEvent):void { thumb1.scaleX = thumb1.scaleY = 1.5 Obviously, this instantly

  • Error Message for Integrity Constraint

    Hi, I have a table with called TMREF_MEDIATION_DATA_TREATMENT and one called TMREF_UOC_CRITERIA_MAPPING. There is a foreign key constraint and the TMREF_UOC_CRITERIA_MAPPING table has the UID column from the other table in it. When I select delete fo

  • Viewing RBG Channels in Bridge.

    Morning Guys and Gals, is there any way to independently view the RGBA channels of an image in Bridge? Cheers S