Quantcast
Channel: OutSystems Community
Viewing all 1476385 articles
Browse latest View live

[Forums] Input Mask on Mobile for Currency

$
0
0

Vonnelize Haupt wrote:

Michael Segbers wrote:

Hello Vonnelize,

the problem seems to be that the input mask you are using always interprets the last two digits of the stored value as the decimals, while the decimal-format of the value doesn't save trailing zeros (for reference: a stored value of 2.5 is shown as $0.25). This is similar to this problem https://www.outsystems.com/forums/discussion/35103/error-covnerting-data-type-decimal-to-decimal/ in that displaying a stored decimal value can be tricky.

The way I'd deal with this would be to not use the mask and not input the value as a number, but to use Text for input and output and convert between text and decimal data types. This would allow you to perform text-based checks in the OnAfterFetch-action, like

If(
 Index(DecimalToText(GetOrderById.List.Current.Order.CurrencyValue), ".", searchFromEnd: True) = 1, 
  TextToDecimal(Concat(DecimalToText(GetOrderById.List.Current.Order.CurrencyValue),"0")), 
  If(Index(DecimalToText(GetOrderById.List.Current.Order.CurrencyValue), ".", searchFromEnd: True) = -1, 
   TextToDecimal(Concat(DecimalToText(GetOrderById.List.Current.Order.CurrencyValue),".00")), 
   GetOrderById.List.Current.Order.CurrencyValue)
)

This would add the trailing zeros based on how many decimal places were stored with it. To display the stored value in an expression you could also potentionaly use function "format/formatcurrency" (like the others I used to be found under the built-in functions).

Similary, if you don't want to convert between decimal and text, you could try to continue using the input mask and the function "Mod(n,m)" to determine if you have less than 2 decimal places in your stored value, and then (temporarily) mulitply by 10 or 100. You just need to remember to divide by the same number again if the value doesn't get changed, since you'll increase the stored number everytime someone displays it otherwise.


I am sure there are more elegant ways to solve this, although they might involve JavaScript. I hope this helps.

Best regards,
Michael

Hi Michael, thanks for the detailed response. 

