Mixing units of measure
Working in RH7, with content distributed as Webhelp, any
reason to prefer one unit of measure over another? Does HTML or do
browsers generally handle any better than others? RH logically
seems to require points for fonts, defaults to pixels for graphics,
but what about setting (1) line spacing in styles, including the RH
native Lists style, or setting (2) table column width. I have never
switched to a monitor with a different pixel size and had things
look messed up, but wouldn’t that happen?
Yes, it's the mixing of print measurements with electronic
media measurements that makes me wonder where things might go
wrong, or why they don't. A pixel is a thing of arbitrary size, not
a dimension, right? So the displayed size of a picture sized to 200
x 150 pixels depends on screen resolution. A point is a fixed
dimension, yet the displayed size of text that sized and spaced in
points also changes depending on screen resolution. So points are
not treated as fixed dimensions. At least not always. Why not? And
where not? And what happens when you move content from an
electronic display environment to a print environment when, for
example, you convert from Robohelp topics to Word documents? If no
one ever has problems these inconsistent units of measure, what's
going on behind the scenes that makes it all work out so
well?
Similar Messages
-
AffineTransform - Is there a way to glean units of measurement for pixels?
Assuming I get a pointer to a java.awt.geom.AffineTransform from:
java.awt.geom.AffineTransform CurTransform = ((java.awt.Graphics2D)this.getMainFrame().getGraphics()).getDeviceConfiguration().getDefaultTransform();
Assuming I've gotten the right AffineTransform... How do I get, or can I get, the scaling factor between horizontal pixels and vertical pixels for the current screen (or whatever device). In other words I want to place components... buttons, textboxes, etc. in a dialog box so that they are "square". i.e. 10 units in x look on the screen equal to 10 units in y.
Once I know what the "square pixel scale factor" is I can then worry about making the units relative to whatever font size.
This question is usually posed as "How do I get dialog units?". I haven't done that because of the "legacy problems" associated with what most people think dialog units come from. It is true that way back when dialog units were derived from a textmetrics ONLY, but unless I'm mistaken, Charles Petzold, was describing something that could only be gotten that way at that time (circa 1990).... The width of the fixed system font by the height of the fixed system font ended up being as close to a unit that was 8 units high looked like 8 units wide in the screen. The object of the exercise is to most importantly get units of measurement that translate to pixels and look "square" on the screen. Secondarily, but not unimportant, is to be a unit that has some relevance to the current font size. It's been a long time dialog units in windows maybe a 2:1 ratio. I made my own cDialogUnits so long ago I can't remember what the "standard windows" dialog unit is. In windows I can very easily get the screen dpi x and y, I think it's a devicecontext but Java's "devicecontext" only gives one dimension of the dpi?
Also this query is mute if I was "painting" on a device. The units are for pixels NOT points and are (mostly) for placing controls on the screen. I am aware of and have used the various addPreferredGap and setAutoCreateContainerGaps available in a GroupLayout... Great gizmos but, still dialog units would be very handy for setting the prefered width of a textbox/label with too much text. (Note: dialog units are NOT for calculating the height of text... )
I did search the sun forums for an answer first... It might be here I just didn't find it. It seems to be a question either avoided like the plague or considered a dumb question in Java.This might be OK?
BE AWARE!! This is NOT a painting gizmo. It is used in conjunction with the Layout gizmos. It drives me crazy that the Layout gizmos have "default" gaps and spacers of some kind and yet ALL the tutorials immediately and unabashedly trash any "device independence" by mixing in pixel measurements... Not to mention I don't like the size of the gaps and spacing provided with the Layout gizmos anyway.
Does anyone know if this will fail? I am aware of the caveats provided... "Information about the device is only as good as has been provided." However if there is bad information in the device info I doubt using these units will do anything much different that the end user experiences with the errant device anyway.
AGAIN... This is NOT a painting gizmo. It's a helper when Laying out controls usually in conjunction with a Layout and only for spaces and gaps.
public class DialogUnits
private double m_x;
private double m_y;
public DialogUnits( java.awt.Graphics2D g2 )
java.awt.GraphicsConfiguration gc = g2.getDeviceConfiguration();
java.awt.geom.AffineTransform at = gc.getDefaultTransform();
at.concatenate( gc.getNormalizingTransform() );
double fs = g2.getFont().getSize2D();
m_x = at.getScaleX() * fs;
m_y = at.getScaleY() * fs;
public int CalcX( double units )
return (int)Math.round( ( units * m_x ) / 8.0 );
public int CalcY( double units )
return (int)Math.round( ( units * m_y ) / 8.0 );
public int ContainerGapX()
return this.CalcX( 8.0 );
public int ContainerGapY()
return this.CalcY( 8.0 );
public int FontSize2dX( int crude_columns )
return (int)Math.round( crude_columns * m_x );
public int FontSize2dY( int crude_rows )
return (int)Math.round( crude_line_height * m_y );
public int X( int units )
return this.CalcX( units );
public int Y( int units )
return this.CalcY( units );
} // end of class DialogUnits -
Hi,
In order to implement the Alternate units of measure -
I need to implement user exit and activate enhancement RSR0001. In the description below is listed what to implement of includes. In the function group XRSR - I have added the code to the includes ZXRSRTOP and ZXRSRU01. These are both a part of the group. But the last one ZXRSRF01 is not in the include folder. I tried to create an include by right click on the include folder and choose create - I named it ZXRSRF01 and copied the code into it. But it is still not to be found in the XRSR function group and when I check the program the get_form call raises and error in the code of the include ZXRSRU01. How to get the include in the function group or is there another solution?
From SAP - How to...report data in alternate units of measure.
3.7 User Exit for Variables
Implement user exit for variables and activate enhancement RSR00001.
***INCLUDE ZXRSRTOP.
Enhancement: Alternate U.o.M.
DATA: g_aunit TYPE /bi0/oimat_unit.
***INCLUDE ZXRSRU01.
Enhancement: Alternate U.o.M.
DATA:
l_s_range TYPE rsr_s_rangesid,
l_s_var TYPE rrs0_s_var_range.
l_dummy(72) TYPE c. "delete
DATA:
l_factor TYPE f,
l_factor1 TYPE f,
l_factor2 TYPE f,
l_msgv1 LIKE sy-msgv1, "insert
l_msgv2 LIKE sy-msgv2, "insert
l_msgv3 LIKE sy-msgv3, "insert
l_material LIKE /bi0/pmaterial-material,
l_base_uom LIKE /bi0/pmaterial-base_uom.
Called after user input
IF i_step = 3.
Get variable for alternative unit entered by user
Validate entry and store as global variable
READ TABLE i_t_var_range WITH KEY vnam = 'YTAUNIT' INTO l_s_var.
IF sy-subrc = 0.
TRANSLATE l_s_var-low TO UPPER CASE. "#EC TRANSLANG
CALL FUNCTION 'CONVERSION_EXIT_CUNIT_INPUT'
EXPORTING
input = l_s_var-low
language = sy-langu
IMPORTING
output = g_aunit
EXCEPTIONS
unit_not_found = 1
OTHERS = 2.
IF sy-subrc <> 0.
Error: Please enter a valid unit of measure
l_msgv1 = 'Unknown unit of measure:'.
l_msgv2 = l_s_var-low. "insert
l_msgv3 = '. Please enter a valid unit of measure.'.
CALL FUNCTION 'RRMS_MESSAGE_HANDLING'
EXPORTING
i_class = 'R9'
i_type = 'E'
i_number = '000'
i_msgv1 = l_msgv1
i_msgv2 = l_msgv2 "change
i_msgv3 = l_msgv3
EXCEPTIONS
dummy = 0
OTHERS = 0.
CALL FUNCTION 'RRMS_MESSAGES_SHOW'.
CALL FUNCTION 'RRMS_MESSAGES_DELETE'.
sy-subrc = 4.
RAISE again. "#EC *
ENDIF.
ENDIF.
ENDIF.
Called from "Get Attribute" Function (Modification)
I_VNAM Attribute (not the name of the formula variable)
I_IOBJNM InfoObject
I_T_VAR_RANGE Contains characteristic value, attribute value,
unit of measure, query key date
IF i_step = 0 AND i_vnam = 'YUOMCNVF' AND i_iobjnm = '0MATERIAL'.
read material and base uom from variables
LOOP AT i_t_var_range INTO l_s_var.
CASE l_s_var-iobjnm.
WHEN '0MATERIAL'. l_material = l_s_var-low.
WHEN '0BASE_UOM'. l_base_uom = l_s_var-low.
ENDCASE.
ENDLOOP.
get factor for base UoM
PERFORM get_factor USING l_material l_base_uom l_factor1.
get factor for alternate UoM
PERFORM get_factor USING l_material g_aunit l_factor2.
return conversion factor for variable
IF l_factor2 <> '0.0'.
l_factor = l_factor1 / l_factor2.
e_meeht = g_aunit. "insert
ELSE.
When the UoM conversion is not maintained, instead of showing 0, the
base UoM with a factor of 1 is used. Therefore, the user sees MIXED
VALUES in the total line and knows right away that there is something
wrong. That way its easier to track inexistent conversion factors.
l_factor = 0. "delete
l_factor = 1. "insert
e_meeht = l_base_uom. "insert
ENDIF.
CLEAR l_s_range.
l_s_range-sign = 'I'.
l_s_range-opt = 'EQ'.
l_s_range-low = l_factor.
APPEND l_s_range TO e_t_range.
e_meeht = g_aunit. "delete
ENDIF.
***INCLUDE ZXRSRF01.
*& Form get_factor
Get conversion factor from /bi0/pmat_unit
FORM get_factor USING i_material TYPE /bi0/oimaterial
i_mat_unit TYPE /bi0/oimat_unit
e_factor.
TYPES:
BEGIN OF ys_mat_unit,
material TYPE /bi0/oimaterial,
mat_unit TYPE /bi0/oimat_unit,
numerator TYPE /bi0/oinumerator,
denomintr TYPE /bi0/oidenomintr,
END OF ys_mat_unit.
DATA:
l_s_mat_unit TYPE ys_mat_unit.
STATICS:
s_t_mat_unit TYPE SORTED TABLE OF ys_mat_unit
WITH UNIQUE DEFAULT KEY.
CLEAR: l_s_mat_unit, e_factor.
READ TABLE s_t_mat_unit INTO l_s_mat_unit WITH KEY
material = i_material
mat_unit = i_mat_unit.
IF sy-subrc <> 0.
SELECT SINGLE * FROM /bi0/pmat_unit
INTO CORRESPONDING FIELDS OF l_s_mat_unit
WHERE material = i_material
AND mat_unit = i_mat_unit
AND objvers = 'A'.
IF sy-subrc = 0.
INSERT l_s_mat_unit INTO TABLE s_t_mat_unit.
ENDIF.
ENDIF.
IF l_s_mat_unit-denomintr <> 0.
e_factor = l_s_mat_unit-numerator / l_s_mat_unit-denomintr.
ENDIF.
ENDFORM. " get_factor
Hope someone can help.
ThanksHi Karin,
I am also facing the same problem for alternate units of measure...i tried to access the path
websmp201.sap-ag.de/~sapdownload/011000358700000488512003E/Howto_alternate_uom5.pdf
but it is not found...can u please give me this document if u have it with you.?
Thanks,
Vijaya -
Error while defining alt unit of measurement in material master
All SAP gurus,
i am trying to define a alt unit of measurement in a finished material, the base unit of measurement is in MT, and the sales unit is nos. the conversion formula is 53 nos = 1kg i.e. 1MT = 53000 nos. as conversion can be done only with base unit of measurement i am giving 53000 nos = 1 MT, but system unable to calculate the conversion as it is not taking mere than 3 digit after decimal.
e.g. if 53000 nos = 1 MT
then 1 nos should be = 0.000018 MT
but system not taking this value as this value contain 6 digit after decimal
suggest me what can be the way out? with detailed steps. can i increase the post decimal value or i have to define another middle alt unit of measurement (like KG). and if that is to be done then how.
Regards
BKRHi,
With help of Basis team check the decimal places for u r user ID.
In t-code SU01 >>> Under Default tab
Kapil -
Error message 'Enter unit of measure' in Webclient
Hello Experts,
We are working on CRM 5.0 SP 7, IC WebClient and have implemented the BAdi "<b>CRM_SERVICEPROD_BADI</b>" to assign a service product ''<b>INVESTIGATION'</b> whenever user selects service ticket in WebClient.
However, when confirming a Business Partner and accessing the service ticket, an error is getting displayed stating "<b>Enter the unit of measure</b>".
We have already mentioned the unit of measure in Product but it seems it is not picking from there.
Please help me to remove this error.
Reward points assured for useful answers.
Regards,
Amithi
I had a similar Problem
You will have to assign the base unit of measure in service tab as hours and then in the sales and distribution tab assign the same unit in the sales unit and give minimum order quantity(for e.g-1) & delivery unit ,this you will have to do for all the sales areas you might have mapped in the S&D tab
I'm sure the issue will be resolved
Cheers!!
Regards
Shankar Raj -
How to retrieve the values from a table if they differ in Unit of Measure
How to retrieve the values from a table if they differ in Unit of Measure?
If no data is read
- Insure that you use internal code in SELECT statement, check via SE16 desactivating conversion exit on table T006A. ([ref|http://help.sap.com/saphelp_nw70/helpdata/en/2a/fa0122493111d182b70000e829fbfe/frameset.htm])
If no quanity in result internal table
- There is no adqntp field in the internal table, so no quantity is copied in itab ([ref|http://help.sap.com /abapdocu_70/en/ABAPINTO_CLAUSE.htm#&ABAP_ALTERNATIVE_1@1@]).
- - Remove the CORRESPONDING, so quantity will fill the first field adqntp1. ([ref|http://help.sap.com/abapdocu_70/en/ABENOPEN_SQL_WA.htm])
- - Then loop at the internal table and move the quantity when necessary to the 2 other fields.
* Fill the internal table
SELECT msehi adqntp
INTO TABLE internal table
FROM lipso2
WHERE vbeln = wrk_doc1
AND msehi IN ('KL','K15','MT').
* If required move the read quantity in the appropriate column.
LOOP AT internal_table ASSIGNING <fs>.
CASE <fs>-msehi.
WHEN 'K15'.
<fs>-adqnt2 = <fs>-adqnt1.
CLEAR <fs>-adqnt1.
WHEN 'MT'.
<fs>-adqnt3 = <fs>-adqnt1.
CLEAR <fs>-adqnt1.
ENDCASE.
ENDLOOP.
- You could also create another table with only fields msehi and adqntp and then collect ([ref|http://help.sap.com/abapdocu_70/en/ABAPCOLLECT.htm]) the data to another table.
Regards,
Raymond -
Production Order for a Material with two units of measure?
Hi Everybody I have the following issue.
In my company there is a new production process with a Material that should be configured in the master data with the field "Base Unit of Measure" as per unit (each). But the production process, should be confirmed by tx CO11N, in Kilograms. I know that I can use the additional Data in tx MM03 to set a Production Unit, but the value of convertion would be fixed. For example 122 Kg = 1 each, the thing is that the value in kilograms for each lot can vary, one lot can weight 122 and another one can weghr 125, and in each case I shoul have two units in stock. And as I have the value of convertion fixed, when I confirm each lot one for 122 kg and another for 125 kg I will have 2.025 units in MB52.
How can I solve this problems? I need to have the chance the confirm in kg changing for each lote the quantity but in the base Unit of Measure have one unit for lot. As if for tx CO11N I could have a field where I can set tha x quantity of Kilograms is x each.
Kind regards
Leandro.Hi Ayoub, First thank`s for your promt answer,
1. The Quantity is different, because is not a perfect process, there is a manual work in the process that makes this quantity differ, there is no big difference, maybe a Kilo or Two but the production mannager wants to have this registered. And besides in productions they manage kilograms, but for selling the comercials manage units (each - EA)
2.The convertion rate is known at the end of the process after cutting and packaging a unit, they weight it.
Regards
Leandro -
Standard report for unit of measures
Is there any standard report to see the Fert material unit of measures and its alternate unit of measures.
HI
there is no standard reprot for you requirment.
only UOM of material you canget from MM60.
but if you want alternate also got with table data MARM
1.use SE16-- enter the table name MARM
2.enter the material(field MATNR), and execute you get the report
-ashok -
Report for Units of measurement for Material
Hi
Is there any report to extract the alterante unit of measurements for materials in a plant.
ThanksHi,
Please use the below table,
Related to Materials:
MARA - Material Master: General data
MAKT - Material Master: Description
*MARM - Material Master: Unit of Measure*
MAPE - Material master: Export control file
MARC - Material master: Plant data
MARD - Material master: Storage location
MAST - Material link to BOM
MBEW - Material valuation
MLGN u2013 Material Master: WM Inventory
MLGT u2013 Material Master: WM Inventory type
MDIP - Material: MRP profiles (field contents)
MKOP - Consignment price segment (old versions of SAP)
EBEW - Valuation of sales order stock
QBEW - Valuation of project stock
MVER u2013 Material Master: Consumption <Plant>
DVER u2013 Material Master: Consumption <MRP Area>
MVKE u2013 Material Master: Sales <Sales Org, Distr Ch>
MLAN - Material Master: Tax indicator
MARC - Material Master: Plant data
MAPR u2013 Material Master: Forecast
MARD u2013 Material Master: Storage Location
MCH1 u2013 Material Master: X Plant Batches
MCHA u2013 Material Master: Batches
MCHB u2013 Material Master: Batch Stock
MDMA - MRP Area data
DBVM - MRP Planning File Entry: MRP Area
MOFF - Outstanding Material Master Records (Maintenance status)
MARCH - Material Master C Segment: History
MARDH - Material Master Storage Location Segment: History
MBEWH - Material Valuation: History
MCHBH - Batch Stocks: History
MKOLH - Special Stocks from Vendor: History
MSCAH - Sales Order Stock at Vendor: History
MSKAH - Sales Order Stock: History
MSKUH - Special Stocks at Customer: History
MSLBH - Special Stocks at Vendor: History
MSPRH - Project Stock: History
MSSAH - Total Sales Order Stocks: History
MSSQH - Total Project Stocks: History
Regards,
Mohd Ali. -
T006-Decan change after users have used the TO unit of measure
Currently in our system for TO (tonnes) it has T006-Andec as 3 and T006-Decan as 0 and it issues the users a warning message "Order quantity violates rounding rule" if they type in decimals in the purchase order quantity. We have been asked to change T006-Decan to a 3 and do away with the warning message. What happens if you change T006-Decan from 0 to 3 after users have already used the unit of measure (TO) in the R/3 SAP_APPL 470 system on materials, purchase orders, sales documents, receipts, etc...? I don't want to impact our users in production since I do not where this unit of measure has been used. Any advice is welcomed. Thank you.
Hi
If you are changing the decimal places in T006 - DECAN , the number which was 1000 would show as 1,000... so previously it was 1000 tonnes now it will show as 1 tonne.... such things happen....Check with SAP before doing changes to the Standard UOM's...
I am not able to find the correct SAP note for this.... but its there hope you get it
Thanks & Regards
Kishore -
Follow up material with different base unit of measure
Hi all,
I have the BOM with material Mat1 as a component. The base unit of measure of Mat1 is KG.
Is it possible to replace Mat1 with Mat 2 material in MRP once the Mat1 warehouse stock is depleted.
The base unit of measure of Mat 2 is KGK.
The required quantity of MAT1 should be recalculated from KG to KGK accordanly unit ratio.
Please, expain, where does it maintain?
Thanks,
PeterHello Peter,
You can use follow-up setting (set Mat2 as follow-up of Mat1 in MRP 4 view of material master if this follow-up scenario is valid for all BOM) with discontinuation indicator '1', w/o effective-out date. In this case Mat1's stock will run out (no PldOrd, PR, etc) will be created, and from the date, when Mat1's stock runs out, MRP will calculate with Mat2.
As I told you, according to my best knowledge, you cannot realize this with different base unit of measures. (you have to change the buom of one of the related material masters or create a new material master if you cannot cope with buom-change).
Follow-up group scenario can also be used but I guess different buoms will be a problem in that case as well.
Maybe there are better solution but I'm not aware of it...
BR
Csaba -
Report on material code, description and all unit of measure conversions
report on material code, description and all unit of measure conversions ?
any ideas?Material Number MATNR
with this key and SPRAS (the desired Language key)
from MAKT you can get the descriptions..
and with MATNR from MARM you can get alternative UOM and the conversion rates.
If you need help on MARM how to get the conversions please notify.
Hope it helped
Please reward if found useful
Best Regards -
MB5B - Stock on posting date show in other Unit of measure
Dearl All,
Pls support me this case: I would like to see this report (MB5B - Stock on posting date) in other Unit of measure.
This report shows stock in Basic Unit only.
E.g
Material A, base unit = M, other unit = ROL
Report needs show stock in ROL.
How can I do that?
Thank you vry much!
Cao Huy.Hi,
In your case, order unit as ROL and material basic unit of measure is M.
PO created only for the order unit ROL, and goods have received from the vendor based on the PO order unit.
So,this MB5B stock on posting date is displayed only the total stock received based on the received GR order unit qty .
stock also managed only ROL unit of measues. it is not possible to list based on the M stock unit.
Regards,
thiru -
Sub:Stock report with sales unit of measurement - reg.,
Hi guru's
we have a requirement to have the stock report with sales unit of measure instead of base unit of measure can anybody guide me how to do this.
thanks in advance
tulja singh.From std. , I think your requirement can not satisfied.
Make customized report.
Take the help of ABAPER. -
Unit of Measure in a Flat File
Hi,
I have mapped the following in transformations:
MEINH (Unit of Measure) & MEGBTR (Total Quantity) -
> 0QUANTITY
Now i need to load a flat file into that Cube. The Flat file is populated with quantity under 0QUANTITY. How do i bring in the unit of measure in this case (since i did not map MEINH to 0BASE_UOM but rather 0QUANTITY)?
ThanksHi,
I t will not be a problem but any way u r defining two fields at datasource level so up to that (means psa ) the data will come as two fields ,now from psa to target u r transformations will occer here both the qty and unit u r assing to quantity so at report level(or target level) the data will be along with it s unit.
Thanks & Regards
sathish
Maybe you are looking for
-
I'm writing a script that will take the data in one table, and use a cursor to copy that data to another table. The reason I'm using a cursor is so that I can stagger the dates in a particular field, for testing purposes. I wrote a procedure that wil
-
IPhoto Library, AirPort Extreme & attached Drive
Hello, I have multiple iPhoto libraries spanning 100gbs, it's getting too large for my MBP. Plus next time I upgrade my MBP it'll have a SSD and so my libraries will definitely be too big. I want to be able to access my libraries without having to p
-
With the new upgrade to iOS 7 for the iPhone, is there anyway to change the color background on the calendar?
-
Can't get to the next question...
Hello, I am brand new to programming and Java and am trying to teach myself. Seems like an imposible task however I'm giving it a shot. I am trying to create a simple menu selection quiz program to choose between topic and answer questions. This is w
-
How to update ios7.1, How to update ios7.1
I want to update ios 7.1 into 7.4 but its not updating before ios 7.1 i have 7.4 and have cydia but after deleting cydia i restored my iphone and i had ios 7.1 but it not updating wht should i do now need help Thankz