Meeting Title: Working session Date: 2025-06-10 Meeting participants: Demilade Agboola, Emily Giant, Caio Velasco
WEBVTT
1 00:01:15.520 ⇒ 00:01:16.650 Emily Giant: Hello!
2 00:01:18.030 ⇒ 00:01:19.010 Demilade Agboola: Hello!
3 00:01:19.870 ⇒ 00:01:24.390 Emily Giant: Oh, you’re both here today. Hi! I didn’t know if every other.
4 00:01:24.900 ⇒ 00:01:34.170 Demilade Agboola: Yeah, I wasn’t actually sure if this was a call man for me. But since this is my zoom link, I’m on here initially. But if I’m not necessarily needed, I could make Kyle the host, and hop off.
5 00:01:35.193 ⇒ 00:01:46.109 Emily Giant: I am guessing that. Given what’s on the agenda like? What if we go over the pull requests of yours? And then you hop off? Does that make sense.
6 00:01:46.730 ⇒ 00:01:48.540 Demilade Agboola: Yeah, sure, that’s fine.
7 00:01:49.150 ⇒ 00:02:03.640 Emily Giant: So I did add fellow to my zoom. Fellows, the agenda note thing we were talking about yesterday. So all you do is once you log into like you have to download the like the desktop widget.
8 00:02:03.800 ⇒ 00:02:15.660 Emily Giant: but it’s in the settings you just go and like click open with Zoom Meetings, and it will be a sidebar in if you want it. You can always just have it like separately, or I can send you the agenda.
9 00:02:16.080 ⇒ 00:02:23.840 Emily Giant: I can send it through to slack beforehand, and just like automate. That, and that works too. So whatever you think would be best is fine.
10 00:02:24.390 ⇒ 00:02:28.000 Demilade Agboola: That? Sure? So the follow up. Is it? What’s the.
11 00:02:28.390 ⇒ 00:02:29.899 Emily Giant: What’s the website?
12 00:02:30.610 ⇒ 00:02:32.815 Emily Giant: Let me see.
13 00:02:33.550 ⇒ 00:02:39.519 Demilade Agboola: Fellow has a lot of things I’m not sure like. If you see a lot of things I’m not sure.
14 00:02:39.520 ⇒ 00:02:44.159 Emily Giant: Like find y’all’s like resend the invitation, or something to download it.
15 00:02:44.440 ⇒ 00:02:44.930 Demilade Agboola: Oh, okay.
16 00:02:44.930 ⇒ 00:02:47.502 Emily Giant: If I’m an admin, I know that.
17 00:02:49.030 ⇒ 00:02:57.260 Emily Giant: yeah, because it’s like a desktop thing. So it’s not a website per se. But I’m sure I could go to like settings and figure this out.
18 00:02:57.770 ⇒ 00:02:58.500 Demilade Agboola: Okay.
19 00:03:02.080 ⇒ 00:03:03.529 Emily Giant: Do do do!
20 00:03:04.180 ⇒ 00:03:10.970 Emily Giant: Oh, got it! I found it alright.
21 00:03:11.320 ⇒ 00:03:12.790 Emily Giant: I’m sharing it in the chat.
22 00:03:16.270 ⇒ 00:03:17.040 Demilade Agboola: Okay.
23 00:03:17.180 ⇒ 00:03:18.100 Demilade Agboola: No.
24 00:03:19.390 ⇒ 00:03:20.839 Emily Giant: You’re not supposed to be in here.
25 00:03:21.020 ⇒ 00:03:24.360 Emily Giant: Sorry, one of the cats that is not my cat is now in this room.
26 00:03:25.046 ⇒ 00:03:31.119 Emily Giant: Kyle, this is my life. This is constant cat, not my cat.
27 00:03:31.734 ⇒ 00:03:33.069 Emily Giant: Matt, can you
28 00:03:33.780 ⇒ 00:03:43.659 Emily Giant: thank you? Alright. So there’s the app. The 1st thing I wanted to go over, was the Pr. It all looks good. Of course it’s just. My only concern is that it? The
29 00:03:44.610 ⇒ 00:03:51.210 Emily Giant: There are like thousands of negative Afs. Here, let me show my screen because Kai is probably like, what
30 00:03:51.320 ⇒ 00:03:54.058 Emily Giant: in the hell are you talking about?
31 00:03:57.810 ⇒ 00:04:00.790 Demilade Agboola: So Kyle, just a quick
32 00:04:01.733 ⇒ 00:04:17.470 Demilade Agboola: heads ups is us referring to inventory stuff. And if it’s just literally means available for sale. So this is what the people who are like planning the inventory used to know how many items are available for sale.
33 00:04:17.690 ⇒ 00:04:25.940 Demilade Agboola: So we had an issue where some of them were negative, which makes no sense, you cannot have, you know, negative 20 or negative 30 items available for sale.
34 00:04:26.240 ⇒ 00:04:33.779 Demilade Agboola: So this this is me creating a test so that we can catch it before like business sees it.
35 00:04:34.500 ⇒ 00:04:35.120 Emily Giant: Yeah.
36 00:04:35.970 ⇒ 00:04:44.429 Emily Giant: So I think this will be amazing. However, there are like historicals of with negative afs. So every time we try to run the checks.
37 00:04:45.100 ⇒ 00:04:46.879 Emily Giant: I don’t want
38 00:04:48.680 ⇒ 00:04:57.929 Emily Giant: it to fail every time. It was. I guess my question is, will the data still refresh? Even if the test fails on the check.
39 00:04:59.426 ⇒ 00:05:06.620 Demilade Agboola: It depends on how it’s structured. If it’s a Dbt run and test after. Yes.
40 00:05:07.460 ⇒ 00:05:13.369 Demilade Agboola: but if it’s a Dbt. Build, a Dbt build will fail on the March model that it is testing.
41 00:05:14.060 ⇒ 00:05:19.889 Emily Giant: Gotcha. Okay? So it’s not dependent on this like, Pr, it’s dependent on the scheduled runs.
42 00:05:20.840 ⇒ 00:05:28.809 Emily Giant: Okay, so this is the schedule that it would run on, and I it. There’s no problem setting it up as a run, and then a test.
43 00:05:29.300 ⇒ 00:05:35.229 Demilade Agboola: Yeah, that’s kind of how they’re are. They currently run that way? Okay, now, they build up is build, and they run.
44 00:05:35.230 ⇒ 00:05:36.890 Emily Giant: Just do dbt.
45 00:05:37.160 ⇒ 00:05:39.549 Emily Giant: Run, and then add a command.
46 00:05:40.360 ⇒ 00:05:41.040 Demilade Agboola: Yeah.
47 00:05:47.120 ⇒ 00:05:50.059 Emily Giant: Can I do the same? Like just select tags, inventory, new.
48 00:05:50.680 ⇒ 00:05:52.720 Demilade Agboola: Yeah, yeah, you could do that.
49 00:05:52.900 ⇒ 00:05:59.429 Demilade Agboola: Another thing we need to do with the reschedule, like, with the rebuilding of stuff is proper tag management, like, it’s.
50 00:05:59.430 ⇒ 00:05:59.840 Emily Giant: Yeah, yeah.
51 00:05:59.840 ⇒ 00:06:02.470 Demilade Agboola: Messy. It’s kind of messy how you use tax and.
52 00:06:02.470 ⇒ 00:06:03.350 Emily Giant: Yeah.
53 00:06:03.760 ⇒ 00:06:07.659 Demilade Agboola: You mean tagging everything as a core model is messy.
54 00:06:08.800 ⇒ 00:06:10.490 Emily Giant: I don’t understand.
55 00:06:11.740 ⇒ 00:06:15.953 Emily Giant: Yeah, I am really looking forward to like
56 00:06:16.610 ⇒ 00:06:22.759 Emily Giant: having any bandwidth to actually do this like cleanup. I was up to like
57 00:06:23.330 ⇒ 00:06:33.845 Emily Giant: midnight last night trying to resolve some stuff that’s like blowing up in the queue. So I’m really grateful for this meeting this morning, just hopefully to get things ahead. Alright. Well, I’m gonna go ahead and
58 00:06:34.920 ⇒ 00:06:39.529 Emily Giant: approve this. Then that was my only question. Everything else is fine.
59 00:06:45.580 ⇒ 00:06:48.049 Emily Giant: Can I delete the branch. You get a shot
60 00:06:52.690 ⇒ 00:06:59.710 Emily Giant: alright. And just so you can see like what I’m seeing for today’s working session.
61 00:06:59.940 ⇒ 00:07:03.215 Emily Giant: I wanted to review the open prs, and then
62 00:07:04.770 ⇒ 00:07:13.279 Emily Giant: inventory adjustment types was the Pr. That I had issued. It wouldn’t be stakeholder facing yet.
63 00:07:13.730 ⇒ 00:07:14.560 Demilade Agboola: Okay.
64 00:07:14.940 ⇒ 00:07:24.159 Emily Giant: It was. It’s just the ticket in linear about adding other adjustment types. So this is like the foundational step.
65 00:07:25.570 ⇒ 00:07:51.410 Emily Giant: and we can either review it together. If that works for you. I didn’t know if, like going through, it would give Kyle some insight into like. I think that inventory and revenue are by far the most like complicated, but inventory is probably the most complicated with how the models are put together, so I don’t know if it’s beneficial to like, have you review these, Kyle? Just so you can like get a better sense. But also I don’t want to waste your time, because.
66 00:07:51.650 ⇒ 00:07:56.510 Emily Giant: like Demo A knows the models, and can look and know if it’s
67 00:07:56.750 ⇒ 00:08:00.249 Emily Giant: making sense with how it’s all put together, and your time.
68 00:08:00.250 ⇒ 00:08:02.180 Caio Velasco: So. Yeah, no, I haven’t looked at
69 00:08:03.369 ⇒ 00:08:12.060 Caio Velasco: so. No, no problem. I know I haven’t looked at it yet, so I have 0 knowledge. So it’s you could start from 0 with me. Yeah, from scratch.
70 00:08:12.570 ⇒ 00:08:12.965 Emily Giant: Okay.
71 00:08:14.080 ⇒ 00:08:20.849 Emily Giant: we we will do that. I have a meeting with stakeholders later today. So down a lot of Let me just walk you through like
72 00:08:20.960 ⇒ 00:08:29.570 Emily Giant: quickly what’s going on here? It’s pretty simple. So almost this exact same formula as the receiving
73 00:08:30.262 ⇒ 00:08:38.169 Emily Giant: the receiving models where it’s like received as Qa. It takes that inventory assignment table.
74 00:08:38.900 ⇒ 00:08:39.419 Demilade Agboola: Yeah.
75 00:08:39.429 ⇒ 00:08:44.209 Emily Giant: Table and the transaction line table I know you’re familiar with like 4
76 00:08:44.699 ⇒ 00:08:54.339 Emily Giant: sales receiving the inventory assignment table is kind of the like the Delta, and then you can attach, like
77 00:08:54.499 ⇒ 00:08:58.519 Emily Giant: the significant document, ids and other like
78 00:08:58.749 ⇒ 00:09:05.322 Emily Giant: supplementary fields, to inventory assignment with transaction, line and transaction. So
79 00:09:07.119 ⇒ 00:09:35.769 Emily Giant: This is a net. New model might be easier to look at it in. Dbt, since it’s just like showing on the side. But essentially, it’s saying, like, Take the inventory number from inventory assignment. Inventory adjustments is just a static table with the adjustment types. So you know everything in Netsuite’s like a numeric id that you have to tie to another table. So this is just like the string, for whatever the inventory or whatever the inventory adjustment code is.
80 00:09:35.949 ⇒ 00:09:41.139 Emily Giant: and then it sums the quantity as inventory reconciled.
81 00:09:44.409 ⇒ 00:09:56.319 Emily Giant: And then there’s the join. This is the one we’ve used over and over and over again for sales. Inventory received. Purchase orders, and then the
82 00:09:57.729 ⇒ 00:09:59.719 Emily Giant: the conditions are.
83 00:09:59.859 ⇒ 00:10:05.849 Emily Giant: the record type has to be inventory adjustment, and it’s not canceled. And for now, because we haven’t
84 00:10:06.359 ⇒ 00:10:08.279 Emily Giant: cross the threshold of like
85 00:10:09.089 ⇒ 00:10:33.101 Emily Giant: counting the inventory against vases, pots, hard goods. I just limited it to our live products because those are the lotted items and logic’s pretty specific Kaya. When we say lot, floral florals and plants, they die. So they’re in lots that spoil out at certain dates, whereas, like inventory that doesn’t die is not lotted.
86 00:10:33.859 ⇒ 00:10:40.719 Emily Giant: it doesn’t need to spoil out. We don’t need to like track it in that way, because that’s probably like the simplest way.
87 00:10:44.459 ⇒ 00:10:49.539 Emily Giant: Oh, this is, I was like looking at. This is the yaml file. And then I just added a test.
88 00:10:53.899 ⇒ 00:10:55.209 Emily Giant: Product. Id.
89 00:10:56.129 ⇒ 00:10:59.499 Emily Giant: So let’s see.
90 00:11:05.189 ⇒ 00:11:11.419 Emily Giant: I this is just testing that the combination it should be the combination of inventory number Id and adjustment type.
91 00:11:12.169 ⇒ 00:11:17.389 Emily Giant: That’s what should be unique in this model. And I’m trying to like. Every time
92 00:11:17.549 ⇒ 00:11:25.429 Emily Giant: I add a model, make sure that I’m testing for like any kind of errors like not unique.
93 00:11:25.959 ⇒ 00:11:29.409 Emily Giant: And then I just updated a 0 and a 1 to like a Boolean.
94 00:11:29.599 ⇒ 00:11:35.359 Emily Giant: But I don’t know why this looks like a typo.
95 00:11:38.090 ⇒ 00:11:43.589 Demilade Agboola: What like doing that like that works. If you want to move to the next line, I’ll start from there.
96 00:11:46.210 ⇒ 00:11:56.225 Emily Giant: Sometimes when I write out descriptions really quickly, I throw it into chat, gpt, and say, Make this sound better, and then like something like this that I’m like I didn’t do that back.
97 00:11:56.830 ⇒ 00:12:00.240 Demilade Agboola: Yeah, but that’s not. That’s not necessarily an error.
98 00:12:00.240 ⇒ 00:12:02.560 Demilade Agboola: Okay? Good. So.
99 00:12:03.230 ⇒ 00:12:06.860 Emily Giant: Would you like to run any
100 00:12:07.350 ⇒ 00:12:11.129 Emily Giant: like Qa. Tests against this to check
101 00:12:11.290 ⇒ 00:12:15.390 Emily Giant: or validate like? I know that the code is fine, but.
102 00:12:16.100 ⇒ 00:12:18.410 Demilade Agboola: Yeah, sure, I I think the
103 00:12:23.770 ⇒ 00:12:26.339 Demilade Agboola: So for this this is for, like the
104 00:12:27.020 ⇒ 00:12:34.569 Demilade Agboola: just, what what types are we only looking at here, though, like the record type, is tracking. Okay, record is adjustment.
105 00:12:35.460 ⇒ 00:12:46.380 Emily Giant: So I have a meeting later today because it turns out there are a ton of adjustment types, and I want to know which ones are important to the stakeholders. And then we can like
106 00:12:46.620 ⇒ 00:13:01.222 Emily Giant: group the others together. I started to build the I started to build the inventory adjustment types into the mart model and then was like, no, this is way too much. So if I were just to we’re gonna use this later in the meeting.
107 00:13:01.670 ⇒ 00:13:08.150 Emily Giant: if I were to just pull up, select everything from.
108 00:13:20.860 ⇒ 00:13:29.280 Emily Giant: So in the transactions model that’s joined to inventory assignment.
109 00:13:30.500 ⇒ 00:13:39.249 Emily Giant: there will always be a record type that just says inventory adjustment. So that’s how you get these like this like blanket
110 00:13:39.550 ⇒ 00:13:47.310 Emily Giant: over like, yes, this is an inventory adjustment. But there’s 28 different ones.
111 00:13:47.530 ⇒ 00:14:08.510 Emily Giant: A handful of them are related here. I have them better organized over here later today. These are the active ones. A lot of them are related to like damaged during receiving spoilage. This is generally one that they want pulled out into its own column. Then these damaged ones are like
112 00:14:08.700 ⇒ 00:14:14.430 Emily Giant: once the inventory is in the building has already been received. If it gets damaged at that point.
113 00:14:14.920 ⇒ 00:14:19.159 Emily Giant: then actually, couriers is in that category, too.
114 00:14:19.380 ⇒ 00:14:25.049 Emily Giant: That means we we do that adjustment differently because it has different
115 00:14:25.170 ⇒ 00:14:35.180 Emily Giant: implications with vendor chargebacks like these. If they’re crappy when we get them, we can ask for our money back. All of these
116 00:14:35.490 ⇒ 00:14:37.560 Emily Giant: we cannot ask for our money back.
117 00:14:37.680 ⇒ 00:14:41.860 Emily Giant: So I and then these are like historically.
118 00:14:42.070 ⇒ 00:14:47.297 Emily Giant: what we used to have as adjustment types. But then we revamped Netsuite.
119 00:14:48.920 ⇒ 00:14:54.340 Emily Giant: So I have like a 15 min meeting with Dean and Felipe later, just to say like.
120 00:14:54.600 ⇒ 00:14:57.500 Emily Giant: How does your team use these?
121 00:14:57.850 ⇒ 00:15:00.519 Emily Giant: Should they have a parent category?
122 00:15:01.270 ⇒ 00:15:04.920 Emily Giant: Should they not be considered in
123 00:15:05.170 ⇒ 00:15:08.130 Emily Giant: this model at all like, what are we doing here?
124 00:15:08.500 ⇒ 00:15:09.170 Demilade Agboola: I’m good.
125 00:15:09.370 ⇒ 00:15:10.880 Emily Giant: Yeah, does that make sense.
126 00:15:11.550 ⇒ 00:15:12.750 Demilade Agboola: Yeah,
127 00:15:15.810 ⇒ 00:15:24.799 Demilade Agboola: so just so the buffer care. Qc, that we would. We worked on right before mother’s day. We’re putting that to the side.
128 00:15:26.396 ⇒ 00:15:32.650 Emily Giant: No, not at all. They used to be before we revamped Netsuite entirely.
129 00:15:32.950 ⇒ 00:15:36.419 Emily Giant: They were an adjustment type. Now they are their own thing.
130 00:15:36.670 ⇒ 00:15:37.510 Demilade Agboola: Oh, okay.
131 00:15:37.510 ⇒ 00:15:52.209 Emily Giant: What we did when you just like, literally quit like today. If that we’re like, yeah, we’re just not. We’re not using any of that anymore the way we used to after we worked on it for like a month and a half. No, that that’s the old version.
132 00:15:52.410 ⇒ 00:16:01.339 Emily Giant: So now, buffers are their own inventory, category or status. Those are now in the like good Qa.
133 00:16:01.570 ⇒ 00:16:02.780 Emily Giant: Buffer
134 00:16:02.960 ⇒ 00:16:13.659 Emily Giant: status versus an adjustment type. So they’re like a completely different thing that don’t even appear in this table at all
135 00:16:14.050 ⇒ 00:16:18.880 Emily Giant: outside of like as a status.
136 00:16:19.630 ⇒ 00:16:20.135 Demilade Agboola: Okay.
137 00:16:21.199 ⇒ 00:16:26.319 Demilade Agboola: alright. So I think I would just kind of look at the Pr. And I know, like, you know.
138 00:16:26.470 ⇒ 00:16:29.459 Demilade Agboola: it’s like 15 min in. So like Kyle.
139 00:16:29.730 ⇒ 00:16:32.246 Demilade Agboola: it’s probably lost right now.
140 00:16:33.580 ⇒ 00:16:39.419 Demilade Agboola: so just being able to. Yeah, just get him up to speed with some of the things that are.
141 00:16:40.170 ⇒ 00:16:44.039 Demilade Agboola: you know, going on in here as well.
142 00:16:47.780 ⇒ 00:16:55.970 Emily Giant: Alright 1 1 caveat. I have a lot of like I’m trying very hard to like. Get a couple of things across the finish line so that I can
143 00:16:56.080 ⇒ 00:17:04.220 Emily Giant: focus on the like deprecation flags in spreadsheets. I’m wondering if Kyle, would it make more sense to meet tomorrow.
144 00:17:04.339 ⇒ 00:17:13.150 Emily Giant: like to do our time together tomorrow if you have it free. And, Demo Ade, since you’re more familiar with our models, just help me kind of push some of this stuff over the
145 00:17:13.510 ⇒ 00:17:20.857 Emily Giant: not even the finish line. Just any line that because I I’m having some issues with
146 00:17:22.250 ⇒ 00:17:24.010 Emily Giant: Oh, where’s my fellow?
147 00:17:24.240 ⇒ 00:17:33.830 Emily Giant: So products xf, completely has like deprecated itself. So
148 00:17:34.644 ⇒ 00:17:45.319 Emily Giant: shopify. They used to have one version of the product table, and I guess 2 weeks ago they may have sent out an All points bulletin that I did not receive.
149 00:17:45.320 ⇒ 00:18:08.149 Emily Giant: But they switched tables so suddenly. I got 50 tickets from stakeholders, saying, like, none of our products have names anymore, or any of the new things we’re adding, they don’t have profiles. And I was like, Wait, what are you talking about? And then I would look in the like source table. And they were right. They’re just showing up as like no profile. So in the last 3 days I’ve had to build a whole new like
150 00:18:08.600 ⇒ 00:18:12.700 Emily Giant: product model flow. And
151 00:18:13.540 ⇒ 00:18:27.490 Emily Giant: one of the Kyle one of the things that is frustrating and has caused a lot of like fan out problems in the past is that netsuite our inventory system. It uses only
152 00:18:27.990 ⇒ 00:18:39.010 Emily Giant: peace product level skews. So, for example, the firecracker has a single double and triple version, it will say
153 00:18:39.150 ⇒ 00:18:51.780 Emily Giant: the skew name in the data for only the single, with a quantity of, however, many units are used to fulfill. So if they ordered double the firecracker, it’s a single firecracker skew with 2 units
154 00:18:51.880 ⇒ 00:19:15.290 Emily Giant: triple single firecracker skew, 3 units shopify does the opposite. It only in the data will use the skews for, like the parent product, that’s what the stakeholders call it, even though I think it’s like the opposite in my head, like the parent product, should be the like single skew, anyway, regardless of my opinion of naming conventions.
155 00:19:16.554 ⇒ 00:19:29.170 Emily Giant: I cannot find a reliable way to join product cost from netsuite, because there is
156 00:19:29.760 ⇒ 00:19:34.679 Emily Giant: no indicator or like key to join
157 00:19:34.850 ⇒ 00:19:43.039 Emily Giant: the piece product to the parent product. And then I do think I found
158 00:19:43.920 ⇒ 00:19:54.420 Emily Giant: a way to do this in the product tags, but it is a like a Json string. That’s what you were looking at in
159 00:19:55.120 ⇒ 00:20:01.260 Emily Giant: this query here, and redshift is being
160 00:20:01.840 ⇒ 00:20:16.780 Emily Giant: such a Turd like like. No matter what I do, I cannot seem to extract these values. So what I found was these group numbers are actually indicators of the last 5 digits of skews that have
161 00:20:17.473 ⇒ 00:20:24.330 Emily Giant: like single double triple. I could technically do that for every skew, but
162 00:20:24.600 ⇒ 00:20:32.339 Emily Giant: this would be a lot more durable over time if I was relying on like system, instead of like
163 00:20:33.110 ⇒ 00:20:41.883 Emily Giant: constantly adding new variants to a model. I figured
164 00:20:42.520 ⇒ 00:20:49.120 Emily Giant: one or both of you might know a good way that redshift can parse this kind of
165 00:20:49.480 ⇒ 00:20:57.910 Emily Giant: data and also looking for advice on like, do I
166 00:20:59.650 ⇒ 00:21:03.019 Emily Giant: create like a group column. And then.
167 00:21:03.310 ⇒ 00:21:19.309 Emily Giant: yeah, I mean, that’s how I want to do it. But does that seem like a good plan creating from this string a column called Group with those last 5 numbers. And then what I would have to do in netsuite is just like extract those digits from
168 00:21:20.638 ⇒ 00:21:26.205 Emily Giant: from the skews that like have the indicator of has double triple
169 00:21:26.880 ⇒ 00:21:29.099 Emily Giant: It’s like I have all of the pieces.
170 00:21:29.940 ⇒ 00:21:31.959 Emily Giant: but I definitely have to like
171 00:21:32.920 ⇒ 00:21:45.350 Emily Giant: duct, tape them together to make this work for product cost, and then this will also, like become a very important piece, making sure there’s a join between single piece skews and their parents.
172 00:21:45.855 ⇒ 00:21:56.789 Emily Giant: In components, data like it’s this bad join that has caused a lot of problems with revenue reporting. Once they try to take like a kit.
173 00:21:57.120 ⇒ 00:21:59.630 Emily Giant: or like I
174 00:21:59.740 ⇒ 00:22:15.489 Emily Giant: a bundle or anything, and break it down into its individual pieces. This is what’s breaking. Is this like bad join that’s in place. And of course, the fact that the table just changed 2 weeks ago, and they no longer have data coming in.
175 00:22:16.970 ⇒ 00:22:20.919 Emily Giant: So yeah, number one, do you? How? How do I extract these.
176 00:22:23.320 ⇒ 00:22:29.450 Demilade Agboola: I know. I believe there’s a Json Parse function that exists.
177 00:22:35.630 ⇒ 00:22:40.969 Demilade Agboola: Give me one second because I know I kind of used it in my previous.
178 00:22:42.710 ⇒ 00:22:44.970 Emily Giant: I saw actually in.
179 00:22:45.940 ⇒ 00:22:46.530 Demilade Agboola: Yeah.
180 00:22:46.530 ⇒ 00:22:48.829 Emily Giant: In the notes that you sent
181 00:22:57.170 ⇒ 00:22:59.180 Emily Giant: Json extract path.
182 00:23:00.860 ⇒ 00:23:06.000 Demilade Agboola: Yeah, it’s Json extract path. I know there’s a Json extract path theme.
183 00:23:07.420 ⇒ 00:23:14.409 Demilade Agboola: so that function allows us to be able to get what we need out of any Jason.
184 00:23:15.050 ⇒ 00:23:15.600 Emily Giant: Okay.
185 00:23:19.460 ⇒ 00:23:27.290 Emily Giant: I definitely already read these. And I think I was just like hitting a wall, an expression that returns serialized Json and Vartar.
186 00:23:32.230 ⇒ 00:23:36.800 Emily Giant: Okay. So if I were to use like this is an example.
187 00:23:37.330 ⇒ 00:23:38.449 Demilade Agboola: I just sent you.
188 00:23:38.840 ⇒ 00:23:40.990 Emily Giant: Oh, absolutely.
189 00:23:51.950 ⇒ 00:23:52.610 Emily Giant: Okay.
190 00:24:07.550 ⇒ 00:24:11.999 Emily Giant: Okay. So yeah, gonna probably write this in a slot.
191 00:24:12.530 ⇒ 00:24:17.820 Emily Giant: So the the Json string. This is what I would put in tags right here.
192 00:24:18.480 ⇒ 00:24:19.130 Demilade Agboola: Yes.
193 00:24:19.860 ⇒ 00:24:22.380 Emily Giant: Tags. Okay? And then this would be group.
194 00:24:25.352 ⇒ 00:24:27.679 Demilade Agboola: Give me one second, 5, 39,
195 00:24:35.130 ⇒ 00:24:36.939 Demilade Agboola: it will be.
196 00:24:39.530 ⇒ 00:24:43.620 Demilade Agboola: Hmm. It’s not consistent. It’s not necessarily the same format every time.
197 00:24:44.350 ⇒ 00:24:47.339 Emily Giant: That’s I was. I’ve been where you are.
198 00:25:40.970 ⇒ 00:25:43.269 Demilade Agboola: So we could try. Let’s see.
199 00:25:49.190 ⇒ 00:25:54.019 Emily Giant: So this array element one is this, I can’t figure out which
200 00:25:56.680 ⇒ 00:26:00.600 Emily Giant: I’m supposed to use because this one is showing brackets.
201 00:26:00.950 ⇒ 00:26:03.879 Emily Giant: I don’t know if that matters. The other was like curly brackets.
202 00:26:04.140 ⇒ 00:26:07.970 Emily Giant: This is brackets and tags is in brackets.
203 00:26:13.030 ⇒ 00:26:16.810 Demilade Agboola: That’s right. I think I didn’t get that question.
204 00:26:17.170 ⇒ 00:26:19.134 Emily Giant: That’s okay. What? What were you gonna say?
205 00:26:19.380 ⇒ 00:26:20.587 Demilade Agboola: I was. Gonna say,
206 00:26:26.310 ⇒ 00:26:36.447 Demilade Agboola: let’s try doing the let’s try doing. Yeah, let’s do tags. And then
207 00:26:37.350 ⇒ 00:26:41.560 Demilade Agboola: in quotes like a string value of group. Let’s see what what comes up.
208 00:26:43.270 ⇒ 00:26:44.110 Emily Giant: Like this.
209 00:26:47.300 ⇒ 00:26:47.900 Demilade Agboola: Yeah.
210 00:26:49.130 ⇒ 00:26:49.930 Emily Giant: Okay.
211 00:26:50.380 ⇒ 00:26:54.320 Emily Giant: And then I don’t want this, do I? I don’t want any like.
212 00:26:54.570 ⇒ 00:26:57.060 Demilade Agboola: Yeah, you could just get rid of that. Let’s see.
213 00:26:58.460 ⇒ 00:27:00.060 Emily Giant: Should I erase all of this.
214 00:27:04.830 ⇒ 00:27:06.959 Demilade Agboola: And then we can close the packet.
215 00:27:12.440 ⇒ 00:27:19.129 Emily Giant: Okay, is that this is right? Or do I need some kind of bracket happening.
216 00:27:22.930 ⇒ 00:27:27.230 Demilade Agboola: Yeah, that should be fine.
217 00:27:27.690 ⇒ 00:27:30.679 Demilade Agboola: But you don’t have to let me see.
218 00:27:30.830 ⇒ 00:27:34.350 Demilade Agboola: we also have select. Okay, can you get rid of the null, if void part.
219 00:27:37.250 ⇒ 00:27:40.970 Demilade Agboola: Yeah. And then you have to select from the table we’re selecting from.
220 00:27:44.690 ⇒ 00:27:48.939 Emily Giant: Not that one where to go shopify products, products.
221 00:28:08.870 ⇒ 00:28:11.279 Emily Giant: invalid Json, object tags.
222 00:28:11.380 ⇒ 00:28:12.520 Emily Giant: Okay.
223 00:28:16.090 ⇒ 00:28:23.730 Demilade Agboola: Can you untag like? Can you just write tags rather than tags in quote? No, no.
224 00:28:23.730 ⇒ 00:28:24.250 Emily Giant: Gotcha
225 00:28:28.120 ⇒ 00:28:29.109 Emily Giant: like that.
226 00:28:29.110 ⇒ 00:28:29.750 Demilade Agboola: Yes.
227 00:28:37.120 ⇒ 00:28:42.879 Emily Giant: Json. Extract, path, text, super unknown does not exist. No function matches the name and given argument. Types.
228 00:28:46.110 ⇒ 00:28:47.090 Demilade Agboola: Tracy.
229 00:28:54.222 ⇒ 00:28:57.670 Emily Giant: For this. This was the old like
230 00:28:57.930 ⇒ 00:29:02.070 Emily Giant: in the old model for the task Steven built.
231 00:29:05.260 ⇒ 00:29:06.369 Emily Giant: I tried just swapping.
232 00:29:06.370 ⇒ 00:29:11.210 Caio Velasco: Can you send me the the from clause here on the chat? Just I can take a look at here as well.
233 00:29:11.640 ⇒ 00:29:12.630 Demilade Agboola: Yeah.
234 00:29:18.130 ⇒ 00:29:21.149 Emily Giant: This is the new model that we need to swap in.
235 00:29:35.860 ⇒ 00:29:38.550 Emily Giant: Think I hit the wrong chat. There we go.
236 00:29:39.430 ⇒ 00:29:40.030 Caio Velasco: Perfect.
237 00:29:40.440 ⇒ 00:29:42.799 Caio Velasco: That’s and what we want to do is to
238 00:29:43.070 ⇒ 00:29:47.420 Caio Velasco: extract whatever to read whatever it’s inside that column.
239 00:29:47.790 ⇒ 00:29:54.449 Emily Giant: Yes, specifically. I mean, it’d be great to be able to parse all of the tags. But there,
240 00:29:58.150 ⇒ 00:30:03.870 Emily Giant: One called group that holds the the digits
241 00:30:04.210 ⇒ 00:30:09.070 Emily Giant: for any item that has more than just the one skew
242 00:30:10.030 ⇒ 00:30:12.230 Emily Giant: as part of the product variance.
243 00:30:15.470 ⇒ 00:30:18.580 Demilade Agboola: You’re gonna show the what what was done.
244 00:30:19.120 ⇒ 00:30:20.390 Emily Giant: Oh, yep. Sorry.
245 00:30:20.880 ⇒ 00:30:21.750 Demilade Agboola: Far, right.
246 00:30:21.750 ⇒ 00:30:25.381 Emily Giant: My coffee has not kicked in yet.
247 00:30:26.490 ⇒ 00:30:35.559 Emily Giant: Like I’m at risk of literally staring off into the distance asleep. I am such not a morning person I used to be. I don’t know what happened.
248 00:30:38.670 ⇒ 00:30:46.000 Emily Giant: okay, so this was my attempt last night before I was like, Nope, I’m gonna ask the guys in the morning.
249 00:30:48.670 ⇒ 00:30:51.239 Emily Giant: so Stevens is here.
250 00:30:52.770 ⇒ 00:30:53.990 Emily Giant: So
251 00:30:56.260 ⇒ 00:31:05.590 Emily Giant: it was. This is the old model that, like is no longer in use. But it was just like he had. I changed this. Let me change it back to what it used to be.
252 00:31:08.170 ⇒ 00:31:11.710 Demilade Agboola: They had a random phones.
253 00:31:26.140 ⇒ 00:31:30.720 Emily Giant: So what’s interesting is that like, I can access this model in mode
254 00:31:32.390 ⇒ 00:31:38.919 Emily Giant: and I can pull results. But when I try to Comp. Or when I try to preview it here or compile it, it doesn’t work.
255 00:31:39.390 ⇒ 00:31:44.859 Emily Giant: So here’s what it was. It was select everything from staging shop products.
256 00:31:45.160 ⇒ 00:31:49.090 Emily Giant: and then it just did like a loop for tags.
257 00:31:49.870 ⇒ 00:31:55.549 Emily Giant: And then, so sorry I’m trying to.
258 00:31:56.500 ⇒ 00:32:02.820 Emily Giant: I’m trying to understand. So it says, select everything from base, and it just does the loop for tags. Okay, Gotcha, and then
259 00:32:04.320 ⇒ 00:32:11.090 Emily Giant: it does it 50 times, or in the final. It pulls like the 1st 50, I guess, and then
260 00:32:11.340 ⇒ 00:32:12.850 Emily Giant: unions.
261 00:32:14.470 ⇒ 00:32:16.050 Emily Giant: What is he Unioning.
262 00:32:23.490 ⇒ 00:32:25.850 Emily Giant: or I in range? 50.
263 00:32:33.340 ⇒ 00:32:38.950 Emily Giant: It’s like it’s like set up in as incremental. But like isn’t, I don’t. I’m not great at Ginger.
264 00:32:40.720 ⇒ 00:32:45.510 Demilade Agboola: Oh, the ginger here! So, ginger head! This is a for loop that is going through.
265 00:32:50.180 ⇒ 00:32:57.152 Demilade Agboola: It’s going through the splits like the splits
266 00:32:58.240 ⇒ 00:32:59.120 Emily Giant: Of the top.
267 00:32:59.480 ⇒ 00:33:00.330 Demilade Agboola: Yeah.
268 00:33:00.640 ⇒ 00:33:10.690 Demilade Agboola: and then for everything within the loop. So it’s basically saying up till the range of 50. So that means the maximum of times. It will try that. It would be 49 times, I believe.
269 00:33:11.307 ⇒ 00:33:14.979 Demilade Agboola: So basically, it’s basically going through each theme and saying.
270 00:33:15.781 ⇒ 00:33:20.620 Demilade Agboola: where the id’s product. Id go through.
271 00:33:21.830 ⇒ 00:33:25.160 Demilade Agboola: Go through the let me see.
272 00:33:26.460 ⇒ 00:33:28.510 Demilade Agboola: Okay, go through the split part.
273 00:33:28.900 ⇒ 00:33:29.580 Emily Giant: Yeah.
274 00:33:29.890 ⇒ 00:33:35.950 Demilade Agboola: And then create the first.st The 1st part will be the product tag id.
275 00:33:36.230 ⇒ 00:33:36.630 Emily Giant: Hold on!
276 00:33:36.630 ⇒ 00:33:45.469 Demilade Agboola: Next part will be the tag category, and then the following part with the tag value, but, like as many times as possible.
277 00:33:46.136 ⇒ 00:33:54.150 Demilade Agboola: for each of that, and then it would continue doing that.
278 00:33:54.890 ⇒ 00:34:02.000 Demilade Agboola: Let me see if I’m super, then nice.
279 00:34:03.530 ⇒ 00:34:06.909 Demilade Agboola: So it’s basically just creating new columns based off the.
280 00:34:07.790 ⇒ 00:34:17.760 Emily Giant: Okay, so it’s creating columns out of tag value. But that’s not necessarily how I even imagine they should be, because that’s like rows.
281 00:34:18.360 ⇒ 00:34:21.589 Emily Giant: And there wouldn’t be a
282 00:34:21.929 ⇒ 00:34:26.400 Emily Giant: I mean, it’s fine. It’s easy enough to turn them into columns from there, but
283 00:34:28.070 ⇒ 00:34:34.199 Emily Giant: I feel like it would be easier to join netsuite data.
284 00:34:35.100 ⇒ 00:34:40.599 Demilade Agboola: Also just a random thing. If if reading Ginger is stressing you out, you could always just compile it.
285 00:34:41.690 ⇒ 00:34:44.579 Emily Giant: This one was having trouble compiling last night.
286 00:34:45.360 ⇒ 00:34:46.370 Demilade Agboola: Oh, okay.
287 00:34:46.370 ⇒ 00:34:49.339 Emily Giant: I need to learn it, though it’s everywhere, and it’s ruining.
288 00:34:49.480 ⇒ 00:35:01.940 Emily Giant: So must learn. Okay, this all makes sense. It’s the it’s the ginger part doesn’t get me as much as like the end, if and for I’m like, where does this even start
289 00:35:02.090 ⇒ 00:35:02.840 Emily Giant: like?
290 00:35:03.700 ⇒ 00:35:06.299 Emily Giant: What are we? I don’t understand what we’re unioning.
291 00:35:07.270 ⇒ 00:35:11.840 Demilade Agboola: Yeah, so it’s basically creating multiple.
292 00:35:12.980 ⇒ 00:35:14.749 Demilade Agboola: So for each of the
293 00:35:15.360 ⇒ 00:35:23.790 Demilade Agboola: products, right? It’s doing id tag, tag, category tag value and then union in it for each part together.
294 00:35:24.320 ⇒ 00:35:27.480 Emily Giant: Okay, that makes sense.
295 00:35:28.700 ⇒ 00:35:31.450 Demilade Agboola: So that’s why that’s what he’s kind of doing.
296 00:35:33.110 ⇒ 00:35:35.390 Emily Giant: Okay. So it’s gonna do that a bunch of times.
297 00:35:35.730 ⇒ 00:35:37.610 Emily Giant: But then, if I run.
298 00:35:51.220 ⇒ 00:35:52.710 Emily Giant: it doesn’t work.
299 00:35:54.555 ⇒ 00:35:59.949 Emily Giant: Let me try switching out. Okay. I don’t know how this ever worked, because
300 00:36:00.670 ⇒ 00:36:09.469 Emily Giant: he has, like the wrong select from, should be should be this.
301 00:36:09.760 ⇒ 00:36:15.869 Emily Giant: But tags was structured differently. It wasn’t a Json string in the old table. That doesn’t work anymore.
302 00:36:16.660 ⇒ 00:36:17.420 Demilade Agboola: Hold on!
303 00:36:25.230 ⇒ 00:36:31.320 Emily Giant: So I guess what I’m saying is this does not work given the new structure.
304 00:36:31.630 ⇒ 00:36:36.279 Emily Giant: So, okay, this is easy enough to understand.
305 00:36:39.490 ⇒ 00:36:44.120 Emily Giant: But this is the old table
306 00:36:48.260 ⇒ 00:36:50.559 Emily Giant: and tags looked like
307 00:36:56.390 ⇒ 00:36:57.810 Emily Giant: looked like this.
308 00:37:00.200 ⇒ 00:37:01.330 Emily Giant: And now
309 00:37:11.730 ⇒ 00:37:15.492 Emily Giant: seems like it shouldn’t be that different right? Like
310 00:37:16.490 ⇒ 00:37:20.220 Emily Giant: it’s just some brackets and quotes, but
311 00:37:21.660 ⇒ 00:37:24.550 Emily Giant: I mean you could do trimming and whatnot, but
312 00:37:26.440 ⇒ 00:37:27.970 Emily Giant: it would be a lot of loops.
313 00:37:31.930 ⇒ 00:37:33.639 Demilade Agboola: There we go. Second
314 00:38:34.926 ⇒ 00:38:38.789 Demilade Agboola: alright. So I’m trying to figure this out and also look at the Pr.
315 00:38:39.120 ⇒ 00:38:41.250 Demilade Agboola: Is there any other thing you would need.
316 00:38:42.808 ⇒ 00:38:49.220 Emily Giant: The products join was the main thing. Because I need to finish that like today.
317 00:38:52.100 ⇒ 00:38:56.829 Emily Giant: Let me look at my fellow notes. If there’s nothing else, then we can.
318 00:38:59.676 ⇒ 00:39:02.159 Emily Giant: Oh, the connecting the new model to products. Xf,
319 00:39:06.920 ⇒ 00:39:11.090 Emily Giant: just wanted to like go through
320 00:39:12.010 ⇒ 00:39:34.199 Emily Giant: products. Xf, what is deprecated. And what I’m swapping out so that we can decide like, what is it that I need to fix today so that products are functioning versus like, what are we going to work on later on, as part of, like the larger Cleanup project? Just wanted some like guidance on how to not
321 00:39:35.400 ⇒ 00:39:38.530 Emily Giant: spend too much time patching this.
322 00:39:40.540 ⇒ 00:39:44.399 Emily Giant: So if I pull up products Xf, this is
323 00:39:44.680 ⇒ 00:39:52.651 Emily Giant: where everything is breaking down now. It was shopify products, a legacy file, and then
324 00:39:53.670 ⇒ 00:39:58.489 Emily Giant: netsuite average cost, and then the lineage.
325 00:40:00.120 ⇒ 00:40:12.450 Emily Giant: It’s pretty. It’s pretty prolific here. So Inventory Xf is done. We’ve turned it off and no longer updates. But this is one of the reasons things aren’t working. So products Xf
326 00:40:14.640 ⇒ 00:40:18.499 Emily Giant: deliveries, adjustments, products, distribution points, fiscal netsuite
327 00:40:18.710 ⇒ 00:40:21.930 Emily Giant: all of these missing things. Buffers.
328 00:40:29.500 ⇒ 00:40:37.380 Emily Giant: So inventory Xf is connecting to transaction data.
329 00:40:37.860 ⇒ 00:40:39.710 Emily Giant: And then Kpis.
330 00:40:41.430 ⇒ 00:40:43.179 Emily Giant: And then, if I go back
331 00:40:43.570 ⇒ 00:40:54.879 Emily Giant: essentially, what I’m saying is this has a ton of downstream dependencies, and I have concerns about doing.
332 00:40:55.870 ⇒ 00:41:00.700 Emily Giant: If a small patch is at all possible. Given that like.
333 00:41:02.430 ⇒ 00:41:05.289 Emily Giant: given the amount of downstream dependencies
334 00:41:07.300 ⇒ 00:41:09.610 Emily Giant: it doesn’t feel like it can be small.
335 00:41:10.480 ⇒ 00:41:12.340 Demilade Agboola: I don’t think you can be small either.
336 00:41:14.900 ⇒ 00:41:16.839 Emily Giant: It just sucks cause like it.
337 00:41:16.960 ⇒ 00:41:20.009 Emily Giant: They don’t. The table doesn’t work anymore, like
338 00:41:20.310 ⇒ 00:41:28.230 Emily Giant: shopify no longer supports it. So it’s not like I have a much of a choice on whether to fix it right now or not.
339 00:41:29.810 ⇒ 00:41:30.930 Emily Giant: So
340 00:41:31.040 ⇒ 00:41:38.009 Emily Giant: given that this is deprecated. We don’t use this anymore. We don’t use this anymore. We do use this. This doesn’t work anymore.
341 00:41:39.012 ⇒ 00:41:43.170 Emily Giant: This doesn’t work anymore. Like everything leading into like.
342 00:41:43.560 ⇒ 00:41:47.409 Emily Giant: what they’re saying is broken is deprecated, and
343 00:41:53.230 ⇒ 00:42:01.115 Emily Giant: I don’t know what to do, because this is like, not the process that we’re trying to do together
344 00:42:02.481 ⇒ 00:42:07.510 Demilade Agboola: I think for us. I it will be helpful just to break it down into smaller bits. And just like
345 00:42:08.560 ⇒ 00:42:16.520 Demilade Agboola: so if we solve the products bits, and we can figure out how to like match it back to the legacy form.
346 00:42:18.780 ⇒ 00:42:21.429 Demilade Agboola: We would have the new form
347 00:42:21.590 ⇒ 00:42:25.010 Demilade Agboola: being able to work as well as the old phone being able to work right.
348 00:42:25.790 ⇒ 00:42:31.900 Demilade Agboola: And if we have that, then that can serve as like a replacement. For, like the product, except that currently exists.
349 00:42:32.340 ⇒ 00:42:32.950 Emily Giant: Yeah.
350 00:42:33.180 ⇒ 00:42:38.159 Demilade Agboola: Yeah. So I think we just need to take it bit by bit and then get to the point where we can replace it.
351 00:42:38.802 ⇒ 00:42:46.050 Demilade Agboola: Within production, such that at least we have the product names showing up in in reports and stuff.
352 00:42:47.700 ⇒ 00:42:55.309 Emily Giant: Okay, that sounds good. I’m sure you can tell. I’m overwhelmed. But yeah, it’s like
353 00:42:57.290 ⇒ 00:43:10.499 Emily Giant: the world is forcing us to do things out of order. And I don’t like that. Okay, so I’ll continue to fix products except today, I do need to figure out that like tag parse thing
354 00:43:11.120 ⇒ 00:43:18.760 Emily Giant: so that I can join it to netsuite data. And then
355 00:43:19.610 ⇒ 00:43:24.360 Emily Giant: I can essentially skip attempting here product sex. I forget I can
356 00:43:26.430 ⇒ 00:43:35.909 Emily Giant: skip attempting to join it to any of the old inventory models, because those are not even like updating. So I’d have to do oms components base
357 00:43:36.850 ⇒ 00:43:39.749 Emily Giant: the speeder. The plant units.
358 00:43:40.790 ⇒ 00:43:45.639 Emily Giant: Essentially, all of the component bits are gonna need to be
359 00:43:47.650 ⇒ 00:43:55.250 Emily Giant: just checked to make sure that, like, it works with the new product. Xf.
360 00:43:57.730 ⇒ 00:44:01.549 Emily Giant: but these changes are gonna flow like all the way down to tableau. And
361 00:44:02.167 ⇒ 00:44:08.450 Emily Giant: it’s fine, all right. Does that sound like a good path? Fixed products? Xf update
362 00:44:08.720 ⇒ 00:44:15.400 Emily Giant: the downstream component models check that the product names work and then call it fixed enough.
363 00:44:16.740 ⇒ 00:44:19.809 Demilade Agboola: Yeah, sure, let’s just try and get something out today.
364 00:44:20.100 ⇒ 00:44:27.150 Emily Giant: Yeah, yeah. Totally. Okay. Kyle, have you had any luck on the parsing that string.
365 00:44:27.670 ⇒ 00:44:29.469 Caio Velasco: No, no, we’re not
366 00:44:30.220 ⇒ 00:44:36.199 Caio Velasco: because I’m and also because I’m having troubles connecting to retch. I think my connection is super bad today.
367 00:44:36.330 ⇒ 00:44:37.469 Caio Velasco: but I can try.
368 00:44:38.720 ⇒ 00:44:39.470 Emily Giant: Okay.
369 00:44:39.690 ⇒ 00:44:42.892 Emily Giant: Well, I’ll keep plugging away at it.
370 00:44:45.450 ⇒ 00:44:50.622 Emily Giant: If anyone discovers anything, let me know that’d be awesome
371 00:44:51.800 ⇒ 00:45:01.810 Emily Giant: like I’m demalade if you think it’s worth staying on for the final 15 min and trying to figure out a way to parse this? That’s fine, but we can also like do that independently. We don’t have to do that
372 00:45:02.310 ⇒ 00:45:03.310 Emily Giant: on this call.
373 00:45:04.588 ⇒ 00:45:08.610 Demilade Agboola: Sure. I mean, I can work on that independently, and I’ll just let you know.
374 00:45:11.480 ⇒ 00:45:12.640 Emily Giant: Yeah, if
375 00:45:14.890 ⇒ 00:45:20.970 Emily Giant: let’s just let’s just see if we can solve it together. Kyle, you do not have to stay on for this this unless you want to help, try to.
376 00:45:20.970 ⇒ 00:45:28.380 Caio Velasco: No, no worries, no worries. I’ll I’ll try here independently, and then I’ll leave you guys, and if I find something I either get back or message you.
377 00:45:29.120 ⇒ 00:45:31.622 Emily Giant: Okay, that sounds awesome. And then.
378 00:45:33.730 ⇒ 00:45:33.960 Caio Velasco: You.
379 00:45:33.960 ⇒ 00:45:37.090 Emily Giant: Let’s just see if thank you. I’ll see you in a little bit.
380 00:45:41.330 ⇒ 00:45:48.459 Emily Giant: if we can just crack the code with one of these. So this was the other. Json, the can. Json Parse
381 00:45:48.720 ⇒ 00:45:51.020 Emily Giant: returns false. No, I don’t want that
382 00:46:28.140 ⇒ 00:46:29.540 Emily Giant: super data type.
383 00:46:31.100 ⇒ 00:46:32.530 Emily Giant: It’s recommended
384 00:46:42.790 ⇒ 00:46:45.450 Emily Giant: alright, select user id recommendation, 0 language
385 00:46:46.660 ⇒ 00:46:57.860 Emily Giant: to extract the 1st element of an array of objects within a recommendations column of supertype. All right. So number one. I don’t think that the type is supertype.
386 00:46:58.440 ⇒ 00:47:02.669 Emily Giant: If if they’re talking about like bar, variable character versus
387 00:47:02.860 ⇒ 00:47:04.820 Emily Giant: super, being one of the types.
388 00:47:05.810 ⇒ 00:47:07.330 Demilade Agboola: I think it’s actually super.
389 00:47:07.850 ⇒ 00:47:09.150 Emily Giant: It is a super. Okay.
390 00:47:11.910 ⇒ 00:47:15.360 Demilade Agboola: Give me one second, I think I might have almost have to query for it.
391 00:47:15.680 ⇒ 00:47:16.829 Emily Giant: Oh, my God!
392 00:48:22.950 ⇒ 00:48:28.059 Emily Giant: Alright! So in the staging model I had cast that column as text, should I change that.
393 00:48:30.030 ⇒ 00:48:30.790 Demilade Agboola: Is, that.
394 00:48:31.820 ⇒ 00:48:33.369 Emily Giant: Super type of it.
395 00:48:34.940 ⇒ 00:48:37.353 Demilade Agboola: I’m yeah.
396 00:48:47.360 ⇒ 00:48:53.139 Emily Giant: Okay, let me remove that, or should I cast it as super? Is that a thing?
397 00:48:55.160 ⇒ 00:48:57.329 Emily Giant: Yeah, it definitely cast it as text.
398 00:50:04.880 ⇒ 00:50:12.240 Emily Giant: Is there a simple way in dbt, to see like what what type a field is.
399 00:50:14.570 ⇒ 00:50:19.159 Demilade Agboola: And not that I know of.
400 00:50:20.010 ⇒ 00:50:21.140 Emily Giant: I can look in mode.
401 00:50:21.990 ⇒ 00:50:27.409 Demilade Agboola: Yeah, usually it’s be from your query edit like where you edit your queries.
402 00:50:28.040 ⇒ 00:50:28.950 Emily Giant: Makes sense.
403 00:51:01.320 ⇒ 00:51:06.129 Emily Giant: So it’s type string when I run it even without having cast it.
404 00:51:06.790 ⇒ 00:51:07.350 Demilade Agboola: Right.
405 00:51:10.130 ⇒ 00:51:13.279 Emily Giant: But I think that’s okay. Right? Like, that’s fine.
406 00:51:14.410 ⇒ 00:51:18.800 Emily Giant: unless it needs to be like Varchar, which
407 00:51:19.050 ⇒ 00:51:21.399 Emily Giant: isn’t in redshift. That’s just string.
408 00:51:21.750 ⇒ 00:51:22.420 Demilade Agboola: Yeah.
409 00:52:07.720 ⇒ 00:52:11.190 Emily Giant: Okay, I can try this. The Json Parse tags as
410 00:52:13.310 ⇒ 00:52:14.920 Emily Giant: wait. I have to do both.
411 00:52:15.270 ⇒ 00:52:20.709 Emily Giant: She used to convert to string super before flattening. Okay.
412 00:52:31.080 ⇒ 00:52:32.699 Emily Giant: I don’t believe you.
413 00:53:13.210 ⇒ 00:53:16.060 Emily Giant: We have some like old version of
414 00:53:17.430 ⇒ 00:53:19.940 Emily Giant: Redshift. It just doesn’t do this.
415 00:53:20.780 ⇒ 00:53:21.450 Demilade Agboola: You know.
416 00:53:22.260 ⇒ 00:53:28.539 Emily Giant: Is that possible that like, because no function matches, I’m just being told that, like, I don’t even have this function
417 00:57:41.850 ⇒ 00:57:42.460 Emily Giant: cool.
418 00:57:43.020 ⇒ 00:57:47.723 Emily Giant: It just does not I? I need to Google. If our redshift just is out of date.
419 00:59:17.840 ⇒ 00:59:22.649 Emily Giant: Alright, I gotta hop. But I’m gonna keep trying to figure out if this is like.
420 00:59:26.750 ⇒ 00:59:32.279 Emily Giant: if this is a redshift problem, do what are your thoughts on it? Potentially, being a redshift problem.
421 00:59:33.204 ⇒ 00:59:39.590 Demilade Agboola: I don’t know. It’s it’s weird, Jason. So this is not like proper Jason. If you look at it like strictly
422 00:59:40.890 ⇒ 00:59:42.610 Demilade Agboola: so, Jason.
423 00:59:45.270 ⇒ 00:59:52.090 Demilade Agboola: it’s more. It’s more of like a long string than Jason. I don’t know how to explain, but like, if you look at a Json
424 00:59:53.010 ⇒ 01:00:02.659 Demilade Agboola: collection within, it, it would be with the curly brackets, not the square brackets. Yeah, just it’s just like it’s just like a
425 01:00:03.310 ⇒ 01:00:10.049 Demilade Agboola: it’s like a string versus like a proper Json, so the actual Json.
426 01:00:10.320 ⇒ 01:00:14.030 Demilade Agboola: like built in functions, might not work as it should.
427 01:00:14.330 ⇒ 01:00:15.140 Emily Giant: Yeah.
428 01:00:16.700 ⇒ 01:00:23.149 Demilade Agboola: So that’s why, yes, that’s what the that might be one of the issues we’re currently having.
429 01:00:23.400 ⇒ 01:00:27.179 Demilade Agboola: But I’m trying to. I’m trying to. I’m I’m working on this end.
430 01:00:28.520 ⇒ 01:00:35.550 Emily Giant: Okay, I’m wondering, like, could I use like rejects, extract, or something else, instead of or like a.
431 01:00:35.550 ⇒ 01:00:41.159 Demilade Agboola: It’s probably going to be rejects, Dean. So that’s what I’m kind of trying to see what works best.
432 01:00:42.398 ⇒ 01:00:47.169 Demilade Agboola: I have tried a couple. They’re not extracting that. I want it to be extracted.
433 01:00:48.277 ⇒ 01:00:49.439 Demilade Agboola: But we’ll see.
434 01:00:49.970 ⇒ 01:00:54.100 Emily Giant: Okay, cool. Thank you. I really appreciate your help. I will see you at 1030.
435 01:00:54.100 ⇒ 01:00:55.000 Demilade Agboola: Sounds good.
436 01:00:55.140 ⇒ 01:00:56.170 Emily Giant: Bye-bye.
437 01:00:56.190 ⇒ 01:00:57.100 Demilade Agboola: Alright, bye.