MoneyTools / MyMoney.Net

MyMoney is a rich client .NET ClickOnce application for managing your personal finances. It is written entirely in C# and is designed for programmers who want easy access to their data and who want to quickly and easily add their own features. Your data will not be locked up in some proprietary format, it is yours to do with as you like.
https://moneytools.github.io/MyMoney.Net/
70 stars 21 forks source link

!! Export does not include Security and Units #51

Closed andreva7 closed 2 years ago

andreva7 commented 2 years ago

I am trying to export stock account transactions so I can do some math on the data. Is there an option to add to the export at least security name and units? Exporting all columns would be great too.

clovett commented 2 years ago

I added this, let me know if it works for you: https://github.com/clovett/MyMoney.Net/commit/051fef1486237e4299c0e16f6c0625890d65592f

andreva7 commented 2 years ago

I have an updated visual studio and code compiles and runs. I just ran my binary, which loaded my data file and exited. I saw this in the output window: and the ESPP index file has over 80 entries in it

'MyMoney.exe' (CLR v4.0.30319: MyMoney.exe): Loaded 'C:\WINDOWS\Microsoft.Net\assembly\GAC_MSIL\PresentationFramework-SystemCore\v4.0_4.0.0.0__b77a5c561934e089\PresentationFramework-SystemCore.dll'. Skipped loading symbols. Module is optimized and the debugger option 'Just My Code' is enabled. System.Windows.Data Error: 40 : BindingExpression path error: 'Name' property not found on 'object' ''AccountSectionHeader' (HashCode=47633640)'. BindingExpression:Path=Name; DataItem='AccountSectionHeader' (HashCode=47633640); target element is 'ListBoxItem' (Name=''); target property is 'AutomationId' (type 'String') Exception thrown: 'System.ServiceModel.Security.MessageSecurityException' in mscorlib.dll BeginGetExchangeRate for CAD threw exception: The HTTP request was forbidden with client authentication scheme 'Anonymous'. The thread 0x51d4 has exited with code 0 (0x0). System.Windows.Data Error: 40 : BindingExpression path error: 'Name' property not found on 'object' ''AccountSectionHeader' (HashCode=32109884)'. BindingExpression:Path=Name; DataItem='AccountSectionHeader' (HashCode=32109884); target element is 'ListBoxItem' (Name=''); target property is 'AutomationId' (type 'String') Filtered 48 items, found 0 matches in 0 ms System.Windows.Data Error: 40 : BindingExpression path error: 'Name' property not found on 'object' ''AccountSectionHeader' (HashCode=38770251)'. BindingExpression:Path=Name; DataItem='AccountSectionHeader' (HashCode=38770251); target element is 'ListBoxItem' (Name=''); target property is 'AutomationId' (type 'String') 'MyMoney.exe' (CLR v4.0.30319: MyMoney.exe): Loaded 'Microsoft.GeneratedCode'. Exception thrown: 'System.ArgumentNullException' in mscorlib.dll Failed to load statement index 'C:\Users\andre\OneDrive\Documents\Finance\andreva.MyMoney.Statements\Andre Fidelity ESPP\index.xml' System.ArgumentNullException: Value cannot be null. Parameter name: path2 at System.IO.Path.Combine(String path1, String path2) at Walkabout.Attachments.StatementManager.CheckFileHashes(StatementIndex index) in C:\Users\andre\source\repos\clovett\MyMoney.Net\Source\WPF\MyMoney\Attachments\StatementManager.cs:line 359 at Walkabout.Attachments.StatementManager.LoadIndexFile(Account a) in C:\Users\andre\source\repos\clovett\MyMoney.Net\Source\WPF\MyMoney\Attachments\StatementManager.cs:line 387 Exception thrown: 'System.ArgumentNullException' in mscorlib.dll Failed to load statement index 'C:\Users\andre\OneDrive\Documents\Finance\andreva.MyMoney.Statements\Andre Well Fargo IRA\index.xml' System.ArgumentNullException: Value cannot be null. Parameter name: path2 at System.IO.Path.Combine(String path1, String path2) at Walkabout.Attachments.StatementManager.CheckFileHashes(StatementIndex index) in C:\Users\andre\source\repos\clovett\MyMoney.Net\Source\WPF\MyMoney\Attachments\StatementManager.cs:line 359 at Walkabout.Attachments.StatementManager.LoadIndexFile(Account a) in C:\Users\andre\source\repos\clovett\MyMoney.Net\Source\WPF\MyMoney\Attachments\StatementManager.cs:line 387 The program '[21216] MyMoney.exe' has exited with code 0 (0x0).

