Open lanitochka17 opened 3 weeks ago
Triggered auto assignment to @garrettmknight (Bug
), see https://stackoverflow.com/c/expensify/questions/14418 for more details. Please add this bug to a GH project, as outlined in the SO.
@garrettmknight FYI I haven't added the External label as I wasn't 100% sure about this issue. Please take a look and add the label if you agree it's a bug and can be handled by external contributors
We think that this bug might be related to #wave-control
"Subsidiary" shows while the connection is syncs for the first time
When the sync is in progress we don't hide integrationSpecificMenuItems https://github.com/Expensify/App/blob/e77f20458ad13d94c7b0188acc2ed1a91bd8ccbd/src/pages/workspace/accounting/PolicyAccountingPage.tsx#L319
We should hide menuItems when sync is in progress. Add isSyncInProgress
here
https://github.com/Expensify/App/blob/e77f20458ad13d94c7b0188acc2ed1a91bd8ccbd/src/pages/workspace/accounting/PolicyAccountingPage.tsx#L319
(isEmptyObject(integrationSpecificMenuItems) || shouldShowSynchronizationError || isEmptyObject(policy?.connections) || isSyncInProgress ? [] : [integrationSpecificMenuItems])
NetSuite - "Subsidiary" shows while the connection is syncs for the first time
We display the "Subsidiary" although there is no value to display for the Subsidiary
We should return empty object if there is no value for Subsidiary, like we do for the sage intact entity https://github.com/Expensify/App/blob/e77f20458ad13d94c7b0188acc2ed1a91bd8ccbd/src/pages/workspace/accounting/PolicyAccountingPage.tsx#L174-L178
Update this code to the following
return !policy?.connections?.netsuite?.options?.config?.subsidiary
? {}
: {
description: translate('workspace.netsuite.subsidiary'),
...
};
additionally, we can do the same for Xero Organization Name
Job added to Upwork: https://www.upwork.com/jobs/~01a057b4870b92dd2e
Triggered auto assignment to Contributor-plus team member for initial proposal review - @ikevin127 (External
)
@Nodebrute Thank you for the proposal. While the observation mentioned in your proposal's RCA is not wrong, when it comes to the solution I think it's best to only hide integrationSpecificMenuItems
specific sections if there's no information to be displayed for a specific section instead of hiding all sections based on isSyncInProgress
.
The reasoning would be that if let's say isSyncInProgress
is false (sync finished) but there's no data returned for that specific section -> then the UI will still show the empty Subsidiary
section in our case.
@nyomanjyotisa's proposal looks good to me. The RCA is correct and the proposed solution fixes the issue as per the Expected result, following the code pattern we already use in the SageIntacct case.
PR Note: We should keep this within scope and only fix the NetSuite - Subsidiary issue by using the !netSuiteSubsidiaryList?.length ? {} : {...
check, similar (but reverse) to what is used in the onPress
to return early (see SageIntacct case model).
additionally, we can do the same for Xero Organization Name
cc @Beamanator What do you think about the above PR Note regarding keeping the fix for this issue within scope, do you agree or think we should extend the fix to handle the Xero - Organization case as well ?
πππΒ C+ reviewed
Triggered auto assignment to @Beamanator, see https://stackoverflow.com/c/expensify/questions/7972 for more details.
@garrettmknight, @Beamanator, @ikevin127 Whoops! This issue is 2 days overdue. Let's get this updated quick!
Currently discussing (scroll down from this comment) what to do with NetSuite related issues when it comes to people who don't have credentials, this includes all Contributors and all but one C+.
Quoting:
I could argue that the change / fix is obvious to the point where one wouldn't even need the credentials to test - but I understand that that's not not how we do things.
If I don't get access to the credentials soon (this week), I guess there's no other option then to have you take over.
C+ w/ Netsuite credentials said: And contributors will not have access to these credentials anytime soon
^ Not sure what happens to the contributors which posted good proposals on these issues given they will never have the credentials to test the changes if they are assigned and have to complete their PR Author Checklist :think0:
cc @Beamanator for context.
π£ @ikevin127 π An offer has been automatically sent to your Upwork account for the Reviewer role π Thanks for contributing to the Expensify app!
π£ @nyomanjyotisa π An offer has been automatically sent to your Upwork account for the Contributor role π Thanks for contributing to the Expensify app!
Offer link Upwork job Please accept the offer and leave a comment on the Github issue letting us know when we can expect a PR to be ready for review π§βπ» Keep in mind: Code of Conduct | Contributing π
@ikevin127 - honestly i think the solution is straightforward enough to also apply the Xero fix
β οΈ Automation failed here -> this should be on [HOLD for Payment 2024-09-20] according to 5 days ago's production deploy from https://github.com/Expensify/App/pull/48519#issuecomment-2350595614.
cc @garrettmknight
If you havenβt already, check out our contributing guidelines for onboarding and email contributors@expensify.com to request to join our Slack channel!
Version Number: 9.0.26-1 Reproducible in staging?: Y Reproducible in production?: N If this was caught during regression testing, add the test name, ID and link from TestRail: https://expensify.testrail.io/index.php?/tests/view/4901046&group_by=cases:section_id&group_order=asc&group_id=314239 Issue reported by: Applause - Internal Team
Action Performed:
Expected Result:
"Subsidiary" should only show after the sync finished
Actual Result:
"Subsidiary" shows while the connection syncs for the first time
Workaround:
Unknown
Platforms:
Which of our officially supported platforms is this issue occurring on?
Screenshots/Videos
Add any screenshot/video evidence
https://github.com/user-attachments/assets/464139e1-70a0-4d78-85ec-f0570e962eab
View all open jobs on GitHub
Upwork Automation - Do Not Edit
Issue Owner
Current Issue Owner: @ikevin127