00:00:06.605 --> 00:00:07.975 Shoot one second.
00:00:08.825 --> 00:00:12.433 I could potentially pull it up and like where it's used in Sage
00:00:12.433 --> 00:00:12.885 100 but.
00:00:15.265 --> 00:00:17.813 We have somebody using the client project so we can see the
00:00:17.813 --> 00:00:18.535 whole round trip.
00:00:21.075 --> 00:00:24.351 And for the most part, it should be part of the common model
00:00:22.865 --> 00:00:23.415 I guess it's.
00:00:24.351 --> 00:00:24.835 mappings.
00:00:25.315 --> 00:00:25.985 Yeah, yeah.
00:00:30.005 --> 00:00:33.605 Give me one second. I can get something pulled up at least.
00:00:34.235 --> 00:00:34.535 Sure.
00:00:37.045 --> 00:00:38.745 I was deep in Maestro for dummies land.
00:00:39.485 --> 00:00:40.225 Yeah. Gotcha.
00:00:51.385 --> 00:00:54.393 Does the Maestro that we have currently does have an update
00:00:54.393 --> 00:00:55.095 command or no?
00:00:56.665 --> 00:01:00.534 It has an update command. It has a rollback command. It does not
00:01:00.534 --> 00:01:04.344 currently work because I haven't had time to like get CID fully
00:01:01.605 --> 00:01:01.875 OK.
00:01:04.344 --> 00:01:05.475 working over there.
00:01:06.315 --> 00:01:09.300 However, I do have a crate that I pulled in which, at least
00:01:09.300 --> 00:01:12.535 theoretically, should be able to automate all that stuff for us,
00:01:12.535 --> 00:01:15.720 like as long as there is a Git lab release, it can look for the
00:01:15.720 --> 00:01:18.556 Git lab release directly, download that, replace its own
00:01:18.556 --> 00:01:18.905 binary.
00:01:19.975 --> 00:01:20.315 OK.
00:01:21.175 --> 00:01:22.875 So yeah, just need to.
00:01:24.205 --> 00:01:27.695 Get that working? Why this writer not want to start?
00:01:37.465 --> 00:01:39.395 Lives, but it it does not.
00:01:54.325 --> 00:01:57.075 OK, I think we can probably see something in CSS.
00:01:59.245 --> 00:02:00.775 And if I'll just combo anyway.
00:02:04.045 --> 00:02:04.925 One second.
00:02:08.895 --> 00:02:11.960 OK. That's settings, that kind of talking about, Jeremy
00:02:11.960 --> 00:02:15.355 actually apparently broke my control P altogether on both ID.
00:02:15.765 --> 00:02:16.305 Oh no.
00:02:17.175 --> 00:02:19.955 Yeah. OK. So.
00:02:20.745 --> 00:02:26.895 So just addresses I guess. Let's see if it does it correctly.
00:02:29.435 --> 00:02:31.485 I assume it does, but.
00:02:39.015 --> 00:02:44.158 OK, yes, this one or so. This one actually does not completely
00:02:44.158 --> 00:02:48.894 do it, right. So basically connect has a built-in country
00:02:48.894 --> 00:02:52.405 region or sorry, a geography utils set up.
00:02:54.015 --> 00:02:57.848 In that is every possible ISO code for a country and region in
00:02:57.848 --> 00:03:01.620 the world, as well as like alpha tutorial three, their names,
00:03:01.620 --> 00:03:03.385 etcetera, etcetera, etcetera.
00:03:04.655 --> 00:03:05.145 Uh.
00:03:06.715 --> 00:03:12.532 So on the common model, there is then a set of properties on the
00:03:12.532 --> 00:03:18.260 address that I used to store all those. So we have region code,
00:03:18.260 --> 00:03:19.335 region name.
00:03:20.445 --> 00:03:25.076 The country name the country A2A3. So this would be like US
00:03:25.076 --> 00:03:25.925 versus USA.
00:03:27.135 --> 00:03:27.615 Uh.
00:03:30.635 --> 00:03:34.088 Now these setters here all currently redirect to just
00:03:34.088 --> 00:03:37.095 resolving other countries or regions directly.
00:03:38.115 --> 00:03:41.504 Problem is, regions are not completely unambiguous. So for
00:03:41.504 --> 00:03:44.836 example, obviously and then we would probably think of as
00:03:44.836 --> 00:03:48.283 Minnesota in the US, but there's also an MSN in Zimbabwe at
00:03:48.283 --> 00:03:51.902 member. What stands for anymore? I probably going to pronounce
00:03:51.902 --> 00:03:52.075 it.
00:03:53.995 --> 00:03:58.117 Sir, we have country region as a combined setter. You should
00:03:58.117 --> 00:04:02.375 always set to this thing when you are setting the common model
00:04:02.375 --> 00:04:06.227 because this gives it the context of what country you're
00:04:06.227 --> 00:04:10.552 trying to set it inside of and what region you're trying to set
00:04:10.552 --> 00:04:14.878 to. Both just at the same time. So with this it's able to first
00:04:14.878 --> 00:04:18.865 say OK yeah, you typed us ohh I'd states. OK good I'll. So
00:04:18.865 --> 00:04:20.555 it's these guys out here.
00:04:21.675 --> 00:04:24.866 And then OK, you said at that and it's in the context of the
00:04:24.866 --> 00:04:27.953 United States, that must be Minnesota. OK, I'll send these
00:04:27.953 --> 00:04:28.215 guys.
00:04:29.985 --> 00:04:33.653 So just always make sure you use these to set and there's
00:04:33.653 --> 00:04:35.425 definitely some room though.
00:04:36.145 --> 00:04:39.291 For figuring out exactly how we should like restrictions
00:04:39.291 --> 00:04:42.715 outside, it was just to make it harder to do the wrong thing.
00:04:43.325 --> 00:04:43.645 Right.
00:04:44.355 --> 00:04:47.435 For one, I'm thinking we can probably.
00:04:48.485 --> 00:04:52.201 Make this thing a private set and just like no like you should
00:04:52.201 --> 00:04:54.915 never be signing the region directly by name.
00:04:56.405 --> 00:04:59.893 These other setters will, I should mention, take either main
00:04:59.893 --> 00:05:03.553 or code. It doesn't matter, it will just do its best to resolve
00:05:03.553 --> 00:05:07.042 them as closely as possible, like for example if you have it
00:05:07.042 --> 00:05:09.845 an unambiguous match. So let's say that you say.
00:05:12.435 --> 00:05:14.495 That's that's a good umm, maybe this one.
00:05:17.075 --> 00:05:21.086 I think probably Minnesota would probably be able to or resolve
00:05:21.086 --> 00:05:24.848 straight to Minnesota because I'm guessing there's no other
00:05:24.848 --> 00:05:28.045 region in the world that contains that exact text.
00:05:29.615 --> 00:05:30.165 So.
00:05:30.955 --> 00:05:33.805 Yeah, you get the idea. You pass in whatever the heck you want,
00:05:33.805 --> 00:05:36.121 and it will do its best to figure out if there's an
00:05:36.121 --> 00:05:38.215 ambiguous March and just error if there isn't.
00:05:40.905 --> 00:05:44.735 So I do wanna give some info here in addition.
00:05:41.835 --> 00:05:42.135 Yep.
00:05:43.835 --> 00:05:44.135 Yep.
00:05:45.975 --> 00:05:49.322 Uh, because I made it cause originally it would air if it
00:05:49.322 --> 00:05:53.016 couldn't figure out the region stuff, so I had made it to where
00:05:53.016 --> 00:05:56.248 that it won't in that case because I was running into a
00:05:56.248 --> 00:05:58.095 problem with the client project.
00:05:58.965 --> 00:05:59.415 Ah.
00:06:00.155 --> 00:06:03.558 So if it resolves the country, it will still set the country,
00:06:03.558 --> 00:06:07.017 but it may not set the region, so that's why I had allowed the
00:06:06.345 --> 00:06:06.695 Ohh.
00:06:07.017 --> 00:06:08.225 region name to be set.
00:06:09.445 --> 00:06:10.035 We should.
00:06:09.475 --> 00:06:12.839 So I was setting the region name is like if we're unable to
00:06:12.839 --> 00:06:15.475 resolve it, it's still you know there in case.
00:06:16.155 --> 00:06:20.837 We should probably, though, novels out if it if we can't
00:06:20.837 --> 00:06:22.645 figure out what it is.
00:06:23.675 --> 00:06:26.390 Because if we if we change the country, it's entirely possible
00:06:26.390 --> 00:06:28.675 that the region is no longer valid for that country.
00:06:30.235 --> 00:06:33.361 Well, so that's why I had had. If you go back to the big
00:06:33.361 --> 00:06:36.926 commerce connector, it sets the region name and then it sets the
00:06:35.045 --> 00:06:35.765 Put it.
00:06:36.926 --> 00:06:39.285 country region, cause setters go in order.
00:06:38.905 --> 00:06:39.965 OK, I see.
00:06:40.745 --> 00:06:44.181 So it would use that as the default region name, otherwise
00:06:41.535 --> 00:06:42.665 Umm.
00:06:44.181 --> 00:06:46.745 it would use the country region resolution.
00:06:48.275 --> 00:06:51.578 That remember this thing could still end at resolving either
00:06:51.578 --> 00:06:54.665 the one or just fairly, because it's an ambiguous match.
00:06:55.405 --> 00:06:57.988 Like, let's say that you have and then in here and for some
00:06:57.988 --> 00:07:00.528 reason the country fails to resolve. This will still be an
00:07:00.528 --> 00:07:03.025 error anyway. I mean it's thinking it's something's gonna
00:07:03.025 --> 00:07:05.135 get to here. It's just gonna run this one first.
00:07:08.085 --> 00:07:10.765 I think ambiguous one. It just doesn't even error.
00:07:12.505 --> 00:07:13.645 That'd probably be an error.
00:07:12.535 --> 00:07:13.315 I can't remember.
00:07:14.625 --> 00:07:15.175 2nd.
00:07:17.105 --> 00:07:18.705 And yes, this come can you complete that.
00:07:17.195 --> 00:07:19.355 Well, I think it just returns null in that case.
00:07:20.425 --> 00:07:23.095 Yeah, we should probably make that one error somehow.
00:07:23.815 --> 00:07:26.612 If we're going to do that, we need to be able to customize
00:07:24.825 --> 00:07:25.205 Yeah. OK.
00:07:26.612 --> 00:07:29.409 this more, because otherwise we're gonna run into problems
00:07:29.409 --> 00:07:30.405 with client projects.
00:07:30.495 --> 00:07:30.925 Umm.
00:07:33.635 --> 00:07:36.725 I mean, that shouldn't be that bad.
00:07:37.745 --> 00:07:43.290 Like we could have a just like a public global mutable Dictionary
00:07:43.290 --> 00:07:44.215 of of like.
00:07:45.235 --> 00:07:48.155 Extra names, essentially that mapped other things.
00:07:49.435 --> 00:07:52.318 I mean, heck, you could even like not the empty string to USA
00:07:52.318 --> 00:07:54.225 or something like that if you wanted to.
00:07:56.405 --> 00:07:57.265 So here.
00:07:58.065 --> 00:08:00.125 Something like this?
00:08:01.615 --> 00:08:02.065 Top.
00:08:11.875 --> 00:08:12.115 Let's.
00:08:29.685 --> 00:08:30.005 There were.
00:08:36.825 --> 00:08:40.900 I did go through it and it does still air for ambiguous region
00:08:38.345 --> 00:08:39.065 Here's a pen.
00:08:40.900 --> 00:08:41.935 with no country.
00:08:43.425 --> 00:08:45.235 I think I was thinking of a different case.
00:08:46.695 --> 00:08:50.045 Yeah, the whole thing could probably use some updates.
00:08:47.315 --> 00:08:50.978 Yeah, I was confusing because the problem I had with I can't
00:08:50.978 --> 00:08:54.762 remember which project was. We had the country, but the region
00:08:54.762 --> 00:08:57.105 name didn't match any existing region.
00:08:59.215 --> 00:09:02.698 So in that case the returns the country, but then null for the
00:09:02.698 --> 00:09:03.085 region.
00:09:06.395 --> 00:09:08.948 Though I do still think we do need the ability to customize
00:09:08.948 --> 00:09:11.757 this, I remember at one point we were thinking of putting it like
00:09:10.285 --> 00:09:11.155 Yeah, that's what I'm doing here.
00:09:11.757 --> 00:09:11.885 in.
00:09:12.585 --> 00:09:14.725 Uh postgrads or something like that.
00:09:16.045 --> 00:09:19.323 One second here is we can just have a simple immutable
00:09:19.323 --> 00:09:20.575 immutable dictionary.
00:09:21.705 --> 00:09:25.049 That's just sitting there. You can add to it, and obviously
00:09:25.049 --> 00:09:28.504 since it's a new adding just replaces that entire dictionary,
00:09:28.504 --> 00:09:30.065 so it should be thread safe.
00:09:32.115 --> 00:09:35.235 So then this thing will just be checked first, not or what?
00:09:36.285 --> 00:09:39.942 So that would also give you simple logic like hey, I almost
00:09:39.942 --> 00:09:43.294 always consider like a completely empty string for the
00:09:43.294 --> 00:09:46.525 country to simply be the USA or something like that.
00:09:47.915 --> 00:09:49.735 Uh. Another like.
00:09:50.515 --> 00:09:53.225 One off cases that met client data has.
00:09:55.075 --> 00:09:58.973 Can you recall any cases that wouldn't be covered by a simple
00:09:58.973 --> 00:10:00.985 little static mapping like this?
00:10:03.415 --> 00:10:07.045 Main thing would be the regions part may not work too well.
00:10:09.905 --> 00:10:13.625 Because for country part, that's fine. It's if we try to force
00:10:13.625 --> 00:10:16.815 the regions to be specific region codes that may not.
00:10:17.685 --> 00:10:21.409 We're out. For example, if it's just for whatever reason they
00:10:17.805 --> 00:10:18.045 Hmm.
00:10:21.409 --> 00:10:24.834 want this thing, that's not an official ISO region to be
00:10:24.575 --> 00:10:27.962 Oh yeah, that's that's that's the work here because the key
00:10:24.834 --> 00:10:25.435 something.
00:10:27.962 --> 00:10:31.575 would just be that whatever is not official and then that would
00:10:31.575 --> 00:10:33.495 just map over to the region code.
00:10:34.565 --> 00:10:38.097 Are the religion card that supposed to be our? Ohh. Unless
00:10:38.097 --> 00:10:39.235 you're saying like.
00:10:40.985 --> 00:10:44.135 The like you've seen there about 2 imaginary place.
00:10:46.745 --> 00:10:48.865 Is that or the meeting that correctly?
00:10:48.575 --> 00:10:50.345 Yeah, kind of it.
00:10:53.225 --> 00:10:53.805 Yes.
00:10:56.585 --> 00:10:59.779 Of or is at. That's just where it kind of gets weird. So that's
00:10:59.779 --> 00:11:02.075 like why I had the region name part was just.
00:11:03.375 --> 00:11:06.436 Because obviously the region coach I think should be private
00:11:06.436 --> 00:11:08.895 because that is just this is an official region.
00:11:09.725 --> 00:11:12.956 Whereas the region names just kind of this is the name we have
00:11:12.956 --> 00:11:13.315 for it.
00:11:20.205 --> 00:11:22.621 One second, let me just finish doing this one real quick and we
00:11:22.621 --> 00:11:24.509 can think a little bit more about the region maps
00:11:24.509 --> 00:11:24.925 themselves.
00:11:25.745 --> 00:11:27.565 It's just like reasons in general I should say.
00:11:37.005 --> 00:11:40.405 I guess I'm I'm exclusively making this so that it is append
00:11:40.405 --> 00:11:43.805 only, so like there's no way to remove something at runtime.
00:11:44.445 --> 00:11:46.815 Because that just feels like it's gonna get messy.
00:11:49.005 --> 00:11:51.813 And finally, a little bit messy, being able to add it runtime
00:11:51.813 --> 00:11:51.995 but.
00:11:53.245 --> 00:11:53.465 Yeah.
00:11:56.275 --> 00:11:58.285 OK. So then.
00:12:01.765 --> 00:12:06.994 Yeah. So what's the general other cases we would have to
00:12:06.994 --> 00:12:07.545 cover.
00:12:14.535 --> 00:12:19.402 And obviously, we've seen cases like result unigen with comma
00:12:19.402 --> 00:12:24.269 like they had wasn't a country names and the States and stuff
00:12:24.269 --> 00:12:25.055 like that.
00:12:28.415 --> 00:12:30.795 But that's more of a client data issue.
00:12:29.805 --> 00:12:30.425 Yeah, yeah.
00:12:33.485 --> 00:12:39.362 Yeah, I guess that might need to be mapped around in a post map
00:12:39.362 --> 00:12:41.015 hook or something.
00:12:41.485 --> 00:12:41.905 Yeah.
00:12:43.425 --> 00:12:45.335 I think that would work best as post map.
00:12:43.745 --> 00:12:44.685 Be unique case.
00:12:46.045 --> 00:12:46.385 Yeah.
00:12:47.725 --> 00:12:48.245 Umm.
00:12:49.065 --> 00:12:49.975 How many?
00:12:49.115 --> 00:12:53.072 My main thing is hopefully we can avoid an unavoidable error
00:12:49.355 --> 00:12:50.015 Hello.
00:12:53.072 --> 00:12:54.565 type stuff if possible.
00:12:56.315 --> 00:12:58.711 Yeah, but there was posting haven't quite worked well
00:12:58.711 --> 00:13:01.285 because that's even that's coming directly out of Oracle.
00:13:03.275 --> 00:13:06.890 Like I think was it was it that Oracle didn't even have a
00:13:06.890 --> 00:13:10.755 country field. It is sort of assumed the USA and so are they.
00:13:11.555 --> 00:13:14.155 Just smooshed everything and states, or did it have and they
00:13:14.155 --> 00:13:14.965 just were using it?
00:13:16.955 --> 00:13:22.428 Some tables had country, others did not. Like accounts has
00:13:22.428 --> 00:13:26.975 country invoices, does not. Building A does not.
00:13:25.455 --> 00:13:26.065 No, go ahead.
00:13:28.215 --> 00:13:29.605 Or sorry shipping does not.
00:13:33.455 --> 00:13:35.125 So this would have failed on the map layer then, right?
00:13:37.585 --> 00:13:41.105 Correct with more with that, like with more validation on it.
00:13:41.965 --> 00:13:42.285 Yeah.
00:13:43.065 --> 00:13:44.945 So you would have never got to the post map hook then.
00:13:43.515 --> 00:13:43.905 But.
00:13:45.545 --> 00:13:49.384 Well, I guess in that case really you probably just have to
00:13:49.384 --> 00:13:53.223 have an app setting for the connector that just says assume
00:13:53.223 --> 00:13:54.055 this country.
00:13:55.925 --> 00:13:59.138 Uh, that or I would just add a pre hook in. In those off cases
00:13:59.138 --> 00:14:01.535 I would just add a pre hook that looks for it.
00:14:02.115 --> 00:14:03.785 Yeah. Or a combination even.
00:14:03.925 --> 00:14:06.915 A prayer pre hook pre map hook.
00:14:07.585 --> 00:14:07.795 Yep.
00:14:11.225 --> 00:14:13.898 So Premac book would be editing the model before it goes into
00:14:13.898 --> 00:14:14.675 the mapping layer.
00:14:15.225 --> 00:14:15.605 Yeah.
00:14:15.295 --> 00:14:16.745 So just like combo kit common.
00:14:17.225 --> 00:14:17.495 Yep.
00:14:18.295 --> 00:14:21.115 It's almost like those hooks were a great idea for reasons
00:14:21.115 --> 00:14:21.785 just as those.
00:14:22.405 --> 00:14:23.135 Yeah, yeah.
00:14:24.645 --> 00:14:27.425 So rehook should be fixing data before it gets commoditized.
00:14:28.345 --> 00:14:28.755 Makes sense?
00:14:32.155 --> 00:14:36.038 I mean, you could still have something that's called post in
00:14:36.038 --> 00:14:39.985 their. Theoretically it's more just hooks on the the getters.
00:14:42.365 --> 00:14:43.705 Like pokes on.
00:14:45.485 --> 00:14:48.694 I was gonna say Amy, too, from our can't remember which one we
00:14:48.694 --> 00:14:51.395 decided. Like which directions. We decided those be.
00:14:54.015 --> 00:14:57.425 Uh on the Isle of European direction?
00:14:58.315 --> 00:14:58.605 Yeah.
00:14:59.165 --> 00:15:00.565 Yeah, they get common methods.
00:14:59.645 --> 00:14:59.995 Yeah.
00:15:01.045 --> 00:15:01.345 Yep.
00:15:03.045 --> 00:15:06.706 I do think hooks there could be useful cause that's kind of one
00:15:06.706 --> 00:15:10.196 of her main limitations right now is if we do something like
00:15:10.196 --> 00:15:13.915 this where it could potentially error, then it's hard to handle.
00:15:14.275 --> 00:15:15.645 Umm and.
00:15:14.835 --> 00:15:15.195 Right.
00:15:15.415 --> 00:15:20.597 Cause a big commerce by default has zero validation on the
00:15:20.597 --> 00:15:21.125 state.
00:15:23.045 --> 00:15:24.055 Yeah.
00:15:24.315 --> 00:15:28.650 To where it dynamics 365 will not let you even insert unless
00:15:28.650 --> 00:15:31.635 this town, state and country are correct.
00:15:35.205 --> 00:15:37.155 Well, how are you doing farm stuff?
00:15:38.565 --> 00:15:40.135 Thankfully there.
00:15:40.995 --> 00:15:41.585 Uh.
00:15:43.145 --> 00:15:47.864 Somehow they have Shopify doing the same thing, so Shopify will
00:15:47.864 --> 00:15:51.625 not allow a address to be added if it's not valid.
00:15:52.805 --> 00:15:53.575 So.
00:15:54.355 --> 00:15:56.784 I'm not having a big problem there. I don't know if that's
00:15:56.784 --> 00:15:59.377 out-of-the-box out of Shopify, or if that's their Shopify plus
00:15:59.377 --> 00:15:59.625 steel.
00:16:00.425 --> 00:16:00.825 Gotcha.
00:16:00.485 --> 00:16:01.285 If we're partners.
00:16:02.805 --> 00:16:03.305 What's that?
00:16:03.975 --> 00:16:04.825 If that part is.
00:16:05.575 --> 00:16:10.050 Uh, that Shopify Valve will not let you save a customer if they
00:16:10.050 --> 00:16:14.385 have an invalid address. You have to have a valid address St.
00:16:13.565 --> 00:16:14.045 Umm.
00:16:14.385 --> 00:16:14.805 state.
00:16:16.155 --> 00:16:17.405 All the whole 9 yards.
00:16:22.415 --> 00:16:25.589 But right, but Shopify is doing so much custom stuff for farm. I
00:16:25.589 --> 00:16:28.079 don't know if that's out-of-the-box for Shopify or
00:16:28.079 --> 00:16:28.275 not.
00:16:28.725 --> 00:16:31.895 Is that actually Shopify during the work or?
00:16:33.275 --> 00:16:34.925 By doing that, it won't let you.
00:16:36.145 --> 00:16:38.799 It won't let you add a customer unless they have a valid
00:16:38.799 --> 00:16:41.035 address. It'll say this address does not exist.
00:16:41.455 --> 00:16:43.717 I mean, OK, Shopify, the one that actually doing the
00:16:43.717 --> 00:16:44.315 customization?
00:16:45.085 --> 00:16:45.955 I do not know.
00:16:50.525 --> 00:16:52.435 They have some kind of Shopify team that's working on stuff.
00:16:54.215 --> 00:16:54.565 Yeah. So.
00:16:54.675 --> 00:16:56.635 By team versus team, former Shopify.
00:16:57.255 --> 00:16:57.635 Right.
00:16:59.875 --> 00:17:00.895 OK, there you are.
00:17:00.155 --> 00:17:01.005 There's a difference.
00:17:02.915 --> 00:17:06.155 OK so I have a country region maps here.
00:17:08.205 --> 00:17:09.495 Let me just get some.
00:17:10.195 --> 00:17:11.325 The talks on these.
00:17:26.445 --> 00:17:26.695 That.
00:17:27.335 --> 00:17:32.212 Are wondering. That's why I I have that address in Kahoka
00:17:32.212 --> 00:17:33.895 Missouri picked out.
00:17:34.815 --> 00:17:36.555 Because that's a valid address.
00:17:37.715 --> 00:17:38.035 Sir.
00:17:38.945 --> 00:17:42.953 It's the person that comes up with one the street. There's
00:17:42.953 --> 00:17:45.535 actually A1, these St. in kahoka, MO.
00:17:48.685 --> 00:17:53.261 So then just learning here these things I do have getting
00:17:53.261 --> 00:17:58.232 initialized as an insensitive annual dictionary. So on the key
00:17:58.232 --> 00:18:03.045 completely case insensitive. So we will need the matches the
00:18:03.045 --> 00:18:05.255 same way as big you big big.
00:18:07.365 --> 00:18:10.953 And that's actually is really for everything in country
00:18:10.953 --> 00:18:14.285 region. There's all the country Jack. Futile stuff.
00:18:16.915 --> 00:18:21.895 Someone in your deals on other stuff we can do to customize
00:18:21.895 --> 00:18:23.555 this part of things.
00:18:24.215 --> 00:18:29.386 Or do we just peel, leave the rest of it to like hooks on
00:18:29.386 --> 00:18:30.635 gifts for now?
00:18:34.205 --> 00:18:36.973 I think hooks on gets are probably how that's intended to
00:18:36.973 --> 00:18:37.785 be worked, right?
00:18:47.045 --> 00:18:49.639 I think if a client had data that needed to be cleaned up
00:18:49.639 --> 00:18:52.368 before it went in the common model, a hook on a git would be
00:18:52.368 --> 00:18:52.995 a good way to.
00:18:53.725 --> 00:18:56.505 To really identify that it's a customization needs to be done.
00:18:57.615 --> 00:18:59.505 In addition to being a fairly straightforward way to do it.
00:19:03.695 --> 00:19:07.203 Which I mean, if we're going to go the hook on a get route, then
00:19:07.203 --> 00:19:10.603 we may not even need these remap things that you're working on
00:19:10.603 --> 00:19:10.765 JL.
00:19:11.115 --> 00:19:11.695 Right.
00:19:12.445 --> 00:19:15.827 Umm well, this part of this is still like a simple one and we
00:19:15.827 --> 00:19:18.065 can easily put this into an app setting.
00:19:19.295 --> 00:19:21.435 So like in the connect options, we could actually have.
00:19:21.925 --> 00:19:25.898 And built in Remaps for this stuff just to make it not even
00:19:25.898 --> 00:19:27.355 require extra C# side.
00:19:32.655 --> 00:19:32.935 Oops.
00:19:36.685 --> 00:19:37.375 Oh oops.
00:19:39.995 --> 00:19:41.805 I guess actually in this case it would be.
00:19:54.755 --> 00:19:57.515 Yeah, so now it just sort of hooks into the rest of it and
00:19:57.515 --> 00:19:58.685 then flows with the rest.
00:19:59.855 --> 00:20:02.975 We just get that on the resolve region.
00:20:09.325 --> 00:20:12.095 You only have a the resolve country region together one.
00:20:12.625 --> 00:20:16.175 Yeah, I'm just remembering that it's been a little while.
00:20:22.235 --> 00:20:24.155 Well, you know that that's.
00:20:42.065 --> 00:20:43.035 That's good. So ugly.
00:20:48.015 --> 00:20:50.485 These are the ideals that if you don't know.
00:21:28.005 --> 00:21:29.925 So annoying duplication.
00:21:31.475 --> 00:21:35.925 But yeah, you can find some better ways for this letter.
00:21:41.575 --> 00:21:45.045 There I think that should work hopefully.
00:21:46.475 --> 00:21:49.075 So then the.
00:21:52.735 --> 00:21:53.475 One second, let me.
00:21:54.505 --> 00:21:57.051 I'm just gonna see if I can fix my control. Peace that's driving
00:21:57.051 --> 00:21:57.365 me nuts.
00:22:02.865 --> 00:22:03.115 Yeah.
00:22:06.215 --> 00:22:09.795 Or did you change the shift shift thing to be control P?
00:22:10.505 --> 00:22:14.332 No. So shift shifts are goes here. I have control P boundary.
00:22:14.332 --> 00:22:17.974 Apparently control shift N is the default, so it just goes
00:22:17.974 --> 00:22:21.369 directly to the files tab of this because if you start
00:22:21.369 --> 00:22:25.011 searching here for file it's a fair bit slower than if you
00:22:25.011 --> 00:22:28.715 start filtered from files. So just matches what Vscode has.
00:22:29.845 --> 00:22:34.123 And I think I finally found it. I don't know how it got set to
00:22:34.123 --> 00:22:34.735 this but.
00:22:39.785 --> 00:22:41.885 I have never used either of you 2 shoe.
00:22:47.195 --> 00:22:50.825 Oh, that's better. OK, so correct options.
00:23:02.695 --> 00:23:06.146 By the way, I wasn't sure because I left the global e-mail
00:23:06.146 --> 00:23:08.955 settings there, but those aren't used anywhere.
00:23:11.085 --> 00:23:14.591 Uh, yeah, that's a little bit of a placeholder. Yeah. Yeah, that
00:23:14.591 --> 00:23:15.185 eventually.
00:23:16.155 --> 00:23:19.650 I'm sorry. Like with the proxies and he places where we use
00:23:19.650 --> 00:23:23.320 e-mail options and other spots should be we're just default to
00:23:23.320 --> 00:23:23.845 this one.
00:23:25.325 --> 00:23:27.895 Uh, it just isn't really implemented at the moment.
00:23:44.245 --> 00:23:46.685 OK. And then?
00:23:49.965 --> 00:23:50.455 Oops.
00:23:56.055 --> 00:23:58.535 Here are actually probably.
00:24:00.095 --> 00:24:02.965 Can you turn the connect? Then we can get.
00:24:04.655 --> 00:24:05.395 At.
00:24:13.605 --> 00:24:15.295 Should you need to get, can I talk?
00:24:17.345 --> 00:24:17.555 No.
00:24:38.015 --> 00:24:38.675 There we are.
00:24:41.215 --> 00:24:45.439 Now we just have a simple way of remapping anything we want, so
00:24:45.439 --> 00:24:48.805 we can just like assume whatever the heck we want.
00:24:50.055 --> 00:24:54.925 We can probably revisit that little later and actually.
00:24:58.495 --> 00:25:02.115 For the moment, oops, I think I'm going to leave.
00:25:03.075 --> 00:25:04.725 The region part commented out.
00:25:06.395 --> 00:25:10.479 Just because I feel like there's some more that should be done on
00:25:10.479 --> 00:25:14.255 there for like half the match on if it's a Amy, a particular
00:25:14.255 --> 00:25:15.555 country and all that.
00:25:20.835 --> 00:25:23.285 So leave that there as a future to do.
00:25:27.885 --> 00:25:31.265 How do I, at least for against countries, seem to be the more?
00:25:32.635 --> 00:25:36.564 Like prevalent thing we would need to remap, especially with
00:25:36.564 --> 00:25:40.365 the case of like assuming that a blank string means us so.
00:25:41.505 --> 00:25:44.195 Sure. So that look like inside the app settings.
00:25:45.765 --> 00:25:48.863 Uh, yeah. So actually, I guess this is also a good Little
00:25:48.863 --> 00:25:51.961 Friday training on Epsilon schemas. So it's kind of these
00:25:51.961 --> 00:25:52.175 two.
00:25:54.725 --> 00:25:56.175 Let's be very simple case but.
00:25:57.725 --> 00:26:01.485 OK, so I'm here. Let's go find the correct options.
00:26:06.075 --> 00:26:08.885 There. So we have connect options and it's over properties
00:26:08.885 --> 00:26:09.505 we will want.
00:26:10.295 --> 00:26:11.005 We.
00:26:11.925 --> 00:26:12.995 Country remaps.
00:26:15.975 --> 00:26:17.125 Type here as an object.
00:26:18.045 --> 00:26:18.705 And then.
00:26:19.655 --> 00:26:22.728 Visual properties are allowed, but they must confront to this
00:26:22.728 --> 00:26:23.075 schema.
00:26:23.905 --> 00:26:24.895 Where?
00:26:24.995 --> 00:26:25.565 Uh.
00:26:27.355 --> 00:26:30.045 The type that would be the type of the value is a string.
00:26:32.575 --> 00:26:35.971 Probably gonna require like min length of that string must be at
00:26:35.971 --> 00:26:39.421 least one like. You can't put an empty string in there to reenact
00:26:39.421 --> 00:26:41.825 to, cause that's just gonna be a null anyway.
00:26:44.325 --> 00:26:45.295 And.
00:26:47.135 --> 00:26:49.645 Yeah. I mean, that's really all of it.
00:26:52.625 --> 00:26:55.735 So in here and our connect options, we can put in our.
00:26:59.745 --> 00:27:02.145 Ohh whoops, this thing predates even having the schema.
00:27:08.215 --> 00:27:09.445 Yeah, produce a lot of it.
00:27:10.765 --> 00:27:13.595 And which actually has a good point to show off the.
00:27:14.595 --> 00:27:19.035 Maestro, you could be new stuff or Maestro app settings generate
00:27:19.035 --> 00:27:19.445 stuff.
00:27:20.365 --> 00:27:24.482 If I going to here I can do a Maestro 5 app settings generate
00:27:24.482 --> 00:27:28.533 so you can see Ohly. Yeah, that doesn't handle comments very
00:27:28.533 --> 00:27:29.795 well at the moment.
00:27:32.035 --> 00:27:32.435 I'm guessing.
00:27:36.135 --> 00:27:37.855 Yep, they're not permitted so.
00:27:39.015 --> 00:27:40.705 I need to update the example.
00:27:42.105 --> 00:27:46.080 So by default this commander here will update any or will
00:27:46.080 --> 00:27:50.055 update the generated schema files. It will not by default
00:27:50.055 --> 00:27:54.030 update your app's file. If you really want to update your
00:27:54.030 --> 00:27:58.005 absence file with what it's going to generate by default.
00:27:58.785 --> 00:28:01.237 Then you actually have to explicitly pass double dash
00:28:01.237 --> 00:28:01.555 update.
00:28:02.635 --> 00:28:04.718 Which obviously I don't want to because I don't want to
00:28:04.718 --> 00:28:06.765 completely clobber everything that's already in there.
00:28:09.895 --> 00:28:12.125 And there we are. So now we have our schema.
00:28:14.835 --> 00:28:17.651 And just fun fact, if you're water, go to definition and all
00:28:17.651 --> 00:28:20.375 that stuff works perfectly fine through these schemas. So.
00:28:24.705 --> 00:28:25.765 And then so on here.
00:28:26.425 --> 00:28:28.901 Country maps. It's like if I were to do some like this and
00:28:28.901 --> 00:28:31.545 have an empty string, it's gonna tell me. Oh, no, you can't do
00:28:31.545 --> 00:28:31.755 that.
00:28:33.955 --> 00:28:37.653 Yeah, if you want to have a simple one like empty straining
00:28:37.653 --> 00:28:39.565 maps to USA, you could do that.
00:28:41.325 --> 00:28:42.515 For that matter, if you want to.
00:28:43.205 --> 00:28:45.615 To have a space or some crap like that.
00:28:46.595 --> 00:28:49.620 Which mean that we should just make these things be defined as
00:28:49.620 --> 00:28:52.358 regexes lighter, but that would obviously be a bit worse
00:28:52.358 --> 00:28:52.935 performance.
00:28:55.225 --> 00:28:58.275 Yeah, that's just the basic example of how that works.
00:28:59.075 --> 00:28:59.765 OK, cool.
00:29:07.745 --> 00:29:11.606 Any questions I guess of no here is that obviously this will be
00:29:11.606 --> 00:29:15.165 slightly breaking change for like this stuff, but well you
00:29:15.165 --> 00:29:18.725 shouldn't have been sending region name directly probably?
00:29:20.755 --> 00:29:23.315 I have. We're gonna set that one. Then region code should
00:29:23.315 --> 00:29:25.920 probably also be private, cause in my thinking region name
00:29:25.920 --> 00:29:28.569 doesn't necessarily need to be private. It'd be region code
00:29:27.925 --> 00:29:29.185 Tricky.
00:29:28.569 --> 00:29:29.585 that should be private.
00:29:30.015 --> 00:29:33.407 Tricky during there I'm thinking of is Jason serialization. It's
00:29:33.407 --> 00:29:35.965 like if you wanna deserialize this entire thing.
00:29:37.475 --> 00:29:40.455 Like, especially if we want being round trip this in Jason.
00:29:41.075 --> 00:29:44.365 Well, don't you have the country region Jason Converter for that.
00:29:41.375 --> 00:29:41.865 Or not.
00:29:47.735 --> 00:29:50.565 Oh, I forgot that thing existed.
00:29:51.575 --> 00:29:54.195 Disregard, I don't know what I did last week.
00:29:57.555 --> 00:29:59.955 Or actually, don't. Just don't Jesse. Like Newark, we still
00:29:59.955 --> 00:30:00.795 want to print it out.
00:30:03.015 --> 00:30:05.865 OK, that should do it.
00:30:06.775 --> 00:30:10.324 And I guess for that matter, we probably want to make this
00:30:10.324 --> 00:30:10.685 thing.
00:30:11.905 --> 00:30:15.115 Actually, just like make that part go the way the dodo.
00:30:18.625 --> 00:30:21.635 And actually I guess that means we just get rid of all of that.
00:30:23.465 --> 00:30:26.495 Though obviously alert alert breaking change.
00:30:27.345 --> 00:30:31.399 Actually country region does not have a writer. Right now it only
00:30:31.399 --> 00:30:32.075 has a Reid.
00:30:33.425 --> 00:30:36.305 On the type converter, it'll error when you go to write it.
00:30:38.065 --> 00:30:39.045 Oh well.
00:30:40.165 --> 00:30:43.235 Should we do a quick training on Jason converters?
00:30:43.555 --> 00:30:44.125 Think so?
00:30:45.335 --> 00:30:45.915 All right.
00:30:45.785 --> 00:30:47.315 And I'm I'm in favor of.
00:30:48.185 --> 00:30:50.745 Doing this kind of stuff just so it's not tempting for someone to
00:30:50.745 --> 00:30:51.095 set that.
00:30:51.425 --> 00:30:51.865 Umm.
00:30:52.645 --> 00:30:55.576 I know when I build out models I just hit the rider like
00:30:55.576 --> 00:30:58.765 implement other Members and fill things out as I see fit. So.
00:31:01.145 --> 00:31:02.575 I probably don't want to do that.
00:31:02.965 --> 00:31:03.335 Yeah.
00:31:03.945 --> 00:31:07.841 Eh, I'll be real. I'm part of the thing of don't try and fill
00:31:07.841 --> 00:31:09.475 out every single property.
00:31:10.075 --> 00:31:10.455 Right.
00:31:11.415 --> 00:31:14.987 Just cause first so when I see a ton of this is just, you know 10
00:31:14.987 --> 00:31:18.235 properties assigned to an empty string or null that ends up
00:31:15.605 --> 00:31:15.945 OK.
00:31:18.235 --> 00:31:19.805 getting problematic at times.
00:31:20.715 --> 00:31:24.043 Hello Helen ashner. Hence it has read then that's what we want.
00:31:24.043 --> 00:31:25.135 We don't wanna write.
00:31:28.135 --> 00:31:31.106 Well, then you wouldn't be able to serialize to Jason, then read
00:31:31.106 --> 00:31:32.295 back that very same Jason.
00:31:32.995 --> 00:31:36.885 Ohh, I see. Yeah, no, I see what you're saying. Yeah, I'm not so
00:31:36.885 --> 00:31:40.417 bad though. That's actually, this is even training at this
00:31:40.417 --> 00:31:41.615 point. This is easy.
00:31:45.595 --> 00:31:46.215 Let's see.
00:31:46.765 --> 00:31:47.865 Right string value.
00:31:49.615 --> 00:31:50.795 But it pretty much.
00:31:50.255 --> 00:31:52.576 Mel, I guess yeah. Because it's nullable. You'd have to do a
00:31:52.185 --> 00:31:53.455 So it's gonna be.
00:31:52.576 --> 00:31:53.185 little bit more.
00:31:54.405 --> 00:31:54.655 Yeah.
00:31:55.305 --> 00:31:56.895 Which I guess really this thing.
00:31:58.445 --> 00:32:00.935 Let's also add in like.
00:32:01.695 --> 00:32:03.205 You know, you just renewed here.
00:32:49.495 --> 00:32:49.785 Umm.
00:32:52.755 --> 00:32:55.226 You can't do blocks and expression switches,
00:32:55.226 --> 00:32:55.995 unfortunately.
00:32:55.425 --> 00:32:57.635 Ohh shoot isn't doing too much rest.
00:32:59.035 --> 00:33:00.375 Ohh.
00:33:02.445 --> 00:33:06.501 Hopefully it gets implemented at some point. There's talks of it,
00:33:06.501 --> 00:33:07.485 but no, not yet.
00:33:08.205 --> 00:33:10.600 I've got some good talks with myself about all the user
00:33:10.600 --> 00:33:12.055 presses, whatever I can and said.
00:33:14.165 --> 00:33:18.485 Ohh, I guess we can take me. Just do this. That should work.
00:33:21.055 --> 00:33:22.405 So let me read it.
00:33:31.275 --> 00:33:32.735 Ohh thing could just be solved.
00:33:40.665 --> 00:33:42.955 I think we can assume that.
00:33:44.295 --> 00:33:47.245 OK, now over here I mean really actually that's.
00:33:48.005 --> 00:33:51.173 Principle we don't even know. This could be stupid. Crazy, you
00:33:51.173 --> 00:33:51.425 know.
00:33:53.155 --> 00:33:55.815 So now we can just get our stream recover again.
00:33:56.745 --> 00:33:57.615 Means I have to.
00:33:59.035 --> 00:34:01.398 Like there's a function is because theoretically this
00:34:01.398 --> 00:34:04.112 options here could very well change. What converters supposed
00:34:04.112 --> 00:34:05.425 to be used for a string array.
00:34:06.365 --> 00:34:08.395 So I just have to make sure I call into that to get it.
00:34:10.515 --> 00:34:13.432 Unfortunately no. Anyway to properly cash it because this
00:34:13.432 --> 00:34:15.545 thing could very well change any instant.
00:34:18.775 --> 00:34:21.985 All right, let's and then we'll just have this.
00:34:27.075 --> 00:34:27.505 Oops.
00:34:39.925 --> 00:34:42.825 And you want to change that to a nullable string array converter.
00:34:41.465 --> 00:34:44.405 Yeah, just knows that.
00:34:46.605 --> 00:34:50.435 Which is so stupid that it means that here too, because.
00:34:51.315 --> 00:34:54.545 Like SIM card doesn't even see a difference between that, but.
00:34:56.735 --> 00:34:57.365 Anyway.
00:35:01.195 --> 00:35:02.155 OK. Yeah, there we are.
00:35:05.515 --> 00:35:06.725 That should work then.
00:35:07.765 --> 00:35:12.375 So I will write it as an array and it can read it from either.
00:35:12.515 --> 00:35:16.062 A string where it's gone separated, which like in the
00:35:16.062 --> 00:35:20.005 sequel use cases is probably what we wanted to do just for.
00:35:20.955 --> 00:35:24.135 Of simplicity, simplicity and not blowing up your code.
00:35:24.965 --> 00:35:27.275 And also just as a simple array.
00:35:27.945 --> 00:35:29.405 Which then works with our round tripper.
00:35:34.145 --> 00:35:34.455 Wow.
00:35:36.475 --> 00:35:38.645 Or we'll shoot. That's not.
00:35:40.025 --> 00:35:43.285 I just know what's right. Somebody called there because.
00:35:45.425 --> 00:35:47.915 We need to make the other thing of a getter now one second.
00:35:50.725 --> 00:35:54.095 Assuming this, we can make it have one. Why not?
00:35:55.415 --> 00:35:59.123 If that would just be our country of two and our region
00:35:59.123 --> 00:35:59.455 code.
00:36:04.145 --> 00:36:07.640 I would move to which trust lately I keep on any things Nice
00:36:07.640 --> 00:36:08.385 for us today.
00:36:10.885 --> 00:36:12.555 OK. Yeah, that's that.
00:36:14.255 --> 00:36:17.335 So now you can serialize Jason, Deserialize from Jason and all
00:36:17.335 --> 00:36:17.775 you want.
00:36:21.495 --> 00:36:24.595 And then you set all of the country ones to private, yes.
00:36:26.345 --> 00:36:27.525 Let me check.
00:36:29.095 --> 00:36:32.174 Well, I just don't even have a setter on these countries since
00:36:32.174 --> 00:36:34.325 they'll just redirecting to this thing now.
00:36:35.245 --> 00:36:37.135 Which hold it was like, why does this thing not?
00:36:37.765 --> 00:36:39.745 Read her. Ohh yeah.
00:36:40.985 --> 00:36:41.655 Yeah, that works.
00:36:47.565 --> 00:36:47.935 Alright.
00:36:47.845 --> 00:36:50.735 Should should we also do something similar for?
00:36:52.495 --> 00:36:55.453 Lines, taxes, fees and stuff like what is the intended way to
00:36:55.453 --> 00:36:56.265 map those across?
00:36:56.525 --> 00:36:57.735 Ohh.
00:36:58.305 --> 00:36:59.035 Uh and?
00:37:00.665 --> 00:37:03.935 Yeah, that's kind of depend on each connector. That's why we
00:37:03.935 --> 00:37:06.936 have all those methods for switching back and forth. So
00:37:03.985 --> 00:37:04.255 OK.
00:37:06.936 --> 00:37:07.205 like.
00:37:07.195 --> 00:37:08.285 Because there's a lot.
00:37:09.295 --> 00:37:11.843 Like should it be set on the header should be split out to
00:37:11.843 --> 00:37:12.275 the lines.
00:37:12.715 --> 00:37:16.362 Yeah. That's why we have these things right here. So you can
00:37:16.362 --> 00:37:20.069 make all of them per line or like like each individual set of
00:37:20.069 --> 00:37:23.537 things per line or we can consolidate them straight up to
00:37:23.537 --> 00:37:24.195 the header.
00:37:24.955 --> 00:37:25.285 OK.
00:37:25.745 --> 00:37:28.834 And it's up to Alex. Each individual connector, whether
00:37:28.834 --> 00:37:32.199 they want to do it one way or the other. We also just choose
00:37:32.199 --> 00:37:35.619 not to call either of them and maybe they have a system which
00:37:35.619 --> 00:37:37.275 supports both of them somehow.
00:37:38.505 --> 00:37:41.595 That works too. Just one over Fultz the boat.
00:37:44.885 --> 00:37:48.469 OK. When it comes to mapping it to the common transaction, is it
00:37:48.469 --> 00:37:51.667 going to be something that you would need to look at each
00:37:51.667 --> 00:37:54.975 connector to see how it's doing it or is there a way we can
00:37:54.975 --> 00:37:56.685 expect that it'd be a standard?
00:37:55.825 --> 00:37:59.434 And then going to the common transaction that's still just
00:37:59.434 --> 00:38:00.475 system dependent.
00:38:01.045 --> 00:38:01.345 Yeah.
00:38:01.145 --> 00:38:03.225 And we're both directions are system dependent.
00:38:04.965 --> 00:38:09.545 And this is, as always, just the common middle layer.
00:38:10.165 --> 00:38:10.445 Yeah.
00:38:15.955 --> 00:38:18.185 Umm is there a way that we could say like?
00:38:19.695 --> 00:38:22.293 For each system, we can expect that the common model will have
00:38:22.293 --> 00:38:24.933 it all on the header, and that's where you know to look and you
00:38:24.933 --> 00:38:27.448 can if you wanna split out the lines, you can do that. Or is
00:38:27.448 --> 00:38:28.975 that not something to be worthwhile?
00:38:28.805 --> 00:38:31.625 Well, that's why we have the calculated properties.
00:38:30.535 --> 00:38:31.135 Yeah.
00:38:32.265 --> 00:38:35.532 Ohh, and that's why we have these extra things to to shuffle
00:38:32.585 --> 00:38:32.945 Right.
00:38:35.532 --> 00:38:36.175 them around.
00:38:37.255 --> 00:38:37.565 But.
00:38:37.265 --> 00:38:41.042 If the system were reading from supports fees per line, then it
00:38:41.042 --> 00:38:44.701 will have the fees on the lines. If it doesn't, then the fees
00:38:44.701 --> 00:38:47.475 will be a part of the header. If there is any.
00:38:49.165 --> 00:38:49.445 OK.
00:38:49.565 --> 00:38:53.317 Like because if we have two, we can't just force it all to be on
00:38:53.317 --> 00:38:56.838 the header. If we then want to support syncing those fees on
00:38:56.838 --> 00:39:00.245 the line into a system that may be requires them per line.
00:39:01.635 --> 00:39:03.265 Ohh. At least not without.
00:39:04.655 --> 00:39:06.965 Like duplicating like code for every system.
00:39:08.945 --> 00:39:10.505 I mean the might be.
00:39:12.355 --> 00:39:14.805 There might be actually some room here.
00:39:15.585 --> 00:39:18.255 Or let's say like.
00:39:18.775 --> 00:39:19.235 Uh.
00:39:39.885 --> 00:39:40.585 Wait too long.
00:39:44.795 --> 00:39:46.925 Alright, so like this so.
00:39:52.715 --> 00:39:54.735 Actually suppose there should be like a.
00:40:01.315 --> 00:40:01.655 Or.
00:40:02.325 --> 00:40:03.585 If we want to have fun today.
00:40:11.135 --> 00:40:11.405 Oops.
00:40:15.405 --> 00:40:18.942 So basically we could have this and then each individual
00:40:18.942 --> 00:40:22.913 connector that's mapping I can set that just looks like a hint.
00:40:22.913 --> 00:40:26.947 The other connector on the other end does not have to follow it.
00:40:26.947 --> 00:40:30.794 However, if let's say the tax location is already set to line
00:40:30.794 --> 00:40:34.642 and then as an optimization the other connector can choose to
00:40:34.642 --> 00:40:38.738 just not call the make taxes per line because obviously like this
00:40:38.738 --> 00:40:42.275 completely re splits them all out and it might very well
00:40:42.275 --> 00:40:44.075 remove some information like.
00:40:44.535 --> 00:40:47.507 And let's say that two of the products were taxed, but one of
00:40:47.507 --> 00:40:50.192 the most. If you call this thing, it's still gonna, you
00:40:47.775 --> 00:40:48.115 Right.
00:40:50.192 --> 00:40:52.925 know, like it's gonna just split them across everything.
00:40:54.545 --> 00:40:58.431 So then as the optimization, the connector should look at this to
00:40:58.431 --> 00:41:01.965 see OK is already set to per line while I want per line, so
00:41:01.965 --> 00:41:04.615 I'm just not gonna call that other function.
00:41:09.125 --> 00:41:10.015 I'm hasn't been some.
00:41:09.275 --> 00:41:12.631 And we could kinda do that though by querying whether
00:41:12.631 --> 00:41:16.422 there's any tax on the header at all, and if not, then don't
00:41:16.422 --> 00:41:18.225 split out the taxes per line.
00:41:21.445 --> 00:41:23.595 Umm you?
00:41:25.995 --> 00:41:28.465 Because we just have the one header tax field so.
00:41:29.185 --> 00:41:30.155 Yeah.
00:41:31.895 --> 00:41:37.020 Unless there it's possible that or maybe possible that you might
00:41:37.020 --> 00:41:40.095 have taxes in both locations, I think.
00:41:42.615 --> 00:41:43.905 But yeah.
00:41:42.635 --> 00:41:46.507 Well, and that's why you would, you know, if the tax is on, if
00:41:46.507 --> 00:41:50.440 there's any tax on the header, you would call the redistribute,
00:41:50.440 --> 00:41:54.189 say you're going into a system which doesn't have any tax on
00:41:54.189 --> 00:41:55.665 the order header itself.
00:41:58.285 --> 00:42:00.205 Yeah, I guess that would work.
00:42:00.895 --> 00:42:04.314 So it so kind of breaks down in the case like where the other
00:42:04.314 --> 00:42:07.734 system that's taxes on both of those two things and then also
00:42:07.734 --> 00:42:09.775 has like a product that was untaxed.
00:42:10.485 --> 00:42:12.615 That might be customization territory.
00:42:13.515 --> 00:42:16.072 I would say so, because then you're dealing with the
00:42:14.255 --> 00:42:14.945 Yeah.
00:42:16.072 --> 00:42:16.845 situation where.
00:42:17.745 --> 00:42:21.509 You have taxes on both. Eat all the lines and the header. How
00:42:21.509 --> 00:42:25.153 would you even want to split that over? Cause obviously you
00:42:25.153 --> 00:42:26.975 shouldn't be mapping over the.
00:42:25.265 --> 00:42:25.655 Right.
00:42:25.665 --> 00:42:26.535 Yeah.
00:42:28.325 --> 00:42:31.017 If the taxes from the system you're reading from are ologist
00:42:31.017 --> 00:42:33.665 on the lines, you shouldn't even be mapping anything to the
00:42:33.665 --> 00:42:34.195 header text.
00:42:36.835 --> 00:42:40.856 One Direction or a system you reading from that has somehow
00:42:40.856 --> 00:42:44.676 distinct taxes on both sides? I'm not entirely sure that
00:42:44.676 --> 00:42:48.765 that's possible or how it would work. And while the tax man.
00:42:49.845 --> 00:42:53.055 But I feel like it could be possible.
00:42:50.925 --> 00:42:54.540 If you're mapping that into a system where requires them to be
00:42:54.540 --> 00:42:57.755 per line, then that is kind of customization territory.
00:42:58.105 --> 00:42:58.815 Umm.
00:42:58.185 --> 00:42:58.535 Yeah.
00:42:58.575 --> 00:43:02.618 Where the connector could easily just default to making it per
00:43:02.618 --> 00:43:06.085 line if it detects any on the header. I I don't know.
00:43:06.455 --> 00:43:10.450 You know, just, yeah, whatever. I guess that's something we will
00:43:10.450 --> 00:43:13.954 leave to the customer to actually look at themselves and
00:43:13.954 --> 00:43:16.905 like, say, hey, these common things don't work.
00:43:18.345 --> 00:43:20.695 If they don't, well, that's their regulatory problem.
00:43:21.275 --> 00:43:21.605 Yeah.
00:43:21.445 --> 00:43:25.422 Because at least so far, I don't see where the the issue is with
00:43:25.422 --> 00:43:26.585 the current system.
00:43:27.655 --> 00:43:29.265 Yes, I guess we just leave that as is.
00:43:33.615 --> 00:43:37.514 Oh, I just getting out here. I did fix a bug in court. I don't
00:43:37.514 --> 00:43:39.495 know if I have it pushed up yet.
00:43:40.495 --> 00:43:44.098 This thing was doing like is not not null, not null and then no
00:43:44.098 --> 00:43:47.589 otherwise adding them. Obviously that doesn't work because of
00:43:47.589 --> 00:43:50.405 algorithm is null then this entire thing is null.
00:43:51.145 --> 00:43:55.307 So I've swapped all these ones around to if it's not both, no,
00:43:55.307 --> 00:43:58.875 then we add whatever we have. Otherwise it's just no.
00:44:00.745 --> 00:44:03.615 That should be applied to all four of them.
00:44:09.575 --> 00:44:10.015 And you.
00:44:10.745 --> 00:44:13.810 Uh, what's the next topic? Or by just gonna keep talking? We're
00:44:13.810 --> 00:44:15.295 talking. We're talking forever.
00:44:17.745 --> 00:44:21.428 You might keep talking because I like to go over Docker or you
00:44:21.428 --> 00:44:24.235 said you wanna do some man in the middle stuff.
00:44:22.855 --> 00:44:23.245 OK.
00:44:24.645 --> 00:44:25.925 I'm never gonna stop talking.
00:44:28.215 --> 00:44:32.362 OK, let's start off with one another, because that's always
00:44:32.185 --> 00:44:32.535 Sure.
00:44:32.362 --> 00:44:32.985 easy, so.
00:44:34.135 --> 00:44:36.429 Can use around if you already have manual installed and or
00:44:36.429 --> 00:44:36.935 have used it.
00:44:38.275 --> 00:44:41.365 Actually, especially if you have used man in the middle so far.
00:44:43.745 --> 00:44:44.295 Have not.
00:44:45.785 --> 00:44:48.305 Alright, shame on you don't have your head up.
00:44:46.835 --> 00:44:47.625 I'm not either.
00:44:57.015 --> 00:44:57.895 Yeah, it should be safe.
00:44:57.235 --> 00:45:00.025 That would just leave her hand up so the rest of the meeting,
00:45:00.025 --> 00:45:00.295 right?
00:45:01.045 --> 00:45:02.045 And yes, actually.
00:45:02.705 --> 00:45:04.515 You're assuming teams will automatically put it down.
00:45:03.085 --> 00:45:03.495 So.
00:45:08.095 --> 00:45:09.645 Shame on you. Who put your hands down.
00:45:12.425 --> 00:45:15.055 See, that's where I just sneakily put Austin's hand down.
00:45:16.525 --> 00:45:17.915 Hopefully there that people can do that.
00:45:18.725 --> 00:45:20.585 Wait, you can put someone else's hand down.
00:45:20.915 --> 00:45:23.435 Yes, I can right click you and lower your hand.
00:45:21.165 --> 00:45:22.245 Yeah, I'm for.
00:45:23.395 --> 00:45:24.945 Ohh what?
00:45:24.455 --> 00:45:28.138 Sorry, what's this? Ousted just gotta charge it up. Crap. I
00:45:28.138 --> 00:45:32.067 can't hear my meeting. I can. I can actually view people at dev
00:45:32.067 --> 00:45:35.505 training like the Devil Dog training. I don't know why.
00:45:37.545 --> 00:45:39.755 Apparently I cannot view the beauty that I've made.
00:45:40.765 --> 00:45:43.347 Funnily enough, I I couldn't mute other people in the
00:45:43.347 --> 00:45:44.495 training too, because I.
00:45:43.785 --> 00:45:45.425 Ohh you're good.
00:45:43.895 --> 00:45:45.075 Ohh it's it's cause.
00:45:44.395 --> 00:45:45.825 You can't meet him because he's muted, yeah.
00:45:45.915 --> 00:45:46.445 Yeah.
00:45:47.635 --> 00:45:48.245 But I.
00:45:48.115 --> 00:45:48.435 OK.
00:45:49.745 --> 00:45:53.457 I mean, I'm glad there's not forcibly unmuting. That would be
00:45:53.457 --> 00:45:54.535 a little annoying.
00:45:55.195 --> 00:45:56.295 Super awkward.
00:45:57.665 --> 00:45:58.025 Sure.
00:45:58.265 --> 00:46:00.085 Someone in the meeting is muted you.
00:45:58.475 --> 00:45:58.995 Difference.
00:46:02.205 --> 00:46:03.155 For like walkable.
00:46:04.415 --> 00:46:05.365 It doesn't say who it was.
00:46:07.185 --> 00:46:09.015 I oddly enough, I don't think so.
00:46:09.425 --> 00:46:09.985 Perfect.
00:46:11.135 --> 00:46:14.735 Especially along with that. Consider anybody I think could
00:46:14.735 --> 00:46:17.665 be anybody else in responding myself right now.
00:46:16.345 --> 00:46:16.715 Yeah.
00:46:20.445 --> 00:46:22.425 Yeah, I can meet you and you're the organizer, right?
00:46:23.915 --> 00:46:24.335 Yep.
00:46:24.875 --> 00:46:25.965 Feels weird, man.
00:46:26.895 --> 00:46:28.335 Yeah, things are just dumb.
00:46:30.525 --> 00:46:31.955 OK, so we're certainly.
00:46:30.645 --> 00:46:32.655 Uh, so when we move into discord?
00:46:34.665 --> 00:46:38.216 I'm I'm sort of kind of having outside hope for matrix slash
00:46:38.216 --> 00:46:41.535 riot slash element slash whatever their current name is.
00:46:42.725 --> 00:46:45.810 It's actually pretty nice and we can host it ourselves and all
00:46:45.810 --> 00:46:46.055 that.
00:46:48.135 --> 00:46:50.005 The only thing my only concern.
00:46:48.555 --> 00:46:50.605 And we folder the team groups.
00:46:51.605 --> 00:46:54.862 Yeah, my only concern is that it has to have screen share and
00:46:54.862 --> 00:46:55.545 take control.
00:46:56.275 --> 00:46:58.625 I didn't screenshot. I hope we've had to take control.
00:46:59.175 --> 00:47:00.685 Yeah, I we use those a lot.
00:47:01.445 --> 00:47:02.295 Umm.
00:47:04.425 --> 00:47:04.705 Umm.
00:47:05.675 --> 00:47:09.222 I've actually I think I've been using it much less for quite a
00:47:09.222 --> 00:47:09.785 while now.
00:47:11.465 --> 00:47:15.478 Honestly, the teams, the teams remote control features sucks
00:47:11.715 --> 00:47:12.465 Will that go?
00:47:15.478 --> 00:47:16.005 anyways.
00:47:16.625 --> 00:47:17.335 That's true.
00:47:16.995 --> 00:47:17.575 Yeah.
00:47:18.455 --> 00:47:21.398 Like you are trying this tab. Ohh I don't actually you wanted
00:47:21.398 --> 00:47:23.725 to move focus to other part of the teams window.
00:47:26.525 --> 00:47:28.715 It may suck, but at least it exists.
00:47:27.845 --> 00:47:28.175 There.
00:47:29.245 --> 00:47:29.605 Umm.
00:47:30.055 --> 00:47:33.327 There's, like so many other tools we could use for remote
00:47:33.327 --> 00:47:36.882 control though. Does it really have to be part of the the same
00:47:36.295 --> 00:47:36.885 OK, good.
00:47:36.882 --> 00:47:37.955 screen share thing?
00:47:39.275 --> 00:47:40.415 It does make it handy.
00:47:39.685 --> 00:47:43.910 Most of the time it's just to do like some code editing stuff and
00:47:43.910 --> 00:47:47.175 that could always be done through the remote edit.
00:47:49.055 --> 00:47:49.435 Right.
00:47:49.285 --> 00:47:49.545 Yeah.
00:47:49.495 --> 00:47:50.115 Yeah, and.
00:47:49.745 --> 00:47:51.905 Because I know both this code.
00:47:50.085 --> 00:47:52.215 Ryder has pretty good remote collaboration stuff, right?
00:47:53.015 --> 00:47:55.175 There might be good. I haven't tried yet.
00:47:55.555 --> 00:47:56.235 And no one use it.
00:47:57.965 --> 00:48:03.048 Yeah, breaking function get that moved over. I think really that
00:48:03.048 --> 00:48:07.115 will replace like our entire remote usage of teams.
00:48:08.115 --> 00:48:10.942 Like, I mean, obviously there's tough to move around the desktop
00:48:10.942 --> 00:48:11.465 itself, but.
00:48:12.275 --> 00:48:15.175 That's not as common so.
00:48:16.305 --> 00:48:19.459 We could probably get by without that just fine, especially until
00:48:19.459 --> 00:48:20.845 we find another intermediary.
00:48:22.055 --> 00:48:22.395 Yeah.
00:48:22.935 --> 00:48:26.425 Like teams overall is really just a bigger issue.
00:48:28.645 --> 00:48:30.975 But you OK?
00:48:30.555 --> 00:48:34.278 Because to me, teams kinda gets in the way with the whole plan
00:48:32.005 --> 00:48:32.745 That's what the.
00:48:34.278 --> 00:48:35.815 of doing a ton of clients.
00:48:36.645 --> 00:48:40.099 Because having a separate team group and a separate team chat
00:48:40.099 --> 00:48:42.885 for every client when I can't even organize them.
00:48:43.575 --> 00:48:43.935 Yeah.
00:48:43.965 --> 00:48:47.385 Makes finding stuff a pain.
00:48:44.155 --> 00:48:44.535 So.
00:48:46.935 --> 00:48:49.871 It's very difficult and you only have like so many chats pinned
00:48:49.871 --> 00:48:50.605 at a time, yeah.
00:48:51.665 --> 00:48:55.779 And I honestly don't understand why that's a limit. Why is there
00:48:55.779 --> 00:48:58.755 a limit on the number of chats I can pin? Why?
00:49:02.325 --> 00:49:04.828 That's also give you the issue with Git repositories and
00:49:04.828 --> 00:49:05.575 projects and git.
00:49:06.475 --> 00:49:10.325 Like our current setup of having separate color for each client
00:49:10.325 --> 00:49:13.515 is not gonna work if we truly have a ton of clients.
00:49:14.475 --> 00:49:14.785 Yeah.
00:49:16.715 --> 00:49:19.695 It's not really there it is. That's why.
00:49:20.685 --> 00:49:21.605 I'm feeling much.
00:49:23.715 --> 00:49:26.325 Discussion to be had about just will work.
00:49:27.535 --> 00:49:30.345 For something that started here, everything it saves.
00:49:31.645 --> 00:49:32.105 Ohh.
00:49:33.605 --> 00:49:34.135 OK.
00:49:35.795 --> 00:49:39.063 Thanks for that. Like going into the Phi part of this thing yet
00:49:36.395 --> 00:49:36.915 Uh.
00:49:39.063 --> 00:49:41.873 so I can show this to you directly. So anyway, back to
00:49:41.873 --> 00:49:42.435 normal web.
00:49:42.985 --> 00:49:47.983 Uh, downsample the setup so you just install them in the web.
00:49:47.983 --> 00:49:49.515 You run the actual.
00:49:50.125 --> 00:49:52.095 Uh communions manolev.
00:49:53.415 --> 00:49:57.055 So the installed confines over here. Oops, not.
00:49:57.975 --> 00:49:58.335 Here.
00:50:00.535 --> 00:50:01.305 Where are you?
00:50:02.935 --> 00:50:04.045 Don't know proxy.org.
00:50:04.905 --> 00:50:06.365 I will put that in chance.
00:50:09.385 --> 00:50:12.771 After you even say that you might have to go and sell
00:50:12.771 --> 00:50:16.722 certificates, you can find those if you go into the dot normal
00:50:16.722 --> 00:50:18.855 proxy folder in your home folder.
00:50:20.275 --> 00:50:22.735 You're on windows. You will need this guy installed.
00:50:23.535 --> 00:50:25.774 And then on that, except I'm just gonna send you know how to
00:50:25.774 --> 00:50:25.885 do.
00:50:29.265 --> 00:50:32.143 Yeah. Once you have that thing going, you just run man in the
00:50:32.143 --> 00:50:34.928 middle of web. Yeah, like it starts proxy. The default will
00:50:34.928 --> 00:50:36.785 be 8080 with the web interface on 8081.
00:50:38.075 --> 00:50:39.575 Now if we just start connect over here.
00:50:40.705 --> 00:50:42.685 But I can try running one of these guys.
00:50:43.945 --> 00:50:45.905 And then if we take a look over here.
00:50:47.335 --> 00:50:51.202 You'll see all the requests making because back over in my
00:50:51.202 --> 00:50:52.055 app settings.
00:50:53.435 --> 00:50:56.705 I have configured. I'm going to rotate these now and I.
00:50:58.115 --> 00:51:00.935 I've configured the proxy for the Salesforce settings to
00:51:00.935 --> 00:51:02.865 always put like every request in here.
00:51:04.215 --> 00:51:07.486 Obviously the connector actually has to support that. It's not
00:51:07.486 --> 00:51:10.550 gonna work with everything like SQL connections. Obviously
00:51:10.550 --> 00:51:13.407 you're not gonna get much value out of it. How you can
00:51:13.407 --> 00:51:16.419 technically use it as a socks proxy, so I think you could
00:51:16.419 --> 00:51:18.185 still do it, but not very useful.
00:51:20.155 --> 00:51:24.595 But then in so that here so you can see the wall request the
00:51:24.595 --> 00:51:25.615 wall response.
00:51:26.735 --> 00:51:29.336 And for that matter, you can replay these things. It's like
00:51:29.336 --> 00:51:32.025 here I can click that and it just resent that entire request.
00:51:33.275 --> 00:51:36.319 So, like, let's say you're getting these. Actually that's a
00:51:36.319 --> 00:51:36.725 new one.
00:51:38.025 --> 00:51:39.625 I have more stuff to debug now somehow.
00:51:40.745 --> 00:51:44.215 Total singing some permissions issue. Anything you can keep
00:51:44.215 --> 00:51:47.570 making changes in the add new eye for that Europe and you
00:51:47.570 --> 00:51:51.329 click keep clicking replay over and over again until things work
00:51:51.329 --> 00:51:54.742 or until you decide to ask somebody else for help and then
00:51:54.742 --> 00:51:55.205 give up.
00:51:58.935 --> 00:52:02.026 So that's well, no. So big things here you play, you can
00:52:02.026 --> 00:52:05.606 just directly we try our request and ask them that finds a couple
00:52:05.606 --> 00:52:09.023 days ago that we can actually edit these things too. It's like
00:52:09.023 --> 00:52:12.115 you can change where you want the request and resend it.
00:52:12.835 --> 00:52:16.115 So it's probably pretty nifty for iterating on things.
00:52:16.895 --> 00:52:19.675 Like you wanna just check. OK. What failed here?
00:52:20.595 --> 00:52:24.136 Well, well, this field right here. I want to get rid of that.
00:52:24.136 --> 00:52:25.565 Oh, come on, that's ugly.
00:52:28.625 --> 00:52:30.155 Mostly works. You'll probably want to.
00:52:31.085 --> 00:52:33.155 Use a separate editor for this.
00:52:36.445 --> 00:52:38.195 Like I'll say, we'll take out the at birth.
00:52:41.635 --> 00:52:45.555 And then shoot everything. I do that if I can do something else.
00:53:01.635 --> 00:53:02.805 So I'll take that out.
00:53:03.775 --> 00:53:05.525 So let me just copy it.
00:53:11.065 --> 00:53:11.875 Put it back in here.
00:53:14.305 --> 00:53:17.591 Dinner. Now we can just go replay that and it still fails
00:53:17.591 --> 00:53:18.045 because.
00:53:19.005 --> 00:53:21.295 Yeah, there is the one I was looking for and that's better.
00:53:23.815 --> 00:53:26.755 Yeah, we can test all things you want. You can delete requests
00:53:26.755 --> 00:53:27.315 out of here.
00:53:30.055 --> 00:53:33.832 I do not know what Ohly. Yeah. So I think this thing does have
00:53:33.832 --> 00:53:37.490 some kind of like actual flow automation stuff. You might be
00:53:37.490 --> 00:53:40.729 able to do. I'm not totally sure, cuz I haven't tried
00:53:40.729 --> 00:53:44.566 getting into it, but there might be. I'm obviously Council just
00:53:44.566 --> 00:53:47.985 save requests. It's like export it as whatever you want.
00:53:50.025 --> 00:53:53.220 There are some options here, most of them don't really seem
00:53:53.220 --> 00:53:56.310 to be too useful, except for perhaps don't verify service
00:53:56.310 --> 00:53:59.452 certificates. So let's say that you are working with an on
00:53:59.452 --> 00:54:02.435 premises ERP. That's like they just don't have a proper
00:54:02.435 --> 00:54:05.365 certificate set up. At least one that you don't trust.
00:54:07.855 --> 00:54:10.799 Yeah, just click this and then and then will be the one who
00:54:10.799 --> 00:54:13.155 takes care of trusting the certificate for you.
00:54:16.865 --> 00:54:20.362 And then obviously this one might be useful and not entirely
00:54:20.362 --> 00:54:22.025 sure for stuff I don't think.
00:54:22.835 --> 00:54:25.245 The cash issues run a bit deeper over there.
00:54:26.415 --> 00:54:27.665 But theoretically.
00:54:29.345 --> 00:54:31.405 That's me in the middle. Any questions?
00:54:31.265 --> 00:54:34.470 Uh, do you wanna show? I don't. I don't know if you showed this
00:54:34.470 --> 00:54:37.425 already, but installing the man in the middle certificate.
00:54:39.725 --> 00:54:44.207 So right now we will just be like you will find that P12
00:54:44.207 --> 00:54:48.532 double click it install and put it in the trusted root
00:54:48.532 --> 00:54:51.285 certificates which I will one SEC.
00:54:54.595 --> 00:54:56.915 I'll just get the docs link in here.
00:54:59.685 --> 00:55:01.355 Using all Michael that you can also do it.
00:55:01.945 --> 00:55:02.425 Uh.
00:55:03.675 --> 00:55:06.385 I don't know that it always works for some reason.
00:55:07.225 --> 00:55:10.865 So you just ended coming with the manual way anyway so.
00:55:15.295 --> 00:55:16.105 Any questions?
00:55:23.085 --> 00:55:25.875 All righty then.
00:55:28.555 --> 00:55:30.525 OK, so 2 docker.
00:55:33.245 --> 00:55:35.551 I'm always going to be pure improv, so I have nothing
00:55:35.551 --> 00:55:36.235 planned already.
00:55:42.325 --> 00:55:43.545 Quick overview on donkey.
00:55:42.785 --> 00:55:45.886 Alternatively, alternatively, we could get into the kumori
00:55:45.886 --> 00:55:49.092 production. People get charged twice. If you wanna go into a
00:55:49.092 --> 00:55:51.405 deep dive on a client project while you're.
00:55:51.965 --> 00:55:54.665 Doesn't have to go for it. I can stop talking finally.
00:55:56.065 --> 00:55:56.475 Yeah.
00:55:57.985 --> 00:56:00.355 So let me just pull TMK in here.
00:56:01.805 --> 00:56:04.515 USA by life you AI particularly grateful.