From: Chris Lovett @.> Sent: August 2, 2022 1:19 AM To: clovett/MyMoney.Net @.> Cc: andreva7 @.>; Author @.> Subject: Re: [clovett/MyMoney.Net] !! Export does not include Security and Units (Issue #51)

I added this, let me know if it works for you: 051fef1https://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fclovett%2FMyMoney.Net%2Fcommit%2F051fef1486237e4299c0e16f6c0625890d65592f&data=05%7C01%7C%7Ceb46ddaeb2384a81bdda08da745f9ab6%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C637950251220158153%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=2Rn5xhp7Gtj8RSVDKbTNaMvK3ZTQiHyd1b4A6eL1lSY%3D&reserved=0

- Reply to this email directly, view it on GitHubhttps://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fclovett%2FMyMoney.Net%2Fissues%2F51%23issuecomment-1202168588&data=05%7C01%7C%7Ceb46ddaeb2384a81bdda08da745f9ab6%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C637950251220158153%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=peTGX0NxqtrOJCs1T4lHCfCdr%2BtgztF4C%2Fv77DO8WdU%3D&reserved=0, or unsubscribehttps://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAJBV66AVLMDD67SL2D6NU6TVXDKV5ANCNFSM55FMDSVQ&data=05%7C01%7C%7Ceb46ddaeb2384a81bdda08da745f9ab6%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C637950251220158153%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=diS6weP0aylZA4ouFzRu0MpJEyupQCDc%2BXmJujkuReQ%3D&reserved=0. You are receiving this because you authored the thread.Message ID: @.***>

clovett commented 2 years ago

Hmmm, that looks messy, I published this change in a new official version 2.0.0.9, please let me know if you have any better luck with that version, thanks.

andreva7 commented 2 years ago

Export of a stock account looks good! thanks.

andreva7 commented 2 years ago

In the index file, one of the entries only has the Data and statement balance, no filename or hash. The balance is correct for the date. I manually coped the statement file in the directory and added the statement entry in the XML record, and the statement now shows up. I did not add a hash.

I did this on two index files that had the same problem.

Now, when I run the code under VS, just starting mymoney and then closing it (doing no actions in the UI whatsoever), I get

System.Windows.Data Error: 40 : BindingExpression path error: 'Name' property not found on 'object' ''AccountSectionHeader' (HashCode=27655246)'. BindingExpression:Path=Name; DataItem='AccountSectionHeader' (HashCode=27655246); target element is 'ListBoxItem' (Name=''); target property is 'AutomationId' (type 'String') Exception thrown: 'System.ServiceModel.Security.MessageSecurityException' in mscorlib.dll BeginGetExchangeRate for CAD threw exception: The HTTP request was forbidden with client authentication scheme 'Anonymous'. The thread 0x2c48 has exited with code 0 (0x0). 'MyMoney.exe' (CLR v4.0.30319: MyMoney.exe): Loaded 'C:\WINDOWS\Microsoft.Net\assembly\GAC_MSIL\Accessibility\v4.0_4.0.0.0b03f5f7f11d50a3a\Accessibility.dll'. System.Windows.Data Error: 40 : BindingExpression path error: 'Name' property not found on 'object' ''AccountSectionHeader' (HashCode=2615989)'. BindingExpression:Path=Name; DataItem='AccountSectionHeader' (HashCode=2615989); target element is 'ListBoxItem' (Name=''); target property is 'AutomationId' (type 'String') Filtered 36 items, found 0 matches in 0 ms System.Windows.Data Error: 40 : BindingExpression path error: 'Name' property not found on 'object' ''AccountSectionHeader' (HashCode=35390522)'. BindingExpression:Path=Name; DataItem='AccountSectionHeader' (HashCode=35390522); target element is 'ListBoxItem' (Name=''); target property is 'AutomationId' (type 'String') 'MyMoney.exe' (CLR v4.0.30319: MyMoney.exe): Loaded 'Microsoft.GeneratedCode'. Exception thrown: 'System.IO.IOException' in mscorlib.dll Failed to load statement index 'C:\Users\andre\OneDrive\Documents\Finance\andreva.MyMoney.Statements\Andre Fidelity ESPP\index.xml' System.IO.IOException: The process cannot access the file 'C:\Users\andre\OneDrive\Documents\Finance\andreva.MyMoney.Statements\Andre Fidelity ESPP\index.xml' because it is being used by another process. at System.IO.Error.WinIOError(Int32 errorCode, String maybeFullPath) at System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy, Boolean useLongPath, Boolean checkHost) at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share) at Walkabout.Attachments.StatementManager.SaveIndex(StatementIndex index) in C:\Users\andre\source\repos\clovett\MyMoney.Net\Source\WPF\MyMoney\Attachments\StatementManager.cs:line 306 at Walkabout.Attachments.StatementManager.CheckFileHashes(StatementIndex index) in C:\Users\andre\source\repos\clovett\MyMoney.Net\Source\WPF\MyMoney\Attachments\StatementManager.cs:line 366 at Walkabout.Attachments.StatementManager.LoadIndexFile(Account a) in C:\Users\andre\source\repos\clovett\MyMoney.Net\Source\WPF\MyMoney\Attachments\StatementManager.cs:line 387 Exception thrown: 'System.IO.IOException' in mscorlib.dll Failed to load statement index 'C:\Users\andre\OneDrive\Documents\Finance\andreva.MyMoney.Statements\Andre Well Fargo IRA\index.xml' System.IO.IOException: The process cannot access the file 'C:\Users\andre\OneDrive\Documents\Finance\andreva.MyMoney.Statements\Andre Well Fargo IRA\index.xml' because it is being used by another process. at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath) at System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy, Boolean useLongPath, Boolean checkHost) at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share) at Walkabout.Attachments.StatementManager.SaveIndex(StatementIndex index) in C:\Users\andre\source\repos\clovett\MyMoney.Net\Source\WPF\MyMoney\Attachments\StatementManager.cs:line 306 at Walkabout.Attachments.StatementManager.CheckFileHashes(StatementIndex index) in C:\Users\andre\source\repos\clovett\MyMoney.Net\Source\WPF\MyMoney\Attachments\StatementManager.cs:line 366 at Walkabout.Attachments.StatementManager.LoadIndexFile(Account a) in C:\Users\andre\source\repos\clovett\MyMoney.Net\Source\WPF\MyMoney\Attachments\StatementManager.cs:line 387 System.Windows.Data Error: 40 : BindingExpression path error: 'Name' property not found on 'object' ''AccountSectionHeader' (HashCode=35042921)'. BindingExpression:Path=Name; DataItem='AccountSectionHeader' (HashCode=35042921); target element is 'ListBoxItem' (Name=''); target property is 'AutomationId' (type 'String') The program '[6152] MyMoney.exe' has exited with code 0 (0x0).

