Is there a way to suppress the parameter form?

We have created a report, in Oracle Reports Builder (Developer 10g - v9.0.4.0.33) and do not want the parameter form to show when the report runs. We have removed the check from the box in the preferences => runtime settings => parameter form, but a parameter form is always rebuilt at runtime of the report.
The report is run through a third-party aplication menu system (FAMIS) and we have no control over the command line that runs the report.

Does your 3rd party application allow you the flexibility to use your own libraries, etc? I know we have an app where we needed to create our own Oracle Form libraries in order to do this exact thing. Other then having access to the URL to take out the "+paramform=yes", I'm not sure what else there is.

Similar Messages

  • Is there a way to customize the web form link in Adobe FormsCentral?

    The dedicated link has a quite complicated address, not easily added to brochures to hand out.  Is there a way to customize the web form link in Adobe FormsCentral?

    It cannot be customized. The workaround is to create your own web page and embed our form into it. That way they only see your URL.
    Randy

  • Is there a way to download the files form you iCloud backup?  Not restore but actually download the files.

    Is there a way to retrieve your backup files from iCloud?  Wehn you backup locally, you can get to the actual backup files.  Is there a way to retrieve these from iCloud?  I want to actually examine the individual files.

    AFAIK, no, nor is there anyway to view your icloud backup.

  • Is there a way to suppress the "dll missing message box" when OraOLEDBpus11.dll is missing?

    Hi,
    We are working on a .net windows service program. In one code path, we will create an oracle oledb connection to an oracle database using ado.net provider over oledb.
    We use oracle oledb provider (11g, 64bit) but we found when the path was configured incorrectly, a message box of "OraOLEDBpus11.dll is missing" would pop up. Since it's a windows service, the dialog box can't be seen and thus blocked the whole process.
    We would like to know if it is possible to suppress this message box. And how can we suppress it?
    Dialog box looks like:
    Oracle Provider for OLE DB
    OraOLEDBpus11.dll:  The specified module could not be found.
    OK  
    Some of the call stack are listed here:
    00:U 000000001ca6a258 000000007736933a user32!ZwUserWaitMessage+0xa
    01:U 000000001ca6a260 0000000077374bc4 user32!DialogBox2+0x274
    02:U 000000001ca6a2f0 0000000077374edd user32!InternalDialogBox+0x135
    03:U 000000001ca6a350 00000000773c2920 user32!SoftModalMessageBox+0x9b4
    04:U 000000001ca6a480 00000000773c1c15 user32!MessageBoxWorker+0x31d
    05:U 000000001ca6a640 00000000773c146b user32!MessageBoxTimeoutW+0xb3
    06:U 000000001ca6a710 00000000773c1616 user32!MessageBoxTimeoutA+0x18a
    07:U 000000001ca6a780 00000000773c1306 user32!MessageBoxA+0x4e
    08:U 000000001ca6a7c0 0000000180032099 OraOLEDB11+0x32099
    09:U 000000001ca6a9a0 000000018005a45a OraOLEDB11!DllCanUnloadNow+0x60a
    0a:U 000000001ca6a9e0 000000018006a0ad OraOLEDB11!DllUnregisterServer+0x9ded
    0b:U 000000001ca6aa20 00000000775ab108 ntdll!LdrpRunInitializeRoutines+0x1fe
    0c:U 000000001ca6abf0 000000007759787a ntdll!LdrpLoadDll+0x231
    0d:U 000000001ca6ae00 0000000077597b5e ntdll!LdrLoadDll+0x9a
    0e:U 000000001ca6ae70 000007fefd6e9059 KERNELBASE!LoadLibraryExW+0x22e
    0f:U 000000001ca6aee0 000007feff164e42 ole32!LoadLibraryWithLogging+0x32
    10:U 000000001ca6af30 000007feff164db7 ole32!CClassCache::CDllPathEntry::LoadDll+0x5b
    11:U 000000001ca6af70 000007feff164bbc ole32!CClassCache::CDllPathEntry::Create_rl+0x4c
    12:U 000000001ca6afd0 000007feff161ca1 ole32!CClassCache::CClassEntry::CreateDllClassEntry_rl+0xe1
    13:U 000000001ca6b290 000007feff161b73 ole32!CClassCache::GetClassObjectActivator+0x5ab
    14:U 000000001ca6b3e0 000007feff162425 ole32!CClassCache::GetClassObject+0x45
    15:U 000000001ca6b450 000007feff18a53a ole32!CServerContextActivator::GetClassObject+0x1fc
    16:U 000000001ca6b540 000007feff18a3a2 ole32!ActivationPropertiesIn::DelegateGetClassObject+0x62
    17:U 000000001ca6b5a0 000007feff18a5fc ole32!CApartmentActivator::GetClassObject+0x4c
    18:U 000000001ca6b5e0 000007feff18a645 ole32!CProcessActivator::GCOCallback+0x31
    19:U 000000001ca6b610 000007feff186e83 ole32!CProcessActivator::AttemptActivation+0x33
    1a:U 000000001ca6b650 000007feff186e17 ole32!CProcessActivator::ActivateByContext+0x7f
    1b:U 000000001ca6b6e0 000007feff18a6d0 ole32!CProcessActivator::GetClassObject+0x70
    1c:U 000000001ca6b720 000007feff18a3a2 ole32!ActivationPropertiesIn::DelegateGetClassObject+0x62
    1d:U 000000001ca6b780 000007feff18a30c ole32!CClientContextActivator::GetClassObject+0xcc
    1e:U 000000001ca6ba10 000007feff18a3a2 ole32!ActivationPropertiesIn::DelegateGetClassObject+0x62
    1f:U 000000001ca6ba70 000007feff18a176 ole32!ICoGetClassObject+0x3d6
    20:U 000000001ca6c590 000007feff183057 ole32!CComActivator::DoGetClassObject+0x1c7
    21:U 000000001ca6c660 000007feff182e67 ole32!CoGetClassObject+0x4f
    22:U 000000001ca6c6c0 000007fedd30317f oledb32!CCMProviderInfo::Initialize+0x5f
    23:U 000000001ca6c710 000007fedd302eb5 oledb32!CCMProviderInfoManager::CreateProviderInfo+0x2a7
    24:U 000000001ca6c8a0 000007fedd302cf8 oledb32!CCMProviderInfoManager::GetProviderInfoFromCLSID+0x9a
    25:U 000000001ca6c930 000007fedd302c54 oledb32!CCMProviderInfoManager::GetProviderInfoFromInitString+0x2b4
    26:U 000000001ca6c9b0 000007fedd302a68 oledb32!InitialGetDataSource+0x160
    27:U 000000001ca6ca60 000007fedd302993 oledb32!GetDataSource+0x797
    28:U 000000001ca6cc80 000007fedd2f1eca oledb32!CMSDAInitialize::GetDataSource+0x1d1
    29:U 000000001ca6cce0 000007fedd35cb43 oledb32!CDSLObject::GetDataSource+0x63
    OraOLEDB11.dll version:
    Product version 11.2.0.1.0
    File version 11.2.0.1
    Thanks,
    Xuan

    Hi
    register dll
    C:\windows\syswow64\regsvr32.exe C:\oracle\bin\oraoledb11.dll
    copy file oraoledbpus11.dll and oraoledb11us.dll to \windows\system32\
    Thanks, Darek

  • Is there a way to take the code form my iweb site and put in into iweb on a different mac?

    I had built my website on an old laptop - the hard drive shattered - and yes i was bad and didnt back up.....
    I want to update my site - but i dont want to start all over  - i just want to make some changes and re publish -
    Can i get the current code off ther website- put it back into iweb make my changes and republish???
    THEN ILL BACK UP!!!!! lol

    THat would be a much better question for the iWeb support forum - thie is the iPhoto forum
    LN

  • Is there any way to retreive the FileName in the mapping

    Is there any way to retreive the FileName and so that I can use that in my mapping. This is FILE2RFC scenario with NO BPM.
       I am using the adapter specific message attributes in the file sender CC.
    Thanks,
    Ravi
    null

    Yes you can retreive it.  Create an simple user defined function in the mapping and use the following code.
    Imports: com.sap.aii.mapping.api.*;
    Parameter: String filename
    Paramter: String filename;
    filename = fileName + ".DAT";
    DynamicConfiguration conf = (DynamicConfiguration) container
    .getTransformationParameters()
    .get(StreamTransformationConstants.DYNAMIC_CONFIGURATION);
    DynamicConfigurationKey key = DynamicConfigurationKey.create( "http://sap.com/xi/XI/System/File", "FileName");
    conf.put(key, filename);
    return filename;
    Or
    Just do whatever mentioned in this weblog:
    /people/michal.krawczyk2/blog/2005/11/10/xi-the-same-filename-from-a-sender-to-a-receiver-file-adapter--sp14
    ---Satish

  • Is there a way to change the LUt extension form .CUBE to .cube. on export. TX

    Is there a way to change the LUt extension form .CUBE to .cube. on export with this script in photoshop For MAC:
    Chris Cox wrote:
    The file extensions are written by the export plugin.  (which incidentally has a comment that two studios wanted all caps extensions, but I failed to write down which ones in the comments)
    To change the filenames, you'd want to add something at the end of doExportLUTs() that uses the supplied path and substitutes the desired extensions, then renames the file.
    Thank you
    // Export Color Lookup Tables automation in JavaScript
    // IN_PROGRESS - why can't ColorSync Utility open any profile with a grid of 160 or larger?
    // 150 works, 160 fails -- sent samples in email to Apple on Nov 8, 2013; they are investigating
    // DEFERRED - right to left filenames (Arabic) come out wrong because of appending "RGB" and file extensions
    // This seems to be a bug in JavaScript's handing of strings, not sure we can solve it easily.
    // It might possibly be handled by checking bidi markers in UTF8 stream and adding custom handling for appending text/extensions.
    @@@BUILDINFO@@@ ExportColorLookupTables.jsx 1.0.0.0
    // BEGIN__HARVEST_EXCEPTION_ZSTRING
    <javascriptresource>
    <name>$$$/JavaScripts/ExportColorLookupTables/Menu=Color Lookup Tables...</name>
    <menu>export</menu>
    <enableinfo>true</enableinfo>
    <eventid>9AA9D7D6-C209-494A-CC01-4E7D926DA642</eventid>
    </javascriptresource>
    // END__HARVEST_EXCEPTION_ZSTRING
    #target photoshop
    const appUIState = app.displayDialogs;
    app.displayDialogs = DialogModes.NO; // suppress all app dialogs
    app.bringToFront(); // make Photoshop the frontmost app, just in case
    // on localized builds we pull the $$$/Strings from a .dat file
    $.localize = true;
    // from Terminology.jsx
    const classApplication = app.charIDToTypeID('capp');
    const classProperty = app.charIDToTypeID('Prpr');
    const enumTarget = app.charIDToTypeID('Trgt');
    const eventGet = app.charIDToTypeID('getd');
    const eventSet = app.charIDToTypeID('setd');
    const kcolorSettingsStr = app.stringIDToTypeID("colorSettings");
    const kDither = app.charIDToTypeID('Dthr');
    const keyTo = app.charIDToTypeID('T   ');
    const typeNULL = app.charIDToTypeID('null');
    const typeOrdinal = app.charIDToTypeID('Ordn');
    const kFloatWindowStr = app.stringIDToTypeID("floatWindow");
    const typePurgeItem = app.charIDToTypeID('PrgI');
    const enumClipboard = app.charIDToTypeID('Clpb');
    const eventPurge = app.charIDToTypeID('Prge');
    const keyExportLUT = app.charIDToTypeID( "lut " );
    const keyFilePath = app.charIDToTypeID( 'fpth' );
    const keyDescription = app.charIDToTypeID( 'dscr' );
    const keyCopyright = app.charIDToTypeID( 'Cpyr' );
    const keyDataPoints = app.charIDToTypeID( 'gPts' );
    const keyWriteICC = app.charIDToTypeID( 'wICC' );
    const keyWrite3DL = app.charIDToTypeID( 'w3DL' );
    const keyWriteCUBE = app.charIDToTypeID( 'wCUB' );
    const keyWriteCSP = app.charIDToTypeID( 'wCSP' );
    const kScriptOptionsKey = "9AA9D7D6-C209-494A-CC01-4E7D926DA642"; // same as eventID above
    const sGridMin = 7; // these must match the slider range defined in the dialog layout
    const sGridMax = 256;
    const sGridDefault = 32;
    // our baseline UI configuration info
    var gSaveFilePath = ""; // overwritten by document path
    var gDescription = ""; // overwritten by document name
    var gCopyright = ""; // "Adobe Systems Inc., All Rights Reserved";
    var gGridPoints = sGridDefault;
    var gDoSaveICCProfile = true;
    var gDoSave3DL = true;
    var gDoSaveCUBE = true;
    var gDoSaveCSP = true;
    gScriptResult = undefined;
    // start doing the work...
    main();
    app.displayDialogs = appUIState; // restore original dialog state
    gScriptResult; // must be the last thing - this is returned as the result of the script
    function readOptionsFromDescriptor( d )
      if (!d)
      return;
      if (d.hasKey(keyFilePath))
      gSaveFilePath = d.getString( keyFilePath ); // will be overridden by UI
      if (d.hasKey(keyDescription))
      gDescription = d.getString( keyDescription ); // will be overridden always
      if (d.hasKey(keyCopyright))
      gCopyright = d.getString( keyCopyright );
      if (d.hasKey(keyDataPoints))
      var temp = d.getInteger( keyDataPoints );
      if (temp >= sGridMin && temp <= sGridMax)
      gGridPoints = temp;
      if (d.hasKey(keyWriteICC))
      gDoSaveICCProfile = d.getBoolean( keyWriteICC );
      if (d.hasKey(keyWrite3DL))
      gDoSave3DL = d.getBoolean( keyWrite3DL );
      if (d.hasKey(keyWriteCUBE))
      gDoSaveCUBE = d.getBoolean( keyWriteCUBE );
      if (d.hasKey(keyWriteCSP))
      gDoSaveCSP = d.getBoolean( keyWriteCSP );
    function createDescriptorFromOptions()
      var desc = new ActionDescriptor();
      desc.putString( keyFilePath, gSaveFilePath ); // will be overridden by UI
      desc.putString( keyDescription, gDescription ); // will always be overridden by document name
      desc.putString( keyCopyright, gCopyright );
      desc.putInteger( keyDataPoints, gGridPoints );
      desc.putBoolean( keyWriteICC, gDoSaveICCProfile );
      desc.putBoolean( keyWrite3DL, gDoSave3DL );
      desc.putBoolean( keyWriteCUBE, gDoSaveCUBE );
      desc.putBoolean( keyWriteCSP, gDoSaveCSP );
      return desc;
    function doExportUI()
      // DEFERRED - it might be nice to be able to run without UI
      //  Right now we can't, but someone could modify the script if they so desire
      const sDescription = localize("$$$/AdobeScript/Export3DLUT/Description=Description:");
      const sCopyright = localize("$$$/AdobeScript/Export3DLUT/Copyright=Copyright:");
      const sQuality = localize("$$$/AdobeScript/Export3DLUT/Quality=Quality");
      const sGridPoints = localize("$$$/AdobeScript/Export3DLUT/GridPoints=Grid Points:");
      const sFormatsToSave = localize("$$$/AdobeScript/Export3DLUT/Formats=Formats");
      const sOpenButton = localize("$$$/JavaScripts/psx/OK=OK");
      const sCancelButton = localize("$$$/JavaScripts/psx/Cancel=Cancel");
      const strTextInvalidType = localize("$$$/JavaScripts/Export3DLUT/InvalidType=Invalid numeric value. Default value inserted.");
      const strTextInvalidNum = localize("$$$/JavaScripts/Export3DLUT/InvalidNum=A number between 7 and 256 is required. Closest value inserted.");
      const strNoExportsSelected = localize("$$$/JavaScripts/Export3DLUT/NoExportTypesSelected=No export types were selected.");
      const strExportPrompt = localize("$$$/JavaScripts/Export3DLUT/ExportColorLookup=Export Color Lookup");
      const strUntitledLUT = localize("$$$/JavaScripts/Export3DLUT/UntitledLUTFilename=untitled.lut");
      const sSaveICC = localize("$$$/AdobeScript/Export3DLUT/ICCProfile=ICC Profile");
      // these are not localized, since they refer to file format extensions
      const sSave3DL = "3DL";
      const sSaveCUBE = "CUBE";
      const sSaveCSP = "CSP";
      // strings similar to JPEG quality
      const sPoor = localize("$$$/AdobeScript/Export3DLUT/Poor=Poor");
      const sLow = localize("$$$/AdobeScript/Export3DLUT/Low=Low");
      const sMedium = localize("$$$/AdobeScript/Export3DLUT/Medium=Medium");
      const sHigh = localize("$$$/AdobeScript/Export3DLUT/High=High");
      const sMaximum = localize("$$$/AdobeScript/Export3DLUT/Maximum=Maximum");
      const ui = // dialog resource object
      "dialog { \
      orientation: 'row', \
      gp: Group { \
      orientation: 'column', alignment: 'fill', alignChildren: 'fill', \
      description: Group { \
      orientation: 'row', alignment: 'fill', alignChildren: 'fill', \
      st: StaticText { text:'Description:' }, \
      et: EditText { characters: 30, properties:{multiline:false}, text:'<your description here>' } \
      copyright: Group { \
      orientation: 'row', alignment: 'fill', alignChildren: 'fill', \
      st: StaticText { text:'Copyright:' }, \
      et: EditText { characters: 30, properties:{multiline:false}, text:'<your copyright here>' } \
      qual: Panel { \
      text: 'Quality', \
      orientation: 'column', alignment: 'fill', alignChildren: 'fill', \
      g2: Group { \
      st: StaticText { text:'Grid Points:' }, \
      et: EditText { characters:4, justify:'right' } \
      drp: DropDownList {alignment:'right'} \
      sl: Slider { minvalue:7, maxvalue:256, value: 32 }, \
      options: Panel { \
      text: 'Formats', \
      orientation: 'column', alignment: 'fill', alignChildren: 'left', \
      ck3DL: Checkbox { text:'3DL', value:true }, \
      ckCUBE: Checkbox { text:'CUBE', value:true } \
      ckCSP: Checkbox { text:'CSP', value:true } \
      ckICC: Checkbox { text:'ICC Profile', value:true } \
      gButtons: Group { \
      orientation: 'column', alignment: 'top', alignChildren: 'fill', \
      okBtn: Button { text:'Ok', properties:{name:'ok'} }, \
      cancelBtn: Button { text:'Cancel', properties:{name:'cancel'} } \
      const titleStr = localize("$$$/AdobeScript/Export3DLUT/DialogTitle/ExportColorLookupTables=Export Color Lookup Tables");
      var win = new Window (ui, titleStr ); // new window object with UI resource
        // THEORETICALLY match our dialog background color to the host application
        win.graphics.backgroundColor = win.graphics.newBrush (win.graphics.BrushType.THEME_COLOR, "appDialogBackground");
      // poor, low, medium, high, max
      var MenuQualityToGridPoints = [ 8, 16, 32, 64, 256 ];
      function GridPointsToQualityMenuIndex( num )
      var menu = MenuQualityToGridPoints;
      var menuItems = menu.length;
      if (num <= menu[0])
      return 0;
      if (num >= menu[ menuItems-1 ])
      return (menuItems-1);
      for (var i = 0; i < (menuItems-1); ++i)
      if ((num >= menu[i]) && (num < menu[i+1]))
      return i;
      return 0; // just in case of a logic failure
      // insert our localized strings
      var drop = win.gp.qual.g2.drp; // for easier typing
      drop.add('item', sPoor ); // 0
      drop.add('item', sLow ); // 1
      drop.add('item', sMedium ); // 2
      drop.add('item', sHigh ); // 3
      drop.add('item', sMaximum ); // 4
      drop.selection = drop.items[2]; // Medium
      win.gp.description.st.text = sDescription;
      win.gp.copyright.st.text = sCopyright;
      win.gp.qual.text = sQuality;
      win.gp.qual.g2.st.text = sGridPoints;
      win.gp.options.text = sFormatsToSave;
      win.gp.options.ck3DL.text = sSave3DL;
      win.gp.options.ckCUBE.text = sSaveCUBE;
      win.gp.options.ckCSP.text = sSaveCSP;
      win.gp.options.ckICC.text = sSaveICC;
      win.gButtons.okBtn.text = sOpenButton;
      win.gButtons.cancelBtn.text = sCancelButton;
      // set starting parameters
      win.gp.description.et.text = gDescription;
      win.gp.copyright.et.text = gCopyright;
      win.gp.options.ckICC.value = gDoSaveICCProfile;
      win.gp.options.ck3DL.value = gDoSave3DL;
      win.gp.options.ckCUBE.value = gDoSaveCUBE;
      win.gp.options.ckCSP.value = gDoSaveCSP;
      // global flag/hack to keep the UI pretty
      var gGlobalPreventChanges = false;
      with (win.gp.qual)
      sl.value = gGridPoints;
      g2.et.text = gGridPoints;
      drop.selection = drop.items[ GridPointsToQualityMenuIndex(gGridPoints) ];
      // global flag is ugly, but recursive change calls are uglier
      g2.et.onChange = function () {  if (gGlobalPreventChanges) { return; }
      gGlobalPreventChanges = true;
      var val = Number(this.text);
      this.parent.parent.sl.value = val;
      drop.selection = drop.items[ GridPointsToQualityMenuIndex(val) ];
      gGlobalPreventChanges = false; };
      sl.onChanging = function () {   if (gGlobalPreventChanges) { return; }
      gGlobalPreventChanges = true;
      var val = Math.floor(this.value);
      this.parent.g2.et.text = val;
      drop.selection = drop.items[ GridPointsToQualityMenuIndex(val) ];
      gGlobalPreventChanges = false; };
      // DEFERRED - we should also set the value if the same menu item is selected again (reset)
      // but the JSX toolkit doesn't support that
      drop.onChange = function()
      if (gGlobalPreventChanges) { return; }
      gGlobalPreventChanges = true;
      var theSelection = this.selection.text;
      if (theSelection != null) { // only change if selection made
      var theSelectionIndex = this.selection.index;
      var newGridPoints = MenuQualityToGridPoints[ theSelectionIndex ];
      win.gp.qual.g2.et.text = newGridPoints;
      win.gp.qual.sl.value = newGridPoints;
      gGlobalPreventChanges = false;
      win.onShow = function ()
      this.qual.sl.size.width = 128;
      this.layout.layout(true);
      win.gButtons.cancelBtn.onClick = function () { this.window.close(2); };
      // validate inputs when the user hits OK
        var gInAlert = false;
      win.gButtons.okBtn.onClick = function ()
      if (gInAlert == true)
      gInAlert = false;
      return;
      var gridText = win.gp.qual.g2.et.text;
      var w = Number(gridText);
      var inputErr = false;
      if ( isNaN( w ) )
      if ( DialogModes.NO != app.playbackDisplayDialogs )
      gInAlert = true;
      alert( strTextInvalidType );
      gInAlert = false;
      win.gp.qual.g2.et.text = sGridDefault;
      win.gp.qual.sl.value = sGridDefault;
      drop.selection = drop.items[ GridPointsToQualityMenuIndex(sGridDefault) ];
      return false;
      if ( (w < sGridMin) || (w > sGridMax) )
      if ( DialogModes.NO != app.playbackDisplayDialogs )
      gInAlert = true;
      alert( strTextInvalidNum );
      gInAlert = false;
      if ( w < sGridMin)
      inputErr = true;
      drop.selection = drop.items[ GridPointsToQualityMenuIndex(sGridMin) ];
      win.gp.qual.g2.et.text = sGridMin;
      win.gp.qual.sl.value = sGridMin;
      return false;
      if ( w > sGridMax)
      inputErr = true;
      drop.selection = drop.items[ GridPointsToQualityMenuIndex(sGridMax) ];
      win.gp.qual.g2.et.text = sGridMax;
      win.gp.qual.sl.value = sGridMax;
      return false;
      if (inputErr == false)
      win.close(true);
      return;
      win.center(); // move to center the dialog
      var ret = win.show();  // dialog display
      if (2 == ret)
      return false; // user cancelled
      // user hit OK, copy values from dialog
      gDescription = win.gp.description.et.text;
      gCopyright = win.gp.copyright.et.text;
      gGridPoints = win.gp.qual.sl.value;
      gDoSave3DL = win.gp.options.ck3DL.value;
      gDoSaveCUBE = win.gp.options.ckCUBE.value;
      gDoSaveCSP = win.gp.options.ckCSP.value;
      gDoSaveICCProfile = win.gp.options.ckICC.value;
      // if no files are going to be saved, then we have zero work to do
      if ((false == gDoSaveICCProfile) && (false == gDoSave3DL) &&
      (false == gDoSaveCUBE) && (false == gDoSaveCSP) )
      // tell the user that no formats were selected
      alert( strNoExportsSelected );
      gScriptResult = 'cancel'; // quit, returning 'cancel' (dont localize) makes the actions palette not record our script
      return false;
      // prompt user for directory and output base filename
      // default to directory and filename of current document
      var currentDocumentPath
      try
      // if the file has no path (not saved), then this throws
      var documentPath = app.activeDocument.fullName.fsName; // Get the OS friendly file path and name
      documentPath = documentPath.replace(/\....$/,''); // remove extension, if there is one
      documentPath = documentPath + ".lut"; // add dummy extension
      currentDocumentPath = File ( documentPath );
      catch (e)
      // if there was no document path, default to user's home directory
      var defaultName = "~/" + strUntitledLUT;
      currentDocumentPath = File(defaultName);
      var fname = currentDocumentPath.saveDlg(strExportPrompt);
      if (fname == null)
      return false;
      gSaveFilePath = fname.fsName;
      return true;
    function doExportLUTs( path )
      const keyUsing     = charIDToTypeID( 'Usng' );
      const eventExport = charIDToTypeID( 'Expr' );
      var desc = new ActionDescriptor();
      var desc2 = new ActionDescriptor();
      desc2.putString( keyFilePath, path );
      desc2.putString( keyDescription, gDescription );
      desc2.putInteger( keyDataPoints, gGridPoints );
      // assemble the full copyright string, if needed
      var copyrightAssembled = gCopyright;
      if (gCopyright != "")
      var theDate = new Date();
      // the year is from 1900 ????
      var theYear = (theDate.getYear() + 1900).toString();
      // Localization team says to just use the year
      var dateString = theYear;
      copyrightAssembled = localize("$$$/JavaScripts/Export3DLUT/Copyright=(C) Copyright ") + dateString + " " + gCopyright;
      desc2.putString( keyCopyright, copyrightAssembled );
      // select output format
      desc2.putBoolean( keyWriteICC, gDoSaveICCProfile );
      desc2.putBoolean( keyWrite3DL, gDoSave3DL );
      desc2.putBoolean( keyWriteCUBE, gDoSaveCUBE );
      desc2.putBoolean( keyWriteCSP, gDoSaveCSP );
        desc.putObject( keyUsing, keyExportLUT, desc2 );
      try
      var resultDesc = executeAction( eventExport, desc, DialogModes.NO );
      catch (e)
      if ( e.number != 8007 ) { // don't report error on user cancel
      var str = localize("$$$/JavaScripts/Export3DLUT/ExportLUTFailed=Unable to run the Export Color Lookup plugin because ");
      alert( str + e + " : " + e.line );
      gScriptResult = 'cancel'; // quit, returning 'cancel' (dont localize) makes the actions palette not record our script
      return false;
      return true;
    function doRenderGrid( points )
      // call the grid rendering plugin to do the work
        const keyRenderGrid = charIDToTypeID( "3grd" );
      const keyDataPoints2 = charIDToTypeID( 'grdP' );
      var args = new ActionDescriptor();
        args.putInteger( keyDataPoints2, points);
      try
      var result = executeAction( keyRenderGrid, args, DialogModes.NO );
      catch (e)
      if ( e.number != 8007 ) { // don't report error on user cancel
      var str = localize("$$$/JavaScripts/Export3DLUT/RenderGridFailed=Unable to render color grid because ");
      alert( str + e + " : " + e.line );
      gScriptResult = 'cancel'; // quit, returning 'cancel' (dont localize) makes the actions palette not record our script
      return false;
      return true;
    function resizeDocumentInPixels( width, height )
      var myDocument = app.activeDocument;
      var originalRulerUnits = app.preferences.rulerUnits;
      app.preferences.rulerUnits = Units.PIXELS;
      myDocument.resizeCanvas( width, height, AnchorPosition.MIDDLECENTER)
      app.preferences.rulerUnits = originalRulerUnits;
    function GetColorSettings()
      var desc1 = new ActionDescriptor();
      var ref1 = new ActionReference();
      ref1.putProperty( classProperty, kcolorSettingsStr );
      ref1.putEnumerated( classApplication, typeOrdinal, enumTarget );
      desc1.putReference( typeNULL, ref1 );
      var result = executeAction( eventGet, desc1, DialogModes.NO );
      var desc2 = result.getObjectValue( kcolorSettingsStr );
      return desc2;
    function GetColorConversionDitherState()
      var settings = GetColorSettings();
      if (settings.hasKey(kDither))
      return settings.getBoolean( kDither );
      else
      return null;
    function ConvertTo16Bit()
      const eventConvertMode = charIDToTypeID( 'CnvM' );
      const keyDepth = charIDToTypeID( 'Dpth' );
      var modeDesc16Bit = new ActionDescriptor();
      modeDesc16Bit.putInteger( keyDepth, 16 );
      var result = executeAction( eventConvertMode, modeDesc16Bit, DialogModes.NO );
    // state = true or false
    function SetColorConversionDither( state )
      var desc1 = new ActionDescriptor();
      var ref1 = new ActionReference();
      ref1.putProperty( classProperty, kcolorSettingsStr );
      ref1.putEnumerated( classApplication, typeOrdinal, enumTarget );
      desc1.putReference( typeNULL, ref1 );
      var desc2 = new ActionDescriptor();
      desc2.putBoolean( kDither, state );
      desc1.putObject( keyTo, kcolorSettingsStr, desc2 );
      executeAction( eventSet, desc1, DialogModes.NO );
    function PurgeClipboard()
      var desc1 = new ActionDescriptor();
      desc1.putEnumerated( typeNULL, typePurgeItem, enumClipboard );
      var result = executeAction( eventPurge, desc1, DialogModes.NO );
    // This helps us avoid resizing existing document views in tabbed document mode.
    // This is new functionality, and will not work in older Photoshop versions.
    function MoveDocumentToNewWindow()
      var desc1 = new ActionDescriptor();
      var result = executeAction( kFloatWindowStr, desc1, DialogModes.NO );
    function main()
      try
      var tempDoc = null;
      var tempDoc2 = null;
      // do basic troubleshooting first
      // make sure there is a document
      if (!app.activeDocument)
        gScriptResult = 'cancel'; // quit, returning 'cancel' (dont localize) makes the actions palette not record our script
      return;
      // check the document mode
      var mode = app.activeDocument.mode;
      if (mode != DocumentMode.RGB
      && mode != DocumentMode.LAB
      && mode != DocumentMode.CMYK)
      var str = localize("$$$/JavaScripts/Export3DLUT/UnsupportedColorMode=Could not export Color Lookup Tables because only RGB, LAB, and CMYK color modes are supported.");
      alert(str);
        gScriptResult = 'cancel'; // quit, returning 'cancel' (dont localize) makes the actions palette not record our script
      return;
      // check the document depth, for safety
      var depth = app.activeDocument.bitsPerChannel; // an object, not a number - why? I have no idea...
      var bitsPerChannel = 1;
      if (depth == BitsPerChannelType.EIGHT)
      bitsPerChannel = 8;
      else if (depth == BitsPerChannelType.SIXTEEN)
      bitsPerChannel = 16;
      else if (depth == BitsPerChannelType.THIRTYTWO)
      bitsPerChannel = 32;
      else
      var str = localize("$$$/JavaScripts/Export3DLUT/UnsupportedImageDepth=Could not export Color Lookup Tables because only 8, 16, and 32 bits/channel are supported.");
      alert(str);
        gScriptResult = 'cancel'; // quit, returning 'cancel' (dont localize) makes the actions palette not record our script
      return;
      // Check layer types: background plus adjustments only
      // For now, don't check each layer - a multiply solid layer still works as a color adjustment, as does selective blending
      // Users will get odd results from other layer types (layer masks, pixel layers, etc.)
      try
      app.activeDocument.backgroundLayer.visible = true;
      catch (e)
      if (activeDocument.layers.length == 1)
      alert( localize("$$$/JavaScripts/Export3DLUT/NoAdjustmentLayers=Could not export Color Lookup Tables because this document has no adjustment layers.") );
      else
      alert( localize("$$$/JavaScripts/Export3DLUT/NoBackground=Could not export Color Lookup Tables because this document has no background.") );
        gScriptResult = 'cancel'; // quit, returning 'cancel' (dont localize) makes the actions palette not record our script
      return;
      // look for last used params via Photoshop registry, getCustomOptions will throw if none exist
      try
      var desc = app.getCustomOptions(kScriptOptionsKey);
      readOptionsFromDescriptor( desc );
      catch(e)
      // it's ok if we don't have any existing options, continue with defaults
      // set some values from the document
      gDescription = app.activeDocument.name;
      // ask the user for options, bail if they cancel at any point
      if ( doExportUI() == false)
        gScriptResult = 'cancel'; // quit, returning 'cancel' (dont localize) makes the actions palette not record our script
      return;
      // we're good to go, so save our parameters for next time
      app.putCustomOptions(kScriptOptionsKey, createDescriptorFromOptions() );
      // remove file extension from filePath, if there is one
      gSaveFilePath = gSaveFilePath.replace(/\....$/,'');
      // calculate the size of image we need
      var width = gGridPoints * gGridPoints;
      var height = gGridPoints;
      if (mode == DocumentMode.CMYK)
      height = gGridPoints*gGridPoints;
      // duplicate the user document so we don't mess it up in any way
      tempDoc = app.activeDocument.duplicate("temporary");
      // make the temporary document active
      app.activeDocument.name = tempDoc;
      // to avoid resizing existing document views in tabbed mode
      MoveDocumentToNewWindow();
      // convert 8 bit documents to 16 bit/channel for improved quality of merged adjustments
      if (bitsPerChannel == 8)
      ConvertTo16Bit();
      depth = BitsPerChannelType.SIXTEEN;
      // resize the temporary canvas to our target size
      resizeDocumentInPixels( width, height )
      // select background layer
      tempDoc.activeLayer = tempDoc.backgroundLayer;
      // render lookup base grid
      var worked = doRenderGrid( gGridPoints );
      if (worked != true)
      tempDoc.close( SaveOptions.DONOTSAVECHANGES );
      return; // error should have already been shown, and there is not much we can do
      // do not flatten here -- the export automatically gets flattened data
      // and we may need layers for LAB->RGB conversion below
      // export the chosen formats
      worked = doExportLUTs( gSaveFilePath );
      if (worked != true)
      tempDoc.close( SaveOptions.DONOTSAVECHANGES );
      return; // error should have already been shown, and there is not much we can do
      // for LAB documents to export 3DLUT (which are inherently RGB), we have to do additional work
      // As a bonus, this works for CMYK as well!
      if ( mode != DocumentMode.RGB )
      var filePath = gSaveFilePath + "RGB";
      var oldDitherState = GetColorConversionDitherState();
      try
      SetColorConversionDither(false);
      const targetProfileName = "sRGB IEC61966-2.1";
      // new document temp2 in sRGB, matching depth of original
      var originalRulerUnits = app.preferences.rulerUnits;
      app.preferences.rulerUnits = Units.PIXELS;
      tempDoc2 = app.documents.add( width, gGridPoints, 72, "temp2",
      NewDocumentMode.RGB, DocumentFill.WHITE,
      1.0, depth, targetProfileName );
      app.preferences.rulerUnits = originalRulerUnits;
      // make the new doc active
      app.activeDocument.name = tempDoc2;
      // to avoid resizing existing document views in tabbed mode
      MoveDocumentToNewWindow();
      // insert grid
      worked = doRenderGrid( gGridPoints );
      if (worked == true)
      tempDoc2.selection.selectAll();
      tempDoc2.activeLayer = tempDoc2.backgroundLayer;
      tempDoc2.selection.copy();
      tempDoc2.close( SaveOptions.DONOTSAVECHANGES );
      tempDoc2 = null;
      // make sure temp1 is active
      app.activeDocument.name = tempDoc;
      // resize for RGB grid
      resizeDocumentInPixels( width, gGridPoints );
      tempDoc.selection.selectAll();
      tempDoc.paste(true);
      PurgeClipboard(); // so we don't leave an odd, large item on the clipboard
      tempDoc.selection.deselect();
      tempDoc.flatten();
      // convert temp1 to sRGB
      tempDoc.convertProfile( targetProfileName, Intent.RELATIVECOLORIMETRIC, true, false );
      // export the chosen formats
      worked = doExportLUTs( filePath );
      // at this point we still have to clean up, even if the call failed, so fall through
      else
      tempDoc2.close( SaveOptions.DONOTSAVECHANGES );
      catch (e)
      if ( e.number != 8007 ) { // don't report error on user cancel
      var str = localize("$$$/JavaScripts/Export3DLUT/UnableToConvertRGB=Unable to convert image to RGB because ");
      alert( str + e + " : " + e.line );
      if (tempDoc2 != null) tempDoc2.close( SaveOptions.DONOTSAVECHANGES );
      gScriptResult = 'cancel'; // quit, returning 'cancel' (dont localize) makes the actions palette not record our script
      // always reset the dither state
      SetColorConversionDither( oldDitherState );
      PurgeClipboard(); // so we don't leave an odd, large item on the clipboard
      } // if not RGB
      // always close temp document without saving
      tempDoc.close( SaveOptions.DONOTSAVECHANGES );
      catch (e)
      if ( e.number != 8007 ) { // don't report error on user cancel
      var str = localize("$$$/JavaScripts/Export3DLUT/UnableToExport=Unable to export LUT because ");
      alert( str + e + " : " + e.line );
      // always close temp document without saving
      if (tempDoc != null) tempDoc.close( SaveOptions.DONOTSAVECHANGES );
      gScriptResult = 'cancel'; // quit, returning 'cancel' (dont localize) makes the actions palette not record our script

    Hi blabla12345,
    (untested and without warranty)
    replace this line:
    const sSaveCUBE = "CUBE";
    with this:
    const sSaveCUBE = "cube";
    Have fun

  • Is there a way to limit the frequency of the "autosaving drafts" feature in Mac Mail on Lion?

    Using Mail Version 5.0 (1244.2/1244.3)
    On MacBook Pro with Lion 10.7.1
    Wondering if Is there a way to limit the frequency of the "autosaving drafts" feature in Mac Mail on Lion?
    Looked all thru preferences and googled the crap out of this and can't seem to find the answer I want.
    Basically, I have my mailbox behaviors set up exactly the way I want them. (ie deleted messages get saved to my "Trash" folder on the server) I do not think I should have to change them, but because of the autosave feature saving almost every 3 characters typed, I have an over abundance of versions saved in my Trash folder. This problem would be solved were there a preference somewhere I could select to save drafts "manually only" or "opened messages save when quitting" or something along those lines.
    Is this a preference setting already that I am missing?
    I would settle for a rule, just not sure what perameters should be set for this to work.
    Help

    Typically a server has a settable parameter to limit concurrent connections. Check the server's documentation.

  • Is there a way to suppress calls to modify view method?

    We have a WDP application which consists of a tabstrip with multiple tabs. We find that everytime we click on a tab, all the modify view methods in the other tabs get executed, even though it is not necessary.
    This adds to response time BECAUSE WDP executes on the server and there are round trips to the server!
    Is there a way to suppress this?

    Hi Yew
    Why dont you find out which tab has been selected and execute only the relevant set of methods for the tab selected. Check this post for code samples on how to determine the selected tab
    Re: How to get the name of a Tab at runtime
    Regards
    Pran

  • Is there a way to recover the spfile if I remove the spfile?

    Hi,
    Is there a way to recover the spfile if I remove the spfile?
    I did a rman full db backup.
    thanks.

    You can user RMAN to recover your spfile, see Note 372996.1 Using RMAN to Restore and Recover a Database When the Repository and Spfile/Init.ora Files Are Also Lost, RMAN is able to startup the instance even when there is no spfile/pfile, then you can recover your spfile from your last backup.
    RMAN> startup nomount;
    connected to target database (not started)
    startup failed: ORA-01078: failure in processing system parameters
    LRM-00109: could not open parameter file '/u01/app/oracle/product/10.2.0/db_1/dbs/initorcl.ora'
    starting Oracle instance without parameter file for retrival of spfile
    Oracle instance started
    Total System Global Area     159383552 bytes
    Fixed Size                     1266344 bytes
    Variable Size                 54529368 bytes
    Database Buffers             100663296 bytes
    Redo Buffers                   2924544 bytes
    RMAN> set dbid=1176145568;
    executing command: SET DBID
    RMAN> restore spfile from autobackup recovery area '/u01/app/oracle/flash_recovery_area';
    Starting restore at 05/11/2008 10:49:53
    using channel ORA_DISK_1
    recovery area destination: /u01/app/oracle/flash_recovery_area
    database name (or database unique name) used for search: ORCL
    channel ORA_DISK_1: autobackup found in the recovery area
    channel ORA_DISK_1: autobackup found: /u01/app/oracle/flash_recovery_area/ORCL/autobackup/2008_11_02/o1_mf_s_669748005_4jw93oyk_.bkp
    channel ORA_DISK_1: SPFILE restore from autobackup complete
    Finished restore at 05/11/2008 10:49:57The non-default parameters you set in your spfile are also listed in the alert.log so you can copy these values and create a pfile, then an spfile.
    Starting up ORACLE RDBMS Version: 10.2.0.4.0.
    System parameters with non-default values:
      processes                = 150
      nls_territory            = AMERICA
      sga_target               = 205520896
      control_files            = /u01/app/oracle/product/10.2.0/db_1/cfgtoollogs/dbca/orcl/tempControl.ctl
      db_block_size            = 8192
      compatible               = 10.2.0.3.0
      log_archive_format       = %t_%s_%r.dbf
      db_file_multiblock_read_count= 16
      db_create_file_dest      = /u02/oradata
      db_recovery_file_dest    = /u01/app/oracle/flash_recovery_area
      db_recovery_file_dest_size= 4294967296
      undo_management          = AUTO
      undo_tablespace          = UNDOTBS1
      remote_login_passwordfile= EXCLUSIVE
      db_domain                = oracle.com
      dispatchers              = (PROTOCOL=TCP) (SERVICE=orclXDB)
      job_queue_processes      = 10
      background_dump_dest     = /u01/app/oracle/admin/orcl/bdump
      user_dump_dest           = /u01/app/oracle/admin/orcl/udump
      core_dump_dest           = /u01/app/oracle/admin/orcl/cdump
      audit_file_dest          = /u01/app/oracle/admin/orcl/adump
      db_name                  = seeddata
      db_unique_name           = orcl
      open_cursors             = 300
      pga_aggregate_target     = 67108864
    PMON started with pid=2, OS id=12906HTH
    Enrique
    PS. If your problem was solved, consider marking the question as answered

  • Is there a way to Default the Contractual User Type in Licence tab in SU01.

    Hi Guys,
    Is there any way to Default the Contractual User Type in Licence tab while creating users in SU01 to a specific value. Any help would be appreciated.
    Thanks,
    Naveen

    Naveen, though you marked the question as answered, there is another alternative (needs change mgmt involved)-
    1.Go to the field where you want the parameter ID to appear.
    2.Go to the technical help for the field.  In this case the Contractual User Type field.
    3.Double click on the Screen data screen number (0112).
    4.Click on the Element list tab and look for the screen field (from previous page).  It is important that you find the entry with a type of I/0 not Text (US930-USERTYP).
    5.When you find the entry click the special attributes tab.  There are two columns on the right hand side ‘GET Parameter’ and Parameter.  The GET column needs to be selected for the parameter ID to be active.
    6.Note if you change a field it is important to activate the change in addition to saving or the change will not take effect.
    7.Probably you would like to make this change in the development system and move transport to other systems.
    After this you have to set this parameter in your user master to the required value.

  • Is there any way to force the applet to load the file without using cache?

    Hi,
    I have the applet that renders some data from a file specified as the parameter. The problem is that the user can do something, that changes the input file and reloads the page, but the applet renders old data (from browser cache most probably)
    Is there any way to force the applet to load the file without using cache?
    Regards,
    Zdenek

    The initial view (IV) settings within a PDF file are static tags - they can't be made to dynamically-adapt based on the window dimensions,it's the renderer (Acrobat, Reader, or whatever else is opening the file) that decides if and how it will follow the IV requested by the file header.
    It would be possible to use a Page Open action on the first page of the file, which does some nasty math with the various doc.*WindowRect objects to work out how much "wasted" space there is, and then set the doc.layout and doc.zoomType properties - but page actions are a different concept to IV as the zoom will reset itself every time that page is viewed. Users don't like their application apparently fiddling with the zoom level without being told to!

  • *Is there any way to limit the Chart Bar size dynamically?*

    Hi
    I have selected the Marker size as Medium for my Bar chart.
    Bar chart bar showing too big when there is only one bar.
    Is there any way to limit the bar size dynamically?
    Thank you

    hi Ruwan,
    Don is correct in that there is no option in the chart design component to do this.
    what you can do though (i know it is a pain) is to
    1) create a new chart in a new section with a narrower bar using the chart options dialogue
    2) create a conditional suppression formula for the new section and the old chart section based on the value returned in the Show Value for the chart
    i have created a request for a charting overhaul [here |https://ideas.sap.com/community/products_and_solutions/crystalreports;jsessionid=B3E2E9F6A6CC9C9F5321659382A91855.node0]in the ideas place which includes a solution for this particular issue. please feel free to give it the thumbs up if you think that this is a worthwhile idea.
    jamie

  • Is there any way to limit the number of Threads running in Application(JVM)

    Hello all,
    is there any way to limit the number of Threads running in Application(JVM)?
    how to ensure that only 100 Threads are running in an Application?
    Thanks
    Mohamed Javeed

    You should definitely use a thread pool for this. You can specify maximum number of threads that can be run. Be note that the thread pool will only limit the number of threads that are submitted to it. So donot call "Thread"s start() method to start thread on your own. Submit it to the pool. To know more, study about executor service and thread pool creation. Actually it will not be more than 20 line code for a class and you might need maximum of 2 such classes, one for threadPool and other one for rejection handler (if you want).
    Just choose the queue used carefully, you just have to pass it as a parameter to the pool.
    You should use "Bounded" queue for limiting threads, but also be careful in using queues like SynchronizedQueue as the queue will execute immediately the threads submitted to it if maximum number of threads have not been running. Otherwise it will reject it and you should use rejection handler. So if your pool has a synchronized queue of size 100, if you submit 101th thread, it will be rejected and is not executed.
    If you want some kind of waiting mechanism, use something like LinkedBlockingQueue. What this will do is even if you want 100 threads, you can specify the queue's size to be 1000, so that you can submit 1000 threads, only 100 will run at a time and the remaining will wait in the queue. They will be executed when each thread already executing will complete. Rejection occurs only when the queue oveflows.

  • Is there any way to collect the file list from UTL_FILE_DIR.

    I expect the use "Oracle supplied package UTL_FILE" to import our customer order shipments to table by XML format files. I already did the procedure to import one XML file into Table by DBMS_XMLSave.insertXML and UTL_FILE. GET_LINE. And it did work.
    My question is :
    Is there any way to collect the file list from UTL_FILE_DIR. (I put all import XML files into `/usr/tmp?, I want to get all file names from this folder and feed them into UTL_FILE.FOPEN.)
    Thanks in advance

    UTL_FILE_DIR is a very dangerous and deprecated parameter. Oracle very specifically recommends not using it. You should be using directory objects instead.
    As for doing a directory listing, you can use Java stored proc. External procs/functions are not required.
    The following sample shows how to use such a Java stored proc to insert the result of a directory listing into a session temporary table:
    create or replace and compile java source named "ListFiles" as
    import java.io.*;
    import java.sql.*;
    public class ListFiles
            public static void getList(String directory, String filter)
            throws SQLException
                    File path = new File( directory );
                    final String ExpressionFilter =  filter;
                    FilenameFilter fileFilter = new FilenameFilter() {
                            public boolean accept(File dir, String name) {
                                    if(name.equalsIgnoreCase(ExpressionFilter))
                                            return true;
                                    if(name.matches("." + ExpressionFilter))
                                            return true;
                                    return false;
                    String[] list = path.list(fileFilter);
                    String element;
                    for(int i = 0; i < list.length; i++)
                            element = list;
    #sql {
    insert
    into directory_list
    ( directory, filename )
    values
    ( :directory, :element )

Maybe you are looking for

  • Brazil - Withholding tax in A/R credit memos / notes

    Hi all, We have implemented a proto-type of SAP ERP in Brazil to check out the taxes and in particularly the withholding taxes (WHT). We now have a test customer and test vendor for which withholding taxes have been activated and as a result, a withh

  • Delayed sound from DVD mov

    I have a audigy ZS and when I play a DVD movie the sound is delayed. You can see the persons mouth moving and then the sound starts. Any ideas :-)

  • Problem in search help field clear

    Hi,   I have two customised screen fields for these i created search helps through FM F4IF_INT_TABLE_VALUE_REQUEST.one is type and another one is subtype.If i select a type then corresponding subtypes will be displayed for subtype field.for this iam

  • Incorrect sort order of rows in Purchase Order based on Sales Order

    Hello Experts. I have this problem on SAP B1 8.81 PL 04: I create a Purchase Order based on a Sales Order with 10 item rows, ticking the purchase order box in the logistic tab. The sort order of rows is different between PO and SO. I need the same or

  • When are the new micros coming o

    So the new 4 gig and 6 gig micros have been anounced...so when are they coming out? also is there any mention of new accessories soon? and finally when the new micros come out are they going to contain the same problems as the 5 gig ones? Please repl