Problem with Pega Studio v22

While working with Pega Studio 22.1.12, an error occurs:

ERROR | 2024-02-14 01:19:20.742 | 1 | STA | Shell | App | Unhandled exception has occurred that may cause the application to become unstable. Terminate Pega Robot Studio?

Input string was not in a correct format.
System.Windows.Markup.XamlParseException: Input string was not in a correct format. —> System.FormatException: Input string was not in a correct format.
at System.Number.ParseDouble(String value, NumberStyles options, NumberFormatInfo numfmt)
at System.String.System.IConvertible.ToDouble(IFormatProvider provider)
at Pega.Studio.UI.Converters.ControlSizeRelativeToScreenConverter.Convert(Object value, Type targetType, Object parameter, CultureInfo culture)
w System.Windows.Data.BindingExpression.TransferValue(Object newValue, Boolean isASubPropertyChange)
w System.Windows.Data.BindingExpression.Activate(Object item)
w System.Windows.Data.BindingExpression.AttachToContext(AttachAttempt attempt)
w System.Windows.Data.BindingExpression.AttachOverride(DependencyObject target, DependencyProperty dp)
w System.Windows.Data.BindingExpressionBase.OnAttach(DependencyObject d, DependencyProperty dp)
w System.Windows.StyleHelper.GetInstanceValue(UncommonField1 dataField, DependencyObject container, FrameworkElement feChild, FrameworkContentElement fceChild, Int32 childIndex, DependencyProperty dp, Int32 i, EffectiveValueEntry& entry) w System.Windows.FrameworkTemplate.ReceivePropertySet(Object targetObject, XamlMember member, Object value, DependencyObject templatedParent) w System.Windows.FrameworkTemplate.<>c__DisplayClass45_0.<LoadOptimizedTemplateContent>b__3(Object sender, XamlSetValueEventArgs setArgs) w System.Xaml.XamlObjectWriter.OnSetValue(Object eventSender, XamlMember member, Object value) w System.Xaml.XamlObjectWriter.Logic_ApplyPropertyValue(ObjectWriterContext ctx, XamlMember prop, Object value, Boolean onParent) w System.Xaml.XamlObjectWriter.Logic_DoAssignmentToParentProperty(ObjectWriterContext ctx) w System.Xaml.XamlObjectWriter.Logic_AssignProvidedValue(ObjectWriterContext ctx) w System.Xaml.XamlObjectWriter.WriteEndObject() w System.Windows.FrameworkTemplate.LoadTemplateXaml(XamlReader templateReader, XamlObjectWriter currentWriter) --- End of internal exception stack trace --- w System.Windows.Markup.XamlReader.RewrapException(Exception e, IXamlLineInfo lineInfo, Uri baseUri) w System.Windows.FrameworkTemplate.LoadTemplateXaml(XamlReader templateReader, XamlObjectWriter currentWriter) w System.Windows.FrameworkTemplate.LoadTemplateXaml(XamlObjectWriter objectWriter) w System.Windows.FrameworkTemplate.LoadOptimizedTemplateContent(DependencyObject container, IComponentConnector componentConnector, IStyleConnector styleConnector, List1 affectedChildren, UncommonField1 templatedNonFeChildrenField) w System.Windows.FrameworkTemplate.LoadContent(DependencyObject container, List1 affectedChildren)
w System.Windows.StyleHelper.ApplyTemplateContent(UncommonField1 dataField, DependencyObject container, FrameworkElementFactory templateRoot, Int32 lastChildIndex, HybridDictionary childIndexFromChildID, FrameworkTemplate frameworkTemplate) w System.Windows.FrameworkTemplate.ApplyTemplateContent(UncommonField1 templateDataField, FrameworkElement container)
w System.Windows.FrameworkElement.ApplyTemplate()
w System.Windows.FrameworkElement.MeasureCore(Size availableSize)
w System.Windows.UIElement.Measure(Size availableSize)
w System.Windows.Documents.AdornerDecorator.MeasureOverride(Size constraint)
w System.Windows.FrameworkElement.MeasureCore(Size availableSize)
w System.Windows.UIElement.Measure(Size availableSize)
w System.Windows.Controls.Decorator.MeasureOverride(Size constraint)
w System.Windows.FrameworkElement.MeasureCore(Size availableSize)
w System.Windows.UIElement.Measure(Size availableSize)
w System.Windows.Controls.Primitives.PopupRoot.MeasureOverride(Size constraint)
w System.Windows.FrameworkElement.MeasureCore(Size availableSize)
w System.Windows.UIElement.Measure(Size availableSize)
w System.Windows.Interop.HwndSource.SetLayoutSize()
w System.Windows.Interop.HwndSource.set_RootVisualInternal(Visual value)
w System.Windows.Controls.Primitives.Popup.SetRootVisualToPopupRoot()
w System.Windows.Controls.Primitives.Popup.CreateWindow(Boolean asyncCall)
w System.Windows.Controls.Primitives.Popup.OnIsOpenChanged(DependencyObject d, DependencyPropertyChangedEventArgs e)
w System.Windows.DependencyObject.OnPropertyChanged(DependencyPropertyChangedEventArgs e)
w System.Windows.FrameworkElement.OnPropertyChanged(DependencyPropertyChangedEventArgs e)
w System.Windows.DependencyObject.NotifyPropertyChange(DependencyPropertyChangedEventArgs args)
w System.Windows.DependencyObject.UpdateEffectiveValue(EntryIndex entryIndex, DependencyProperty dp, PropertyMetadata metadata, EffectiveValueEntry oldEntry, EffectiveValueEntry& newEntry, Boolean coerceWithDeferredReference, Boolean coerceWithCurrentValue, OperationType operationType)
w System.Windows.DependencyObject.SetValueCommon(DependencyProperty dp, Object value, PropertyMetadata metadata, Boolean coerceWithDeferredReference, Boolean coerceWithCurrentValue, OperationType operationType, Boolean isInternal)
w System.Windows.Data.BindingOperations.SetBinding(DependencyObject target, DependencyProperty dp, BindingBase binding)
w System.Windows.Controls.Primitives.Popup.CreateRootPopupInternal(Popup popup, UIElement child, Boolean bindTreatMousePlacementAsBottomProperty)
w System.Windows.Controls.ToolTip.OnIsOpenChanged(DependencyObject d, DependencyPropertyChangedEventArgs e)
w System.Windows.DependencyObject.OnPropertyChanged(DependencyPropertyChangedEventArgs e)
w System.Windows.FrameworkElement.OnPropertyChanged(DependencyPropertyChangedEventArgs e)
w System.Windows.DependencyObject.NotifyPropertyChange(DependencyPropertyChangedEventArgs args)
w System.Windows.DependencyObject.UpdateEffectiveValue(EntryIndex entryIndex, DependencyProperty dp, PropertyMetadata metadata, EffectiveValueEntry oldEntry, EffectiveValueEntry& newEntry, Boolean coerceWithDeferredReference, Boolean coerceWithCurrentValue, OperationType operationType)
w System.Windows.DependencyObject.SetValueCommon(DependencyProperty dp, Object value, PropertyMetadata metadata, Boolean coerceWithDeferredReference, Boolean coerceWithCurrentValue, OperationType operationType, Boolean isInternal)
w System.Windows.DependencyObject.SetValue(DependencyProperty dp, Object value)
w System.Windows.Controls.PopupControlService.RaiseToolTipOpeningEvent(Boolean fromKeyboard)
w System.Windows.Threading.DispatcherTimer.FireTick(Object unused)
w System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
w System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)