Your recommended solutions can work and I will try the second option. However I have loads of currency fields on the app  that I need to display this way. Your solutions requires coding on every field instead of just using standard functionality so it becomes a big task to never be able to use the database and always use temporary text variables or calculations. It kind of defeats the idea of simple drag and drop of basic functionality ;-( 


 I am going to try your solution but I was really hoping that there is a better and easy way to handle masks in OutSystems. 


I will let you know how it goes!




Hi Vonnelize,

I would actually recommend to use the first option if you have lots of fields. You should be able to create one or two custom client actions that contain the needed logic / conversions and you can just use those as your OnAfterFetch - action and one you can drag into every "save" action instead of manually coding every field etc. You can also just copy/paste an input field with the formatting set up the way you want it, only switching out the name of the field and the variable used. That should reduce the extra work considerably.

For replacing lots of the same variables F12 and Edit > Find & Replace (CTRL+R) save a lot of time and headaches.

Best regards;
Michael



[Forums] REST API URL Path in Parameter format

$
0
0

Hi Amelie,

You need to add "/"  as prefix in URL Path.



Thanks,

Narendra

[Forums] pagination and search

$
0
0

Sravan Vanteru wrote:

Hi Ronan T,

Yes search value you can retain but i don't think you can able retain pagination if your using inbuilt pagination provided by OutSystems.


Sravan

Hi Sravan Vanteru,

By using java script i can get the button number and trigger it but if any future button is clicked i can't get  that button number  and trigger it

Thanks,

Ronan  T


[Forums] Full Screen image

$
0
0

Hi, 

I want to show the image in the full screen in the web app but even if i am giving width 100% there is always a gap on both sides.How can i expand the image such that it spans the full screen?

[Forums] pagination and search

$
0
0

Hi Ronan T,

Yes search value you can retain but i don't think you can able retain pagination if your using inbuilt pagination provided by OutSystems.


Sravan

[Forums] None of the column headers match with the record attributes

$
0
0

I just found the problem. It has something to do with the name of the "Excel to Record List" action. When I dragged it to the work area I renamed it to "ExcelProductionData", as a result it automatically selected the "ProductionData" entity as the Record Definition. When I renamed the widget action to ExcelToProdDataList" and manually selected the Record Definition again, it worked.

[Forums] Calendar resizing

$
0
0

Hi Anthony Phan,

I have checked oml file you have provided nothing wrong in it, That's issue with Layout means currently calendar occupied 4 columns as you see in development , this is bootstrap layout where it will divide screen into 12 columns and aligns content accordingly. In our case mobile screen will have very less space and it try to occupy only 4 columns out of it. We can increase this 10 and see it will come perfectly in mobile but desktop it will look weird as its very big. 

This is one of the problem of Outsytems mobile development, you can't have option to specify the content to occupy space based on screen size ( AS we do in normal .NET Development ).

Solution : Need to write media queries to manage this if you know css. example like below.

What it means occupy screen 80% for all medium screens ( like mobile and tablet ).

SyntaxEditor Code Snippet

@media screen and (max-width: 600px) {
.MobileCalendar{
    width:  80%;
}
}



Hope this helps

Sravan

[Forums] REST API URL Path in Parameter format


[Forums] Can component be updated to use JQuery 1.8.3?

$
0
0

Hi, 

When downloading the component, and opening the DiffEntityDataToText module there is the following warning:

Deprecated jQuery Version
jQuery version '1.4.2 OS' is currently being deprecated. Consider upgrading to the latest version, since new features might not work as expected.

Could this be changed in a next version of the component to the 1.8.3?

Regards,

Daniel

[Forums] Always publishing failure , the error message from server see content.

$
0
0

Hi Jack,

Your error message different than the screenshot. It's strange.
The screenshot relates to the communication I think. Can you access the service center with the browser? https://10.203.74.98/servicecenter

If you can could you check the deployment services in Service Center > Monitoring > Environment Health.
All should be green.

With best regards,
Ferhat Karatay

[Forums] pagination and search

$
0
0

Hi,

 I have a table which is paginated and search fields i need to retain the searched values on window load and even pagination should not get refresh,to retain the searched values i am manually triggering the search button but pagination is getting reset to 1st page i don't want pagination to get reset


Thanks,

Ronan T 

[Ideas] Be able to sort the users list in LifeTime on default role

$
0
0

Hello,

Sometimes I want to have an overview of which user has role X. This can be done in the detail screen of the role itself but it would be nice if we could sort the users list in LifeTime on the 'Default Role' column so we have an overview for all users/roles  in that screen. Attached is screenshot to clearify.

it's a small improvement, but in some cases helps creating quicker overview.


Kind regards,
Evert

[Ideas] SAML2.0 and OIDC authentication of Developer, studio, lifetime etc accounts

$
0
0

A significant security and GDPR compliance requirement is being able to automatically disable accounts when staff leave the firm or a team.  Whilst we can build applications in OutSystems with various authentication options the only external authentication method available for the developer environment is adfs. Given the wide use of platforms such as OKTA for synchronising and managing cloud accounts it would be great if the OutSystems platform itself supported SAML2.0 and/or OIDC. 

[Ideas] Detect possible infinite loops in action flows and force the definition of max iterations

$
0
0
As you all know infinite loops are great ways to slow down or even cause a non-responsive server.
Service Studio would detect circular flows (not with For Each) and force the user to define the max iterations allowed. If reached, it would trigger an exception.
user-made-loop detection

[Ideas] Static Code Analysis

$
0
0

Even though Service Studio as started to incorporate static code analysis in TrueChange, it is still not compared with the static code analysis tools used in traditional development languages, like Sonar.


OutSystems should incorporate advanced static code analysis, with extensive anti-patterns validation and also provide a tool with dashboards and reports to allow Tech Leads to have more control over the code quality of their applications and factories.


[Ideas] Allow multi-tasking in Service Studio operations (e.g. Test Query)

$
0
0
Some operations from Service Studio require that the Developer stops until he gets feedback from the tool. Take the Test Query feature, for example: I sometimes work with two screens and this gives me the advantage of testing a query on one screen while changing it (actually a copy) on another screen... if only Service Studio didn't block me each time I did a Test Query... would be great!

[Ideas] Make "Refresh Data" and "Ajax Refresh" needless and automatic

$
0
0
Just like you can rename identifiers (entity names, I/O/local variables, etc.) and have all their usages throughout the code be renamed instantly (from the point of view of the developer), identifier value changes (i.e., changes in variables, aggregates, etc.) could also be tracked when an action finishes on the same screen.

When this is the case, any parts of the screen that were rendered with variables, aggregates, etc. that were changed in the action should be AJAX-refreshed automatically. Aggregates refresh automatically if the primary keys that were changed are now on screen / are in the scope of the aggregate.

Tracking could occur either with a "dirty" flag for each variable/aggregate, or be performed after the action finishes on the same screen, comparing all screen widgets' variables'/aggregates' current values with the new values after the action finished (a bit like AngularJS v1 did).

I'm sure this is not as trivial as what I'm spelling out here, but this is the basic idea.

Eliminating these two ("Refresh Data" and "Ajax Refresh") would (IMHO) remove another roadblock for the "citizen developer" who will likely not be accustomed to being alert to disparate display/data refreshing requirements.

[Ideas] Fix Typo

[Ideas] Make "Use NOLOCK" an option on queries

$
0
0
I'd like to see a checkbox/property on Simple Queries to allow them to use the NOLOCK hint (or Oracle equivalent) for those who are willing to accept the possible consequences. The majority of our queries could be done without locking and this would be a big performance boost.

J.Ja

[Ideas] Add classes instead of replace the default ones on Extend Properties

$
0
0

I want to be able to have dynamic classes but instead to replace the other inherited just add one more class to the element

Viewing all 1476385 articles
Browse latest View live


Latest Images

<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>