The cube measures

Hi people,

I'm fairly new Oracle OLAP & AWM and currently in the process of designing cubes. In this context I would ask your advisor on the underside.

We can map the measures in the cube to multiple fact tables? will know the bottom is possible.

A fact - D1 and D2 as dimensions. M1 as
Fact B - D1 and D2 as dimensions. M2 as a measure
Cube - D1 and D2 as dimensions. M1 and M2 as a measure.

Although the two fact common dimension tables, I shouldn't join the two of them directly because we will miss the lines.

See you soon...

Hello

Creating cube 1-> from from-> fact 1
Cube 2-> from from-> fact 2

then creation cube 3 including common fades and no aggregation not defined on them. cube 3 is not any measure. We have only calculated measures that will point to cube1.measures and cube2.measures. Cube3 is not all mappings.

Kind regards

Published by: 866099 on October 6, 2011 05:13

Tags: Business Intelligence

Similar Questions

  • Change the name of the measure after the cube is built

    Hello

    Is it possible to change the name of the measure after a cube is built?

    Or is it possible to change the name of the measure in the view?

    Any measure not referred to in the XML fragment will be left intact. So no, you don't have to rename the other measures or even to list them.

  • Expressions of QDR in OLAP cube measures calculated

    Hello everyone,

    I'm going crazy with a calculated measure in OLAP Analytic Workspace Manager, which is defined as an Expression of the following OLAP syntax:

    NVL (CUBE. MEASURE1 [DIM1 = 'A'], 0) + NVL (CUBE. Date2 [DIM2 = 'B'], 0)

    Where:

    CUBE. MEASURE1 and CUBE. Date2 are not calculated measures, they are stored measures.

    Dim1 and DIM2 are the edges of the CUBE, A and B values both exist in their dimensions.

    In most of my questions, the calculated measure retrieves the correct results, when two members of the sum gets the data. But I have other cases, the calculated measure retrieves null!

    In these cases, the calculated measure retrieves null when the CUBE. Date2 [DIM2 = 'B'] retrieves NO results. But I think that if none of the two expressions QDR retrieves no results, NVL function will be replaced by 0.

    I read about this, situations where the QDR expressions get no result, by default, it throws and error and non-null o NA value. I found that there are 2 options of ORACLE DML that can manage this type of situation:

    LIMITSTRICT = NO (http://docs.oracle.com/cd/B28359_01/olap.111/b28126/dml_options043.htm#OLADM384)

    OKNULLSTATUS = YES (http://docs.oracle.com/cd/B28359_01/olap.111/b28126/dml_options077.htm#OLADM418)

    I tried to create a DML function in the AW to define two options, first to NO, then Yes and returns 0, call this function with the instruction OLAP_DML_EXPRESSION ('MyFunc', NUMBER), but it does not work

    Exchange monitoring calculated like this: OLAP_DML_EXPRESSION ('MyFunc', NUMBER) + NVL (CUBE. MEASURE1 [DIM1 = 'A'], 0) + NVL (CUBE. Date2 [DIM2 = 'B'], 0)

    Please, I need a solution to bypass this, how can I catch these situations? Should I create a program of LMD to solve? Where I put this default option (LIMITSTRICT, OKNULLSTATUS) and put them in each measurement calculation?

    Thanks in advance for the answer.

    Great, you can not use a formula directly? No missing documents, such as observed earlier?

    For example the formula =

    IF (CUBE_MEASURE1 (DIM1 'A')) NAFLAG EQ 0 THEN CUBE_MEASURE1 (DIM1 'A') ELSE 0 + IF (CUBE_MEASURE2 (DIM2 'B')) NAFLAG EQ 0 THEN CUBE_MEASURE2 (DIM2 'B') ELSE 0

    If this expression does not work in a single formula, set rather measures 3 Meas1/2/3...

    (I generally prefer many formulas compared with olap dml program option in the mix...-online program looping on several other dimensions values is sometimes tricky to control/understand.)

    Meas1 = IF (CUBE_MEASURE1 (DIM1 'A')) NAFLAG EQ 0 THEN CUBE_MEASURE1 (DIM1 'A') ELSE 0

    and

    Meas2 = IF (CUBE_MEASURE2 (DIM2 'B')) NAFLAG EQ 0 THEN CUBE_MEASURE2 (DIM2 'B') ELSE 0

    Then set

    Meas3 = Meas1 + Meas2

  • Calculated measure (OLAP language) of the calculated measure (Expression OLAP)

    Hi, once again!

    I need to create a calculated measure in the form of free type AWM (OLAP Expression, with the condition BOX) based on the results of another measure calculated again with the status of the CASE.

    For example, I have a few basic measure number of type 'BM1', 'BM2', "BM3" . And I create a calculated measure "BM_AMOUNT" that returns a number if 'BM1' is not null or 0 with the expression:

    CASE

    WHEN BM1 = 0 or BM1 is NULL THEN NULL

    ANOTHER (BM2 - BM3) / BM1

    END

    And then I create a different "BM_PT" calculated measure that returns points based on the value of the first expression:

    CASE

    WHEN BM_AMOUNT > 0 THEN 0

    ANOTHER 20

    END

    Now, when I want to create the second expression I get error: XOQ-01958derived measure is a type of invalid data or data of any kind.

    I found a way to work around this - I create first the measure with the NUMBER type and then change it to the expression of OLAP, and it works.

    However, the problem is when I export the cube and that you want to import on another instance. Then, I get the same error for this measure "BM_PT" and impossible to import the cube.

    The only way I've found is to edit the XML code and remove the measure, then create it manually as mentioned above (type NUMBER then change it), but it would be really nice if there is another way to knit this tour. This is so my question, is it?

    * The example is just to help understand what I want to achieve and what is not correct.

    Re: #2

    If you use OLAP DML, if CUBE_DDS is the name of the cube and DOOD is the name of the measure then the expression to use in the formula of the OLAP DML is _.

    Try with CUBE_DDS_DOOD, CUBE_DDS_F0150, CUBE_DDS_DO0, CUBE_DDS_SF0213, CUBE_DDS_F0180 etc., in the formula.

    In AWM, you can open the OLAP worksheet and check if the following expressions are valid by publishing a

    > CUBE_DDS_DOOD DSC

    order

    Formula:

    > If nafill(CUBE_DDS_DOOD,0) eq 0 then na to another ((CUBE_DDS_F0150 + (CUBE_DDS_DO0 + CUBE_DDS_SF0213) * 0.2) - CUBE_DDS_SF0213 - CUBE_DDS_F0180) / end CUBE_DDS_DOOD

  • Rebuild the Dimension flushes out the Cube data

    Hi David,

    I want to change the details of implementation of one of my "main data sources using" surrogate key dimesion After applying my dimension data gone...

    Now run below:

    exec dbms_cube.build ("CLIENT using (LOAD NO SYNCH, COMPILATION)" ");

    I expect the cube compilation would be made to keep my old data with the change of measures only. But all the data cube flushes out. A way to get that back without rerunning cube is fully charged.

    Thank you very much
    DxP

    No, I'm afraid you will need to reload the cube. Switching to 'use key data sources' means that we have to remove all the existing dimension members and thus the associated cube data.

  • Dimension of the Cube

    Hello

    I recently received some excellent comments on how to load measurement data in the cube, but here's my stupid question but fundamental. If I am currently using views initially to aggregate my measurements in fact table, and table is indeed stretching across multiple dimensions, how can I properly build the dimensionality of my cube?

    Current measures are facts:
    Fact table has called dimensions Segment and product and called measure scale.

    I have a view for each dimension up to now:
    create or replace view vw_segt as
    Select the segment, sum (balance)
    the fact table

    create or replace view vw_prd as
    Select the product, sum (balance)
    the fact table

    Now my obvious obstacle arises when I map a measure that I created in the cube for these two dimensions, so please offer some additional guidance. The examples given in the documents of the Oracle make it look very clear cut by mapping the dimensions in the table of facts, but we know that its not easy (for me at least) that the values will not be replaced if dimension appears again.

    Thank you
    Mike

    Mike,

    Its better if you establish a level Top model for your two dimensions (as they are currently a list of unique level of values).

    Aggregation of the cube is on the edge of the hierarchies of dimension using the operators specified in the cube. If its wrong to wait for the fact to be grouped If the dimension is a single level (list of values). There is no placeholder (members) to the sum of all the calculated members and store.

    Also if multiple (or all) values of a product of dimension, say, are in a State, then an expression of measurement done with 1 single specified dimension - member of the Dimension of Segment Segment_1 - will give you the of fact value for the first product of the status.

    Note: If not specified, the value is the first product of the status, not the sum of all products in the State. Summary by the default behavior will do wrong when non-sommables measures such as "balance % variance" are used instead of just sales or the balance (which measures).

    If you have a high level along the product and segment side then the action to remove Viewer product to Segment Segment_1 dimension cube will be the user interface to use the upper level of the product dimension missing (usually the top member is the first element in the default status of the dimension list) and give you the sum aggregate of all Segment_1 products.

    -segment
    create or replace view vw_segt as
    Select your distinct industry, 'Segment Total' as HUBERT
    the fact table
    ;

    -products
    create or replace view vw_prd as
    Select distinct, product 'Total' as TPROD
    the fact table
    ;

    -View of fact
    create or replace view fact_vw as
    Select the segment, product, sum (balance)
    the fact table
    Product segment group
    ;

    HTH
    Shankar

  • The lowest level in the cube aggregation

    Hi guys

    I designed cube of simple test with a single dimension (the two leads MOLAP).

    The PRODUCT dimension consists of three levels:
    -Group
    -Category
    -Product_detail

    Table PRODUCT_SRC to load the PRODUCT dimension:

    PR_GROUP_NAME PR_GROUP_ID PR_CATEGORY_NAME PR_CATEGORY_ID PR_DETAIL_NAME PRODUCT_DETAIL_ID

    1000 dairy yogurts 1000000 yoghurt_1 1000000000
    1000 dairy yogurts 1000000 yoghurt_2 1000000001
    1000 dairy yogurts 1000000 yoghurt_3 1000000002
    Candy cookies_1 1000001 1001 1000000003 cookies
    Candy cookies_2 1000001 1001 1000000004 cookies
    Candy cookies_3 1000001 1001 1000000005 cookies
    1002 1000002 juice_1 1000000006 juice drinks
    1002 drinks mineral water 1000003 mineral_water_1 1000000007
    1002 1000004 energy_drink_1 1000000008 beverage energy drink


    The SALES cube has a measure:
    -Value_of_sales (sum aggr)

    Table SALES_SRC to load the SALES cube:

    PROD_ID ID VALUE

    1236 1000000002 2
    115 1000000006 3
    1697 1000000005 4
    12-1000000004-5
    168 1000000008 6
    7 1000000005 1984
    9684 1000000004 8
    84-1000000002-9
    8 1000000007 10
    498 1000000006 11
    4894 1000000008 12
    4984 1000000004 13
    448 1000000003 14
    4489 1000000004 15
    13 1000000001 16
    879 1000000004 17
    896 1000000006 18
    4646 1000000007 20

    I created the PRODUCT dimension and a mapping which loads the data in the dimension. It worked perfectly. The hierarchy has been created as I expected.

    Then, I created a mapping that should load the data into the cube and cube SALES. It's very very simple mapping - there were only two points on the canvas:

    -Table SALES_SRC
    and
    -Cube SALE

    and two lines:

    -of SALES_SRC. VALUE of SALE. VALUE_OF_SALES
    -of SALES_SRC. PROD_ID to turnover. PRODUCT_NAME

    Then, I have deployed everything and ran mapping, which cube load. , But in my opinion the cube was not populated properly, because this was no aggregation performed at the lowest level of the hierarchy product - it there was only a value of the first occurrence of certain product. I mean:

    Turnover. CBC, we have for example:

    PROD_ID ID VALUE

    1236 1000000002 2
    84-1000000002-9

    For me the value of the cube must be 1236 + 84 = 1320, but the value of the cube, at PRODUCT_DETAIL_LEVEL, for yoghurt_3 is only 1236 - first occurrence of this product on SALE. CBC.


    Why was not the aggregate data at the lowest level of the hierarchy of the PRODUCT dimension - is this the way that OWB did these things?

    Should I manually before boarding to the cube data aggregation (just to use aggregator of aggregation of the data at the lowest level)? If so - what incremental loading of cube data (the old value of the value is simply replaced by a new and not added in the cube)

    In solutions of other vendors data warehouse cube in such a situation is responsible as I expected here.

    I don't really know what to do. I really appreciate help on your part.

    Thanks in advance

    Peter

    If you have several facts for identical dimension member keys then you need to deal with this by aggregation or select the first/last etc...

    See you soon
    David

  • No data loaded in the cube

    Hello

    I created four dimensions, all validated, deployed and loaded successfully.

    I created a cube and used a Carpenter to load the table keys. There a just measure, and I'm charging from another table.

    I ran a query with a join condition (where clause) in Oracle SQL developer, it returns the desired result.
    So I use the same join condition, in the cube.

    the cube and the corresponding card is validated and successfully deployed. When I run the map, it inserts No., records in the corresponding table of the cube.

    Please, help me to solve this problem.

    Best regards

    PS: I'm using OWB 11 g on SUSE 10.2

    The process of loading in a cube do a join with the dimensions.

    "D_DIMENSION_X"."DIMENSION_CODE" = "INGRP1"."D_DIMENSION_CODE" )
    

    So, you may have no problem even if a dimension code is missing in the dimension table.
    I had the problem with the time dimension (missing the id of the year for example) and it's very hard to find.

    First of all, you must retrieve the generated SQL code:
    Check in this article how to have the SQL (sql intermediate generation)
    http://gerardnico.com/wiki/DW/ETL/OWB/owb_mapping_debugger

    Then take the sql and run it by removing a dimension, see if you have data in your sql
    and repeat the steps until you see the light.

    Good luck
    Nico

  • Do not see the Option Measurement Studio Visual Studio 2008 project

    I just installed Measurement Studio 2010 sp1 for Visual Studio 2008, but I don't get the option Measurement Studio Visual Studio 2008 under any .net language project. I have to configure something else?

    Thank you

    I use the professional version of Visual Studio, and YES that's what I wanted. In fact just, I solved the problem by removing and then reinstalling Measurement Studio.

    Kind regards

  • The spectral measurement VI allow the reference value of 20 microPa dB

    I want to show a FFT of sound pressure level in DB(a), where the reference should be 20-06 PA.  All the Spectral measure of VI I can find using a 1.0 dB reference.  The spectral measurement VI allow a reference to 20th-06 Pa?  I have the Sound and Vibration Toolkit.  Thank you.

    Rick

    In the Sound and Vibration Toolkit, there is a VI called Set dB reference.  This VI will set the dB reference for your data for you or you can take a look at how that VI changes the attributes of the waveform and impliment the scaling on your own. Once your data dB reference is correctly adjusted the screw of the FFT should display the data with respect to this property.

  • How to install the spectral measures and Modulation for several versions of Labview Toolkits


    Hello dear,
    This is a known issue. You can read in the readme of the modulation toolkit:

    Two Versions of LabVIEW installed
    The installer supports the installation of the Modulation Toolkit into one
    version of LabVIEW; installation of the tool in several separate
    facilities (e.g. LabVIEW 7.0 and 7.1 installed LabVIEW LabVIEW
    on the same PC or in separate directories) is not supported or recommended.
    A way not supported to do but involves manually copying files from
    one LabVIEW installation to another. To do this, you can install the
    Modulation Toolkit to the base of a LabVIEW installation directory, and
    then manually copy the files installed in the other installation of LabVIEW.
    The following list includes files and relevant directories. Copy all the files
    These directories, including subdirectories, using the equivalent
    paths related to the House LabVIEW directory for the target.

    \vi.lib\AddOns\Modulation\*.*
    \vi.lib\AddOns\NISML\*.*
    \examples\Modulation\*.*
    \resource\objmgr\NIMTAttribs.RC
    \resource\objmgr\NIMTAttribs.RCH
    \help\lvmod.txt
    \help\lvmod.chm
    \help\lvdmt.txt
    \help\lvdmt.chm

    Note that this list does not include installed files. Also, copy
    the files in this way is not equivalent to a complete installation in the
    another version of LabVIEW. Especially own error text to the
    Modulation Toolkit will not be updated and the example Finder ads will be
    the examples of Modulation Toolkit.

    Jerome

    "CherieC" wrote in message news:
    [email protected]...
    > I installed NOR-RFSG, NOR-DAMA, the Spectral Measurements Toolkit, as well as the
    > Modulation Toolkit.  I have two LabVIEW 7.1 and 8.0 installed on my
    > system.  I developed an application in BT 8.0 and now I need to come back
    > to LV 7.1.  The problem I have is that the add-on toolkits appear to
    > only have been installed for LV 8.0 because there are several missing screws
    > and control when I try to open the LV 7.1 version.  I tried
    > re - install tool boxes, but this is not solved the problem.  How
    > can I get the installation program to install the toolboxes for two versions of
    > LabVIEW?
    >
    > Thanks for your help,.
    > Honey

  • How can I take several consecutive steps of a frequency meter and keep the previous measure?

    I'm sorry, I'm very new to view lab and I am taking several consecutive steps of a frequency counter. I place the sub measures VI and the indicator with a loop and then set N to the number of iterations. The problem is that I don't get a box in my display board when I need all the previous measures taken for this iteration. Thanks for your time.

    Your data inside the loop to an object outside the loop of the wire. Right-click on the tunnel and turn on indexing. You will have a 2D array (if your data was in 1 d) where each row (row or column, you will need to understand) is the result of the iteration.

    You can separate the 2D table by using the Index of table vi.

  • Why the continuous measurement and Logging in LabVIEW 2012 Project uses strings instead of Enums and orders from the queue?

    Hello!

    I noticed that the continuous measurement and a project in LabVIEW 2012 Logging using chains instead of enums and orders from the queue. I wonder if there is a good reason for it?

    Kind regards

    Anguel

    First, string vs enum debate is probably the version of LabVIEW vim vs emacs. There are good arguments on both sides, and I doubt that there is always a "winner".

    A brief summary of our reasoning for the current state of the project examples:

    1. We used enums for the state machine because it is self-contained. A state machine will never tell himself to enter a State, he does not know. Knowing (as the programmer) all possible States with the help of an enum allows you to enlist the compiler in order to help us avoid mistakes to change the time (because you can't quite out an enum and LabVIEW can be said if you are not covering all cases to a structure of the case, etc..).

      Enums provide greater protection and rigidity by ensuring all withdrew at the time of publishing. This is often the 'default' recommendation that we do.

    2. We used strings for messages in queue manager because the producer of message and the message handler could be independent processes that are reused or traded. Channels avoid the need for the compiler to be able to connect the orders and push this responsibility to the programmer. This allows you to develop some sub-components independently as long as you agree to a series of channel commands that you can manage - you need not to share a file 'messages.ctl' or 'states.ctl '. It is conceivable a loop of message management a message it does not, how you can decide to either silently ignore it or will trigger an error (as we do in the model). The strings make it also easier if you want to swap the queues of LabVIEW outside by a TCP implementation for network vacilitate or intra-Processuse communication where the other end may or may not be written in LabVIEW.

      Channels to provide more flexibility (that is, you can add new commands to an existing via plugins system, you can pass parameters as part of the string, etc.) at the expense of pushing her potential errors at run time and to put more responsibility on the programmer.

    3. The actor's gifts frame a 3rd option - using classes such as messages. For me, it combines many of the advantages of these two enumerations (strictly typed, change errors) and strings (flexible and scalable), but with the disadvantage of being somewhat less transparent (you understand OO, be comfortable to navigate through a multitude of screws, legacy of understanding, etc.).

    I don't know there are other reasons, others to the breast OR had or seen as we validated models and examples of projects in-house, but here are my reasons. We know that we can not design for each situation there - our goal is to get useful models against new users to make them aware of what well thought LabVIEW programs are similar to experienced users know their applications better and I hope they do not hesitate to change what we provide or create their own designs, when they feel it's necessary. (On a side note, please share what you come up with - a community of experts sharing models would be really useful to us all LabVIEW users).

    Best regards

    Simon

  • TP, video call Cube for the Cube

    Hello world

    I need some advice,

    I have two side;

    First; CCM 6.1.5 + CTMS (Cisco telepresence Multipoint Switch) + Telepresence Cisco 3845 (c3845-adventerprisek9_ivs - mz.124 - 22.YB8.bin) of 1000 +.

    Second; CTMS + TP + CCM 8.5 1000 + 3945 (3900-universalk9-mz. Spa.150 - 1.M4.bin).

    I tried video call on the cube for the cube. I did some configs but will try tomorrow J.

    I need some answers:

    • 3845 router has not mpov, mpov it mandatory for cube calls?
    • 3845 router is it need license for cube?

    Here's the configs;

    3945 router config-

    voice, send rtp-received

    !

    voip phone service

    allow sip to sip connections

    Fax protocol t38 ls-redundancy hs 0-redundancy help 0 no

    SIP

    binding control source-interface GigabitEthernet0/0.21

    bind media source-interface GigabitEthernet0/0.21

    offer-early forced

    !

    voice class codec 1

    Aacld of preference profile 1 Codec 1

    Profile of h264 codec video 2

    !

    !

    interface GigabitEthernet0/0.21

    encapsulation dot1Q 21

    address IP CUBE3945 I_WANIP

    !

    !

    IP forward-Protocol ND

    !

    IP http server

    no ip http secure server

    !

    !

    !

    !

    aacld profile 1 codec

    fmtp "fmtp:96 profile-level-id = 16; streamtype = 5; mode = AAChbr; config = B98C00; sizeLength = 13; indexLength = 3; indexDeltaLength = 3; constantDuration = 480.

    !

    !

    Codec h264 profile 2

    fmtp "fmtp:112 profile-level-id = 4 d 0028; apors-parametersets = R00AKAmWUgDwBDyA, SGE7jyA =; radio-mode = 1.

    !

    !

    Dial-peer voice 1 voip

    Description to_CCM85

    service logon

    RTP payload type cisco-codec-fax-ind 110

    RTP payload type cisco-codec-aacld 96

    RTP payload type cisco-codec-video-h264 112

    session protocol sipv2

    session target ipv4: CCM85_IP

    incoming called number 10...

    codec voice-class 1

    DTMF-relay rtp - nte

    !

    Dial-peer voice 2 voip

    Description to_CCM615

    service logon

    destination-model 7...

    RTP payload type cisco-codec-fax-ind 110

    RTP payload type cisco-codec-aacld 96

    RTP payload type cisco-codec-video-h264 112

    session protocol sipv2

    session target ipv4: 3845cube_wanIp

    codec voice-class 1

    DTMF-relay rtp - nte

    !

    3845 router config-

    voip phone service

    media stream-autour

    allow sip to sip connections

    SIP

    binding control source-interface GigabitEthernet0/1.21

    bind media source-interface GigabitEthernet0/1.21

    offer-early forced

    !

    !

    !

    voice class codec 1

    Aacld of preference profile 1 Codec 1

    Profile of h264 codec video 2

    !

    !

    !

    interface GigabitEthernet0/1.21

    encapsulation dot1Q 21

    address IP CM6_wanIp

    !

    aacld profile 1 codec

    fmtp "fmtp:96 profile-level-id = 16; streamtype = 5; mode = AAChbr; config = B98C00; sizeLength = 13; indexLength = 3; indexDeltaLength = 3; constantDuration = 480.

    !

    Codec h264 profile 2

    fmtp "fmtp:112 profile-level-id = 4 d 0028; apors-parametersets = R00AKAmWUgDwBDyA, SGE7jyA =; radio-mode = 1.

    !

    !

    !

    Dial-peer voice 1 voip

    Description to_CM8

    service logon

    destination-model 10...

    RTP payload type cisco-codec-fax-ind 110

    RTP payload type cisco-codec-aacld 96

    RTP payload type cisco-codec-video-h264 112

    codec voice-class 1

    session protocol sipv2

    session target ipv4:3945_wanIp

    DTMF-relay rtp - nte

    !

    Dial-peer voice 2 voip

    Description to_CM6

    service logon

    RTP payload type cisco-codec-fax-ind 110

    RTP payload type cisco-codec-aacld 96

    RTP payload type cisco-codec-video-h264 112

    codec voice-class 1

    session protocol sipv2

    session target ipv4:CM6_IP

    incoming called-number 7...

    DTMF-relay rtp - nte

    !

    Best, thank you...

    Barris salvation,

    Try adding the following configuration:

    voip phone service
    RTP ssrc multiplex
    address - hide
    allow sip to sip connections
    SIP
    midcall-signalling passthru
    tcp transport session
    passage of Header error-passthru
    amp content sdp
    rel1xx disable

    Thank you

    Paul

  • How to resize an object on a layer, while a certain characteristic of the image measures a certain width?

    Hello

    I have a number of images of preparation of animals and they all must be 40mm at 300 DPI from tip of nose to their buttocks. The problem is a bunch of them have antennas, of long ears, long tail, etc. which may not be included in the measure, which prevents me to perform the entire image a certain size. How the entire image would turn so I can be sure that most of the animal measured exactly 40mm? TYIA!

    Crop the image for measurement points (do not delete the cropped pixels). Then the Image-> resize to 40 mm wide with 300 dpi. Then select reveals all and crop once again if you want.

Maybe you are looking for