Sometimes the error occurs after opening the project, and sometimes immediately upon starting Pega Studio. I tried deleting files in AppData\Roaming\Pegasystems, and then reinstalling the application, but the error still persists. What could be causing this?

@PawelB84 Is this happening when opening Studio or after opening Studio and then loading a project?

@ThomasSasnett

Sometimes it happens after starting the application and before opening the project, and sometimes after opening the project. I also noticed that if I manage to open the project and do nothing further, the error does not appear. However, if I go back to the project and try to do something, the error appears almost immediately.

We also installed the latest Studio version - 22.1.27, but it didn’t change anything.

@PawelB84 Can you attach a StudioLog? That might help me see what is happening. I suspect there must be a config file corrupted somehow.

@ThomasSasnett

I have attached the log from Studio. In this case I opened the application, then Project1 (which is empty) and finally Automation. And then the error appeared.

I have also attached the configuration files: CommonConfig from C:\ProgramData\Pegasystems and the rest of the files from C:\Users\xxx\AppData\Roaming\Pegasystems

The only thing I changed manually since installing Pega is the logging level to 4 in PegaStudioConfig.

files.zip (31.5 KB)

@PawelB84 It seems there might be an issue with one of the config files. It might be the culture of your machine that is not properly handled. I suggest opening a support request. If you do that, please list the INC here.

One thing you can try is to reinstall but delete the contents of %AppData%\Pegasystems before installing to recreate the config files with stock ones.

@PawelB84 This is interesting. Please open a support request to get this looked into. I am unaware of any language restriction, but I could see it being something we need to look into.

@PawelB84 This should be resolved in the latest release of 22.1 (released yesterday).

****** Moderation found solution in INC matches Thomas’ assessment ************

Product issue caused by a machine numeric format not using the en-US culture.

Fix released in 22.1.29


@ThomasSasnett

I changed the language settings from my default - Polish, to English. This probably solved the problem. But I have a question - does Pega Studio 22 only work with the English language pack? Can this be changed, for example in some configuration file?

@ThomasSasnett

I think I know what the problem is. In Polish the decimal symbol is “,”. In English it is “.”

I did a test and changed this one parameter. If the dot is set, Pega Studio works, and if the comma is set, it does not work and the error indicated earlier appears - Input string was not in a correct format.

In my opinion, there are numeric parameters in some configuration file that have decimal values ​​separated by a dot.
In Polish language settings with the decimal symbol as a comma, such a parameter is not treated as a number.

For example, I found the following values ​​in the PegaStudioSettings.json file:

“MainWindow”: {
“WindowState”: “Maximized”,
“Left”: 146.0,
“Top”: 146.0,
“Width”: 1200.0,
“Height”: 700.0
},

Maybe this file is the problem?

@ThomasSasnett

Could I find out if this issue will be resolved somehow?
Theoretically, we already know what the problem is, so perhaps it can be improved?

We can use Pega Studio 22 by changing the decimal symbol to a dot, but the default is a comma in Poland, so it is a temporary solution for us.

@PawelB84 Did you open a support request? If so, they can work with you to get it resolved as soon as possible.

Hi @MarissaRogers

I created a ticket INC-B10733.

Hi @PawelB84

If you open a ticket as @ThomasSasnett requested, please let us know the ID so that we can track it for you!

Thanks!