From: andre vachon Sent: August 2, 2022 9:50 PM To: clovett/MyMoney.Net @.>; clovett/MyMoney.Net @.> Cc: Author @.***> Subject: RE: [clovett/MyMoney.Net] !! Export does not include Security and Units (Issue #51)

I have an updated visual studio and code compiles and runs. I just ran my binary, which loaded my data file and exited. I saw this in the output window: and the ESPP index file has over 80 entries in it

'MyMoney.exe' (CLR v4.0.30319: MyMoney.exe): Loaded 'C:\WINDOWS\Microsoft.Net\assembly\GAC_MSIL\PresentationFramework-SystemCore\v4.0_4.0.0.0__b77a5c561934e089\PresentationFramework-SystemCore.dll'. Skipped loading symbols. Module is optimized and the debugger option 'Just My Code' is enabled. System.Windows.Data Error: 40 : BindingExpression path error: 'Name' property not found on 'object' ''AccountSectionHeader' (HashCode=47633640)'. BindingExpression:Path=Name; DataItem='AccountSectionHeader' (HashCode=47633640); target element is 'ListBoxItem' (Name=''); target property is 'AutomationId' (type 'String') Exception thrown: 'System.ServiceModel.Security.MessageSecurityException' in mscorlib.dll BeginGetExchangeRate for CAD threw exception: The HTTP request was forbidden with client authentication scheme 'Anonymous'. The thread 0x51d4 has exited with code 0 (0x0). System.Windows.Data Error: 40 : BindingExpression path error: 'Name' property not found on 'object' ''AccountSectionHeader' (HashCode=32109884)'. BindingExpression:Path=Name; DataItem='AccountSectionHeader' (HashCode=32109884); target element is 'ListBoxItem' (Name=''); target property is 'AutomationId' (type 'String') Filtered 48 items, found 0 matches in 0 ms System.Windows.Data Error: 40 : BindingExpression path error: 'Name' property not found on 'object' ''AccountSectionHeader' (HashCode=38770251)'. BindingExpression:Path=Name; DataItem='AccountSectionHeader' (HashCode=38770251); target element is 'ListBoxItem' (Name=''); target property is 'AutomationId' (type 'String') 'MyMoney.exe' (CLR v4.0.30319: MyMoney.exe): Loaded 'Microsoft.GeneratedCode'. Exception thrown: 'System.ArgumentNullException' in mscorlib.dll Failed to load statement index 'C:\Users\andre\OneDrive\Documents\Finance\andreva.MyMoney.Statements\Andre Fidelity ESPP\index.xml' System.ArgumentNullException: Value cannot be null. Parameter name: path2 at System.IO.Path.Combine(String path1, String path2) at Walkabout.Attachments.StatementManager.CheckFileHashes(StatementIndex index) in C:\Users\andre\source\repos\clovett\MyMoney.Net\Source\WPF\MyMoney\Attachments\StatementManager.cs:line 359 at Walkabout.Attachments.StatementManager.LoadIndexFile(Account a) in C:\Users\andre\source\repos\clovett\MyMoney.Net\Source\WPF\MyMoney\Attachments\StatementManager.cs:line 387 Exception thrown: 'System.ArgumentNullException' in mscorlib.dll Failed to load statement index 'C:\Users\andre\OneDrive\Documents\Finance\andreva.MyMoney.Statements\Andre Well Fargo IRA\index.xml' System.ArgumentNullException: Value cannot be null. Parameter name: path2 at System.IO.Path.Combine(String path1, String path2) at Walkabout.Attachments.StatementManager.CheckFileHashes(StatementIndex index) in C:\Users\andre\source\repos\clovett\MyMoney.Net\Source\WPF\MyMoney\Attachments\StatementManager.cs:line 359 at Walkabout.Attachments.StatementManager.LoadIndexFile(Account a) in C:\Users\andre\source\repos\clovett\MyMoney.Net\Source\WPF\MyMoney\Attachments\StatementManager.cs:line 387 The program '[21216] MyMoney.exe' has exited with code 0 (0x0).

From: Chris Lovett @.**@.>> Sent: August 2, 2022 1:19 AM To: clovett/MyMoney.Net @.**@.>> Cc: andreva7 @.**@.>>; Author @.**@.>> Subject: Re: [clovett/MyMoney.Net] !! Export does not include Security and Units (Issue #51)

I added this, let me know if it works for you: 051fef1https://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fclovett%2FMyMoney.Net%2Fcommit%2F051fef1486237e4299c0e16f6c0625890d65592f&data=05%7C01%7C%7Ceb46ddaeb2384a81bdda08da745f9ab6%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C637950251220158153%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=2Rn5xhp7Gtj8RSVDKbTNaMvK3ZTQiHyd1b4A6eL1lSY%3D&reserved=0

- Reply to this email directly, view it on GitHubhttps://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fclovett%2FMyMoney.Net%2Fissues%2F51%23issuecomment-1202168588&data=05%7C01%7C%7Ceb46ddaeb2384a81bdda08da745f9ab6%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C637950251220158153%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=peTGX0NxqtrOJCs1T4lHCfCdr%2BtgztF4C%2Fv77DO8WdU%3D&reserved=0, or unsubscribehttps://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAJBV66AVLMDD67SL2D6NU6TVXDKV5ANCNFSM55FMDSVQ&data=05%7C01%7C%7Ceb46ddaeb2384a81bdda08da745f9ab6%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C637950251220158153%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=diS6weP0aylZA4ouFzRu0MpJEyupQCDc%2BXmJujkuReQ%3D&reserved=0. You are receiving this because you authored the thread.Message ID: @.**@.>>

clovett commented 2 years ago

thanks for the detailed stack traces. Having no filename or hash is fine, and should not be the cause this problem. Are you using a build from the the master branch or the released version of the app? Your line numbers above don't match the current sources.

Also this error is odd:

'C:\Users\andre\OneDrive\Documents\Finance\andreva.MyMoney.Statements\Andre Well Fargo IRA\index.xml' because it is being used by another process.

Were you editing the index.xml file in a separate editor by any chance?

andreva7 commented 2 years ago

I was not. But this problem no longer repros. you fixed it with a previous checkin